Activer les liens parents dans une catégorie
Résolu
Bonjour,
Mon menu marche correctement sous Wordpress 4. Le logo change selon la section, et le bouton permettant d'y accéder reste en position :hover.
J'ai toutefois un problème: si je vais à l'intérieur de la catégorie, dans une page concernant une image comme celles-ci : ici
Tout redevient à la normale. Le logo est celui de base et plus aucun bouton n'est en position :hover.
Pour les images, j'avais ce code à ma disposition :
J'ai tenté de le retourner dans tous les sens en jouant avec les classes .current-post-ancestor,.current-post-ancestor a, .current-menu-parent, .current-menu-parent a, .current-post-parent, .current-post-parent a, tout en essayant de récupérer dynamiquement la catégorie parente grâce au codex Wordpress, mais je ne m'en sors pas.
Quelqu'un pourrait-il m'aider s'il vous plait ?
En vous remerciant par avance :)
Mon menu marche correctement sous Wordpress 4. Le logo change selon la section, et le bouton permettant d'y accéder reste en position :hover.
J'ai toutefois un problème: si je vais à l'intérieur de la catégorie, dans une page concernant une image comme celles-ci : ici
Tout redevient à la normale. Le logo est celui de base et plus aucun bouton n'est en position :hover.
Pour les images, j'avais ce code à ma disposition :
<?php
$catCouranteID = get_cat_ID(single_cat_title('', false)); // récupère l'ID de la catégorie courante
if (catCouranteID) {
echo '<style>.current-menu-item { background-image: url('.get_bloginfo('template_url').'/images/cat-'.$catCouranteID.'.png); }</style>';
}
?>
J'ai tenté de le retourner dans tous les sens en jouant avec les classes .current-post-ancestor,.current-post-ancestor a, .current-menu-parent, .current-menu-parent a, .current-post-parent, .current-post-parent a, tout en essayant de récupérer dynamiquement la catégorie parente grâce au codex Wordpress, mais je ne m'en sors pas.
Quelqu'un pourrait-il m'aider s'il vous plait ?
En vous remerciant par avance :)
4 réponses
-
tu pourrais faire plus simple juste en utilisant les marqueurs conditionnels puisque tu sais quelle image hover correspond a quelle catégorie, pas besoin de récupérer l'id
il suffit d'utiliser une variable dans ta div qui contient le logotadiv id="<?php echo $log;?>
ensuite tu mets les marqueurs conditionnel en fonction de ce que tu souhaites (ici les catégories)
<?php if(is_category('2') ):
$log=logofootball;
elseif (is_category('3') ):
$log=logorugby;
else :
$bg=ici id de la div contenant ton logo actuellement;
endif; ?>
Il ne te reste plus qu'a ajouter les css correspondantes (evidemmenten fonction de ton code actuel)
#logofootball{
background-image: url(images/logoffotball.jpg);
background-repeat:no-repeat;
background-attachment:fixed;
background-position:left bottom;
}
#logorugby{
background-image: url(images/logorugby.jpg);
background-repeat:no-repeat;
background-attachment:fixed;
background-position:left bottom;
}
ainsi chaque catégorie affichera l'image qui la symbolise, si c'est aucune des catégorie ayant son propre logo, c'est le logo par défaut qui s'affichera -
Je n'arrive pas du tout à faire fonctionner le code... sûrement dû à la structure de mon thème...
-
le principe fonctionne normalement sur tous les thèmes par contre il faut évidemment l'adapter à la structure mais dans la plupart des thèmes, il faut mettre le code php dans le fichier header.php avant la div contenant ton logo
-
ok merci !