Comment puis-je montrer le poste miniature de la plus récente d'un certain type de poste, dans un widget?

wordpress.stackexchange https://wordpress.stackexchange.com/questions/5052

  •  16-10-2019
  •  | 
  •  

Question

J'utilise l'excellent PHP code Widget plug-in , et le manque pour créer un widget qui affiche la vignette post (image aka sélectionnée) pour le dernier « projet » après. Voici le code que j'ai jusqu'à présent, mais il ne produit pas le résultat souhaité. Rien en fait des sorties.

<?php
global $post;
$args = array(
    'post_type' => 'project',
    'posts_per_page' => 1,
    ); 
$thumbnails = get_posts($args);
foreach ($thumbnails as $post)
{
    setup_postdata($post);
        ?>
        <a href="<?php the_permalink(); ?>"><?php the_post_thumbnail( 'thumbnail' ); ?></a>
        <?php 
        }

Toutes les suggestions sur ce que je dois changer pour que cela fonctionne?

Était-ce utile?

La solution

Déplacement ici si les commentaires ne se transforment pas en désordre.

En fait il y a deux choses qui peuvent mal tourner ici:

  1. des postes semblables dans. Vérifier que $thumbnails correct et obtient après une seule. Je ne sais pas si cela est le problème, mais get_posts() docs liste argument numberposts au lieu de posts_per_page répertorié pour query_posts(). Cela pourrait faire une différence.

  2. Messing avec des variables globales. Pour cet usage, je ne toucherais pas $post mondiale du tout, directement ou avec setup_postdata() soit. Il suffit d'utiliser les versions non-boucle de fonctions qui peuvent aller chercher des choses dont vous avez besoin par id poste - get_permalink() et < a href = "http://codex.wordpress.org/Function_Reference/get_the_post_thumbnail" rel = "nofollow"> get_the_post_thumbnail() .

Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange
scroll top