Link images to post

时间:2013-03-18 作者:user668499

将图像链接到帖子。

大家好

我相信这很简单,但我不知道怎么做。

我知道如何在帖子中添加图像-单击帖子,添加媒体,选择缩略图。

这给了我一个缩略图。

我想我要做的是将缩略图链接到帖子,这样我就可以控制缩略图在页面上的显示位置。

我有一个这样的模板。

    <div class="content_div">
        <?php

            $car_args = array(
                \'post_type\' => \'post\',
                \'category_name\' => \'car\',
                \'order\' => \'asc\'
            );

            $cars = new WP_Query($car_args);

            if($cars->have_posts()):
                while($cars->have_posts()):
                    $cars->the_post();
        ?>

            <article class="service">

              <div class="right_col">

                  <h4><?php the_title(); ?></h4>

                  <?php the_content(); ?>

              </div><!--right_col-->

              <aside class="side_bar">
                <ul>

                <!-- I would like to add the thumbnails here -->

                </ul>
              </aside>

          </article><!-- service-->

            <?php endwhile; endif; ?>
            <?php wp_reset_postdata(); ?>

        </div><!--content_div-->
我有一些关于类别名称为“car”的汽车的帖子,我在WP\\u查询中使用了类别名称。

其中一些帖子有图片。如果这篇文章有图片,我想把它们作为列表添加到旁边。

2 个回复
SO网友:Travis Pflanz

如果要通过“添加媒体”将图像添加到帖子中,只需在“链接到”字段中设置图像的链接位置即可。

Add link to image in WordPress

如果您要将图像添加到带有“特色图像”的帖子中,可以将其添加到模板中:

<?php if ( has_post_thumbnail()) : ?>
   <a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>" >
   <?php the_post_thumbnail(); ?>
   </a>
 <?php endif; ?>
这可能会更复杂,具体取决于您的具体需求。访问WordPress CodexFunction Reference/the post thumbnail

SO网友:helgatheviking

有一个插件用于定义multiple featured images

您还可以显示每个帖子的附件(上载到帖子的图像将被视为“附加到”该帖子。因为这涉及到另一个查询,而且可能不会经常更改。我开发了一个函数,可以获取附件并使用瞬态API保存它们。

//Get attachments array for specific post/page

function kia_get_attachments($post_id = NULL){
    global $post;

    $post_id = ( NULL === $post_id) ? $post->ID : $post_id;

    if ( false === ( $attachments_array = get_transient( \'kia_post_attachments\' ) ) || !isset($attachments_array[$post_id] )  ) {  

        $args = array(
            \'post_type\' => \'attachment\',
            \'numberposts\' => -1,
            \'post_parent\' => $post_id,
            \'orderby\' => \'menu_order\',
            \'order\' => \'ASC\',
            \'post_mime_type\' => array(\'image\'),
        );
        $attachments = get_children($args);
        $attachments_array[$post_id] = $attachments;
        set_transient( \'kia_post_attachments\', $attachments_array );
    } 

    return $attachments_array[$post_id]; 

}

// refresh transient on save
function kia_delete_attachment_transient($post_id) {

    $attachments_array = get_transient( \'kia_post_attachments\' );

    if(!isset($attachments_array[$post_id])) return $post_id;

    //if this post was in the transient, then delete it from the transient
    unset($attachments_array[$post_id]);
    set_transient( \'kia_post_attachments\', $attachments_array );

}
add_action( \'save_post\', \'kia_delete_attachment_transient\' );
然后在上面的代码中替换整个<aside class="side_bar"> 循环的一部分包括以下内容:

$attachments = kia_get_attachments(); 

if( !empty ($attachments) ) : ?>

<aside class="side_bar">
    <ul>


<?php
   foreach ( $attachments as $attachment ) :

    echo \'<li>\' . wp_get_attachment_image( $attachment->ID ) . \'</li>\';

    endforeach; 
?>
    </ul>
</aside>

<?php endif;
我讨厌“附件”和处理如何将图像附加到帖子上,但这是目前我所知道的最好的方式。

结束

相关推荐

Group images in media library

我正在寻找一种在媒体库中对图像进行分组的方法。我正在开发一个照片组合网站。我已将所有图像上载到媒体库,我需要一种方法对图像进行分组,使其更易于管理。目前我只有一长串图片。