web-dev-qa-db-ja.com

注目の投稿に大きな画像、単一の投稿に通常

私のカテゴリの下にあるすべての投稿を取得するコードを追加しました。そしてそれはblog-pageの私の内容の上に現れる(*私達が示すべき何か最新ニュースがある時はいつでも*)。

問題は、私がホームページに表示される投稿に1100pxの画像を表示するのに十分なスペースがあるのに対し、単一の投稿に表示できるイメージの幅は750pxです。

そのため、2つの画像(* 750pxと1100px *)をアップロードできるオプションを埋め込む必要があります。そして、ブログページに表示されているときは1100px画像を、ユーザーがクリックして単一の投稿に移動したときは750px画像を使用できるようにする必要があります。

それは可能ですか、そしてどうやって?ありがとう。

1
vajrasar

あなたが電話をかけるときに画像のサイズを指定することによって、あなたは十分に簡単に複数のサイズで注目の画像を表示することができます、しかしあなたがそれらを変えたいならあなたはこのプラグインのコードを使うことができます:

http://wordpress.org/extend/plugins/multiple-featured-images/

これがチュートリアルです。

http://lifeonlars.com/wordpress/how-to-add-multiple-featured-images-in-wordpress/

例えば登録例:

if (class_exists('MultiPostThumbnails') {
    if (MultiPostThumbnails::has_post_thumbnail('folio', 'feature-image-2')) {
        MultiPostThumbnails::the_post_thumbnail('folio', 'feature-image-2'); 
    }
    if (MultiPostThumbnails::has_post_thumbnail('folio', 'feature-image-3')) {
        MultiPostThumbnails::the_post_thumbnail('folio', 'feature-image-3'); 
    }
    if (MultiPostThumbnails::has_post_thumbnail('folio', 'feature-image-3')) {
        MultiPostThumbnails::the_post_thumbnail('folio', 'feature-image-3'); 
    }
}

使用例

<div id="slider">          
    <?php    
        // Checks if post has a feature image, grabs the feature-image and outputs that along with thumbnail SRC as a REL attribute 
        if (has_post_thumbnail()) { // checks if post has a featured image and then outputs it.     
            $image_id = get_post_thumbnail_id ($post->ID );  
            $image_thumb_url = wp_get_attachment_image_src( $image_id,'small-thumb');                               
            $attr = array(
                'class' => "folio-sample",                                   
                'rel' => $image_thumb_url[0], // REL attribute is used to show thumbnails in the Nivo slider, can be skipped if you don't want thumbs or using other slider
            );
            the_post_thumbnail ('feature-image', $attr);                                            
        }
        if (class_exists('MultiPostThumbnails')) {                              
        // Loops through each feature image and grabs thumbnail URL
        $i=1;
            while ($i<=5) {
                $image_name = 'feature-image-'.$i;  // sets image name as feature-image-1, feature-image-2 etc.
                if (MultiPostThumbnails::has_post_thumbnail('folio', $image_name)) { 
                    $image_id = MultiPostThumbnails::get_post_thumbnail_id( 'folio', $image_name, $post->ID );  // use the MultiPostThumbnails to get the image ID
                    $image_thumb_url = wp_get_attachment_image_src( $image_id,'small-thumb');  // define thumb src based on image ID
                    $image_feature_url = wp_get_attachment_image_src( $image_id,'feature-image' ); // define full size src based on image ID
                    $attr = array(
                        'class' => "folio-sample",      // set custom class
                        'rel' => $image_thumb_url[0],   // sets the url for the image thumbnails size
                        'src' => $image_feature_url[0], // sets the url for the full image size 
                    );                                                                                      
                    // Use wp_get_attachment_image instead of standard MultiPostThumbnails to be able to Tweak attributes
                    $image = wp_get_attachment_image( $image_id, 'feature-image', false, $attr );                     
                    echo $image;
                }                           
                $i++;
            }                            

        }; // end if MultiPostThumbnails 
     ?>
</div><!-- end #slider -->
1
Tom J Nowell