web-dev-qa-db-ja.com

Wordpressのループ固有のサムネイルサイズ

それが私のループです:

<main id="main">

    <?php 
    // the query
    $args = array('posts_per_page' => 10 );
    $the_query = new WP_Query( $args ); 

    ?>

    <?php if ( $the_query->have_posts() ) { ?>

        <!-- loop -->

        <?php while ( $the_query->have_posts() ) {

                    $the_query->the_post(); ?>
            <div id="thumbnail">

                <?php
                if ( has_post_thumbnail() ) { the_post_thumbnail(array( "class"=>"thumbnail")); } ?>

        </div>

       <h2><a href="<?php the_permalink();?>"><?php the_title(); ?></a></h2>

       <div class="entry">

            <?php the_excerpt(); ?>

       </div>
    <?php } } else { ?>
    <p><?php _e( 'Die Posts entsprechen leider nicht den Kriterien.' ); ?></p>
    <?php }  ?>

   <!-- end of the loop -->

   <?php wp_reset_postdata(); ?>

150x150px 200x200pxの代わりに使用したいのですが、うまくいきません。画像はトリミングする必要があります。

現在は次のようになっています: http://prnt.sc/b3v88w

私はset_post_thumbnail_size(200、200)を試しました。しかし、どんな変更も….

2
Benedikt W

set_post_thumbnail_size()(およびサイズを追加/変更する他のAPI関数)は、アクティブな間に生成に適用されます。したがって、既存の生成された画像サイズは、それに遡って影響を受けることはありません。

現在のサイズの設定でファイルを再生成するたくさんのツール(プラグイン、wp-cli)があります。

2
Rarst

私はテーマ開発にAqua Resizerを使います。 https://github.com/syamilmj/Aqua-Resizer

実装は非常に簡単で、必要なことを正確に実行できます。この機能により、既存のWordPress画像のサイズを変更することができます。次の例では、WP Mediumイメージから200 x 200のイメージを作成し、それを200 x 200にハードトリミングします。

$thumb = get_post_thumbnail_id();
$img_url = wp_get_attachment_url( $thumb,'medium' ); //get full URL to image 
$image = aq_resize( $img_url, 200, 200, true ); //resize & crop the image

それから画像を呼び出すには...

    <?php if($image) : ?>
        <img src="<?php echo $image ?>"/>
    <?php endif; ?>
1
Howard E

あなたのfunction.phpでは、あなたはカスタムサイズを追加することができます、例えば:add_image_size( 'custom_thumbail'、200、200);それからあなたが(Wordpressによって推薦されたプラグインの)サムネイルを再生成するならば、それはこれらを作成するでしょう、またはどんな新しいアップロードされた画像もこのサイズを持つでしょう。

それからあなたはあなたの投稿でそれらを呼び出すことができます。

エコーwp_get_attachment_url( 'あなたの投稿ID'、 'custom_thumbail');

https://developer.wordpress.org/reference/functions/add_image_size/

1
jake