Activer les liens parents dans une catégorie
Résolu
Kaz
-
Kaz -
Kaz -
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
-