Quelqu'un peut-il traduire ceci:
Si la catégorie de messages est "voitures" Afficher l'image
Par exemple:
J'ai un article avec la catégorie 'voiture' et un autre article avec la catégorie 'banane'. Non, je cherche un moyen d'ajouter une image de voiture à chaque article de la catégorie 'voiture'. Et l'image de la banane à chaque article avec la catégorie "banane". Par défaut (si l'article n'a pas de catégorie), je veux montrer la même image de voiture.
Vous pouvez utiliser la balise conditionnelle has_catgeory
. Vous pouvez faire quelque chose comme ça
if(has_category( 'cars' ) || has_category( 'uncategorized' )) {
//display cars image
}elseif(has_category( 'banana' )) {
//display banana image
}
De vos commentaires, voici votre code
<?php if(has_category( 'Update' ) || has_category( 'uncategorized' )) { ?>
<img alt="Hello!" src="<?php bloginfo('template_directory'); ?>/img/loud.png">
<?php } elseif(has_category( 'Event' )) { ?>
<img alt="Hello!" src="<?php bloginfo('template_directory'); ?>/img/event.png">
<?php } ?>
MODIFIER
La balise conditionnelle in_category
peut également être utilisée à cette fin.
EDIT 2
Pour la deuxième partie de votre question, consultez ce message de @JohannesPille on SO. Voici le post reposté.
VEUILLEZ NOTER: J'ai voté la réponse à la hausse pour SO. Si quelqu'un le juge inapte, annulez cette modification: -)
L'action create_category
est exécutée lorsqu'une nouvelle catégorie est créée.
Vous souhaitez que votre fonction de création de catégorie soit activée lorsque le thème est activé. L'action pertinente est after_setup_theme
.
Déposez ceci dans le fichier functions () de votre thème et vous devriez être prêt à partir:
function create_my_cat () {
if (file_exists (ABSPATH.'/wp-admin/includes/taxonomy.php')) {
require_once (ABSPATH.'/wp-admin/includes/taxonomy.php');
if ( ! get_cat_ID( 'Testimonials' ) ) {
wp_create_category( 'Testimonials' );
}
}
}
add_action ( 'after_setup_theme', 'create_my_cat' );
La structure de contrôle appropriée serait un switch case
, ce qui en fait un code plus lisible et maintenable. Voici un exemple dans une boucle.
<ol class="news-list">
<?php while (have_posts()) : the_post(); ?>
<li>
<a href="<?php the_permalink(); ?>">
<span class="post-date">
<?php
$category = get_the_category();
switch ($category[0]->term_id){
// display an icon next to the news item, according to the category.
// more icons: http://fontawesome.io/icon/
case 3:
// private item
?>
<i class="fa fa-lock"></i>
<?
break;
case 18:
// Headteachers' blog item
?>
<i class="fa fa-graduation-cap"></i>
<?
break;
default:
?>
<i class="fa fa-newspaper-o"></i>
<?
break;
}
the_time('j F Y'); ?>
</span>
<h4><?php the_title();?></h4>
<p class="post-resume"><?php html5wp_excerpt('html5wp_index','empty_readmore_link'); ?></p>
</a>
</li>
<?php endwhile; ?>
</ol>