正在使用自定义类型从其他帖子/页面获取图像

时间:2011-12-27 作者:Christian

我正在构建一个主题,根据类别显示图像。例如,有一个时尚部分,这是一个页面。在那个页面上,我上传了与时尚相关的照片。另一个页面是肖像,显示肖像摄影等。在我的主页上,我想显示我通过其他部分/页面上传的所有最近照片。

现在,我只能使用以下脚本显示与特定页面或帖子相关的图像:

<?php if ( have_posts() ) : while ( have_posts() ) : the_post();    

 $args = array(
   \'post_type\' => \'attachment\',
   \'numberposts\' => -1,
   \'post_status\' => null,
   \'post_parent\' => $post->ID
  );

  $attachments = get_posts( $args );
     if ( $attachments ) {
        foreach ( $attachments as $attachment ) {
           echo \'<li>\';
           echo wp_get_attachment_image( $attachment->ID, \'full\' );
           echo \'<p>\';
           echo apply_filters( \'the_title\', $attachment->post_title );
           echo \'</p></li>\';

          }
     }

 endwhile; endif; ?>
如何扩展此脚本以获取其他帖子/页面中的图像/照片?

我想具体说明一下,我是一个新的主题开发。。。

提前感谢您的帮助。

1 个回复
最合适的回答,由SO网友:krembo99 整理而成

您可以通过多种方式实现这一点,但如果您使用相对较新的wordpress,则应该使用\\u post\\u缩略图()。

您可以在函数中定义它。php,例如:

add_theme_support( \'post-thumbnails\' ); //thumnails set_post_thumbnail_size( 150,230, true ); // defaultpost thumbnails 
add_image_size( \'your-custom-name-2\', 400, 9999 ); // some size thumbnail  
add_image_size( \'your-custom-name-2\', 400, 300,false ); // another size 
add_image_size( \'whatEverName\', 100, 100, false ); // yet another
“false”或“true”参数与裁剪模式有关(请参阅下文)http://codex.wordpress.org/Function_Reference/the_post_thumbnail

还有这里

Display thumbnail from custom field

然后,您应该在上载图像时定义一个后期默认图像(您将在上载屏幕上看到它),然后您可以在主题中调用它,如下所示:

the_post_thumbnail(\'whatEverName\'); //取决于您想要的尺寸。

然而,这将为您提供一个定义的图像。它还将为您提供图像本身。如果需要URL、大小或其他信息,应使用

get_the_post_thumbnail($page->ID, \'whatEverName\');
如果需要多个图像,可以使用以下选项:

<?php //GET THE FIRST IMAGE
    $args = array(
    \'order\'          => \'ASC\',
    \'orderby\'        => \'menu_order\',
    \'post_type\'      => \'attachment\',
    \'post_parent\'    => $post->ID,
    \'post_mime_type\' => \'image\',
    \'post_status\'    => null,
    \'numberposts\'    => 1, //change if you want another number
    );
    $attachments = get_posts($args);
        if ($attachments) {

            foreach ($attachments as $attachment) {

            echo wp_get_attachment_link($attachment->ID, \'thumbnail\', false, false);
    }
} ?>

// CONTENT AND OTHER STUFF...

<?php //GET ALL EXPECT FIRST IMAGE
    $args = array(
    \'order\'          => \'ASC\',
    \'orderby\'        => \'menu_order\',
    \'post_type\'      => \'attachment\',
    \'post_parent\'    => $post->ID,
    \'post_mime_type\' => \'image\',
    \'post_status\'    => null,
    \'numberposts\'    => -1,
    );
    $attachments = get_posts($args);
        if ($attachments) {
    $no_show=true;
            foreach ($attachments as $attachment) {
    if($no_show) {$no_show=false; continue; }
            echo wp_get_attachment_link($attachment->ID, \'thumbnail\', false, false);
    }
} ?>

结束

相关推荐

images are broken

我有一段代码,用于显示来自RSS提要的每篇帖子上的图像,这些图像将从yahoo images search获取,我将把这段代码粘贴到我的单曲中。php文件,这样它就会出现在我的帖子之后,我在其中一个网站上找到了这段代码,这段代码用于获取图像,但不是从yahoo获取图像,而是从不同的feed获取图像我使用的代码如下:- <?php include_once(ABSPATH.WPINC.\'/rss.php\'); // path to include script $f