Puis-je définir une image sélectionnée par défaut pour une catégorie?

10

Je suis en train de créer un site avec un thème qui tire parti de la fonctionnalité "Image en vedette" de WordPress. Mes utilisateurs finaux n'étant pas la technologie la plus sophistiquée au monde, j'aimerais configurer les choses de manière à ce que les catégories se voient attribuer une "image sélectionnée" par défaut. Dans le cas où plusieurs catégories seraient affectées à un poste, il s'agirait simplement de la première.

Existe-t-il un plugin existant ou un moyen de le coder?

    
posée Dillie-O 07.12.2010 - 23:33

5 réponses

13

Dans votre modèle dans lequel l'image sélectionnée est affichée: <?php the_post_thumbnail( 'thumbnail' ); ?> , vous pouvez le subordonner à la condition que l'image sélectionnée soit définie, puis définissez ce paramètre par défaut si ce n'est pas le cas.

Une façon de faire est de mettre toutes les images par défaut dans un répertoire et de les nommer pour les catégories, par exemple. news.jpg et reviews.jpg, au lieu d’utiliser <?php the_post_thumbnail( 'thumbnail' ); ?> pour afficher votre image sélectionnée, vous utiliseriez ceci:

<?php 
   if (  (function_exists('has_post_thumbnail')) && (has_post_thumbnail())  ) { 
      the_post_thumbnail('thumbnail');
   } else { ?>
      <img src="whatever/directory/<?php $category = get_the_category(); echo $category[0]->cat_name; ?>.jpg" /> <?php }
   endif;
} ?>

Ainsi, dans l'exemple ci-dessus, si l'article est dans la catégorie actualités et que votre auteur n'a pas défini l'image sélectionnée, l'image sélectionnée sera celle par défaut stockée dans http://www.yoursite/whatever/directory/news.jpg .

    
réponse donnée matt 08.12.2010 - 00:01
2
<?php if (  (function_exists('has_post_thumbnail')) && (has_post_thumbnail())) : ?>

<?php the_post_thumbnail('thumbnail'); ?>

<?php else :?>

<img src="<?php bloginfo('template_directory'); ?>/your image directory name in theme folder/<?php $category = get_the_category(); echo $category[0]->cat_name; ?>.jpg" /> 

<?php endif;?>
    
réponse donnée Nitin 25.06.2012 - 12:52
2

J'ai rencontré quelques problèmes avec les noms de catégorie ayant des espaces, j'ai légèrement modifié le code ci-dessus pour répondre à mes besoins

<?php if (  (function_exists('has_post_thumbnail')) && (has_post_thumbnail())) : ?>

<?php the_post_thumbnail('thumbnail'); ?>

<?php else :?>

<img src="whatever/directory/<?php $category = get_the_category(); echo $category[0]->cat_ID; ?>.jpg" /> 

<?php endif;?>

fondamentalement, il suffit de changer

echo $category[0]->cat_name;

à

echo $category[0]->cat_ID;

qui fera votre image 16.jpg ou 3.jpg ce qui correspond à votre numéro de catégorie.

    
réponse donnée brass 13.07.2012 - 18:40
2

Une façon plus propre de faire ce qui précède;)

if ( ( function_exists( 'has_post_thumbnail' ) ) && ( has_post_thumbnail() ) ) : 
    the_post_thumbnail( 'thumbnail' );
else :
    ?><img src="whatever/directory/<?php 
        $category = get_the_category(); echo $category[0]->cat_name; 
        ?>.jpg" /><?php
endif;
    
réponse donnée lemonfresh design 13.07.2011 - 13:42
1

J'ai utilisé avec succès Images de taxonomie de Michael Fields - des fonctions de gestion ont été ajoutées à la catégorie / taxonomie. modifier la page, de sorte que les images en vedette fonctionnent pour les taxonomies comme pour les articles / pages. A toutes les fonctions dont vous avez besoin pour votre thématisation.

    
réponse donnée ptim 02.10.2012 - 01:53

Lire d'autres questions sur les étiquettes