it-swarm.com.de

Wordpress-Loop-spezifische Thumbnail-Größe

Das ist meine Schleife:

<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(); ?>

Ich möchte statt 150x150px 200x200px verwenden, aber bei mir funktioniert nichts. Bilder sollten beschnitten sein.

Derzeit sieht es so aus: http://prnt.sc/b3v88w

Ich habe versucht, set_post_thumbnail_size (200, 200); aber alle Änderungen ...

2
Benedikt W

set_post_thumbnail_size() (und andere API-Funktionen, die Größen hinzufügen/ändern) gelten für die Generierung, während sie aktiv ist . Daher werden vorhandene generierte Bildgrößen nicht rückwirkend beeinflusst.

Es gibt viele Tools (Plugins, wp-cli), die Dateien mit der aktuellen Größenkonfiguration neu generieren.

2
Rarst

Ich benutze den Aqua Resizer in meiner Theme-Entwicklung. https://github.com/syamilmj/Aqua-Resizer

Es ist ziemlich einfach zu implementieren und sollte genau das tun, was Sie wollen. Mit dieser Funktion können Sie die Größe aller vorhandenen WordPress-Bilder ändern. Das folgende Beispiel erstellt ein 200 x 200-Bild aus dem WP Medium-Bild und schneidet es hart auf 200 x 200 zu.

$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

Dann das Bild aufrufen ...

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

In deiner function.php kannst du eine benutzerdefinierte Größe hinzufügen, zum Beispiel: add_image_size ('custom_thumbail', 200, 200); Sobald Sie die Miniaturansichten neu erstellen (empfohlenes Plugin von WordPress), werden diese erstellt, oder alle neu hochgeladenen Bilder werden diese Größe haben.

Dann kannst du sie in deiner Post anrufen.

Echo wp_get_attachment_url ('Ihre Beitrags-ID', 'custom_thumbail');

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

1
jake