Pull images from the gallery

时间:2011-05-03 作者:zac

我正在构建一个模板,wordpress主要用作图像CMS,我从每篇文章的内容部分提取第一幅图像。

<img src="<?php echo grab_image() ?>" />

function grab_image() {
global $post, $posts;
$first_img = \'\';
ob_start();
ob_end_clean();
$output = preg_match_all(\'/<img.+src=[\\\'"]([^\\\'"]+)[\\\'"].*>/i\', $post->post_content, $matches);
$first_img = $matches [1] [0];

if(empty($first_img)){
$first_img = "";
}
return $first_img;
}
我的问题是,我如何从上传的图片库中抓取第一张图片,而不是从post\\u内容中抓取?

因此,添加图像的过程将是上载然后退出(不插入帖子)。我不知道你叫它什么,也不知道该找什么。。附件?媒体库?内容区域将严格用于文本以及任何额外的元框。

2 个回复
最合适的回答,由SO网友:Chip Bennett 整理而成

使用get_children() (Codex ref):

$images = get_children( array( 
     \'post_parent\' => $post->ID, 
     \'post_type\' => \'attachment\', 
     \'post_mime_type\' => \'image\', 
     \'orderby\' => \'menu_order\', 
     \'order\' => \'ASC\' 
) );
第一个图像将是$images[0].

编辑:

我所说的“第一个图像”,是指$ID 第一个图像,可以与WordPress中的无数图像和附件处理函数一起使用。如果您能澄清您想对图像做什么,我可以提供更具体的进一步说明。

SO网友:Lea Cohen

也许你想用YAPB 以及reflection theme

结束

相关推荐

如何修改管理员中的“Insert Media”(插入媒体)灯箱,使其只显示某个类别的媒体项目?

我正在尝试解决媒体库中的一个问题。本质上,我想做的是“自动”将从自定义帖子类型“编辑帖子”页面上载的媒体分配到预定义的类别。基于此网站上的其他答案,我发现有很多人在讨论解决方案(下面是其中一个链接),它允许您“手动”为媒体库元素指定类别。然而,我的目的是以某种方式定义特定的职位类型和应该应用的关联类别。同时,我还希望能够限制“特定帖子类型”,以便在编辑帖子页面请求媒体库灯箱时,“媒体库”仅显示我定义的类别内的项目。我知道这听起来可能有点混乱,所以让我举个简单的例子。假设我有一个自定义的帖子类型,叫做“员工