获取子项-wp_获取附件图像

时间:2013-05-14 作者:nyles

我解释我的问题:

我创建了一个带有图像的帖子-wp\\u get\\u attachment\\u image函数返回该图像我删除帖子图像并添加另一个

$args = array(\'post_parent\'    => get_the_ID(),
              \'post_type\'      => \'attachment\',
              \'post_mime_type\' => \'image\'
         );

$images = get_children( $args );
if ($images) 
{
    foreach ($images as $image) 
    {
            echo wp_get_attachment_image($image->ID, \'full\');
    }
}

2 个回复
SO网友:user1606423

您可以像这样将输出限制为1,但这不是解决方案,只是一种解决方法:

    $args = array(\'post_parent\'    => get_the_ID(),
          \'numberposts\' => 1, 
          \'order\'          =>  \'ASC\',
          \'post_type\'      => \'attachment\',
          \'post_mime_type\' => \'image\'
     );

$images = get_children( $args );
if ($images) 
{
    foreach ($images as $image) 
    {
        echo wp_get_attachment_image($image->ID, \'full\');
    }
}
您是否有在服务器上删除的预授权?

SO网友:negletios

当您从帖子或页面更新/删除图像时,WordPress不会更改post_parent 附件的列。因此,没有一种“WordPress”方法可以排除帖子中实际没有的图像。至少我还没有找到。查询将返回附加到此帖子的所有图像,无论它们是否被删除。

这个问题的一个解决方案实际上是对帖子的内容进行挖掘,并搜索帖子内容中是否存在每个图像的url。我假设您在WordPress循环中运行此脚本,因为您正在使用get_the_ID().

下面是代码:

$args = array(\'post_parent\'    => get_the_ID(),
              \'post_type\'      => \'attachment\',
              \'post_mime_type\' => \'image\'
        );

$images = get_children( $args );

// Store the content of the post
$content = get_the_content();

if ($images){

    foreach ($images as $image) {

        // Get the url of the specific image
        $url = wp_get_attachment_url($image->ID);

        /*
         * Get the position of the url inside the content.
         * If the url does not exist inside content
         * the strpos() returns false.
         */
        $position = strpos($content, $url);

        if ($position){

            echo wp_get_attachment_image($image->ID, \'full\');

        }

    }

}

结束

相关推荐

ID of images from gallery

有人知道如何在帖子中从wordpress gallery获取图像的ID吗?我已经在整个互联网上搜索过了,这个主题没有任何内容。