Bonjour à tous !
Alors voilà, je me suis mit aux custom post type, tout fonctionne à merveille ( grace aux conseils de Grafikart, bien entendu ), mais je rencontre une bosse.
J'ai intégré un breadcrumbs sur l'ensemble du site, sans plugin, fonctionnel.
J'y ai ajouté qq lignes :
elseif ( is_post_type_archive() ) {
$sep = ' > ';
echo $sep;
echo post_type_archive_title(). "</span>";}
ça affiche bien le nom du custom post, mais lorsque je rentre dans l'un des posts, catastrophe...
Le code prend en compte la condition "is_single" de mon breadcrumbs, alors que je souhaiterai qu'il m'affiche tout ça sous cette forme :
Accueil > Custom post type > (custom post type )Post title
Et impossible de trouver le bon conditionnal tag. J'en ai testé plusieurs, sans résultat. Vous avez une idée ?
Ci-joint, le code complet du breadcrumbs
global $wp_query; ?>
<div class="breadcrumbs">
<span class="prefix-text"><?php echo __( 'Vous êtes ici') . ':'; ?></span>
<a href="<?php echo home_url( '/' ); ?>" rel="home"><?php _e( 'Accueil'); ?></a>
<?php
if ( is_category() ){
$catTitle = single_cat_title( "", false );
$cat = get_cat_ID( $catTitle );
echo " > ". get_category_parents( $cat, TRUE, " > " ) ."</span>";}
elseif ( is_tag() ) {
echo " > Articles sur le Thème <span id=\"breadtitle\">> ";
echo the_title('','', FALSE) ."</span>";}
elseif ( is_post_type_archive() ) {
$sep = ' > ';
echo $sep;
echo post_type_archive_title(). "</span>";}
elseif ( is_archive() && !is_category() ) {
if (is_author() ) {
$author = get_userdata( get_query_var( 'author' ) );
$sep = ' › ';
echo $sep;
if( is_paged() ) {
echo '<a href="' . get_author_posts_url( get_query_var( 'author' ) ) . '">';
echo __( 'Articles de', '' ) . ' ' . $author->display_name . '';
echo '</a>';
} else
echo __( 'Articles de', '' ) . ' ' . $author->display_name . '';}
else echo " > Archives</span>";}
elseif ( is_search() ) {
echo " > Résultats de votre recherche <span id=\"breadtitle\">> ";
echo get_search_query() ."</span>";}
elseif ( is_404() ) {
echo " > 404 Page non trouvée</span>";}
elseif ( is_single() ){
$category = get_the_category();
$category_id = get_cat_ID( $category[0]->cat_name );
echo ' > '. get_category_parents( $category_id, TRUE, " > " );
echo ' > ';
echo '<span id="breadtitle">';
echo the_title('','', FALSE) ."</span>";}
elseif ( is_page() ) {
$post = $wp_query->get_queried_object();
if ( $post->post_parent == 0 ){
echo " > ".the_title('','', FALSE)."</span>";
} else {
$title = the_title('','', FALSE);
$ancestors = array_reverse( get_post_ancestors( $post->ID ) );
array_push($ancestors, $post->ID);
foreach ( $ancestors as $ancestor ){
if( $ancestor != end($ancestors) ){
echo '<a href="'. get_permalink($ancestor) .'">'. strip_tags( apply_filters( 'single_post_title', get_the_title( $ancestor ) ) ) .'</a></span>';
} else {
echo ' '. strip_tags( apply_filters( 'single_post_title', get_the_title( $ancestor ) ) ) .'</span>';}}}}
echo "</div>"
Bonsoir,
Il y a ce petit lien ( je suppose que c'est ici que tu a pris le code pour ton fil d'arianne mais on sais jamais je te le laisse ! :)
Le lien
Dans les commentaires il y a plusieurs techniques utilisées dont tu peux t'inspirer et peut être trouver ton bonheur.
Si vraiment tu bute alors reviens vers nous et on verra ce qu'on peut faire plus profondément ! :)
Rebonjour !
Alors, j'ai testé la version breadcrumbs de SeoMix et elle a l'air de correctement fonctionner. Le code est bien moins simple pour moi, mais reste editable en cas de besoin.
Merci à SeoMix pour son code et merci à Lotfi pour m'avoir guidé :)
( Là j'essaie de dépiauter le code pour comprendre comment il a fait, quand même, mais j'ai un peu de mal... )
Petite précision :
Si je laisse le code tel quel, j'ai une erreur dans la condition is_single ( echo ' > '. get_category_parents( $category_id, TRUE, " > " ); )
Si je la passe en commentaire, j'ai le titre qui s'affiche, mais je n'ai pas le nom du custom post type entre ce titre et Accueil ( en clair, j'ai Accueil > titre, alors que je veux Accueil > custom post > titre )
Je radote, mais j'essaie d'apporter le plus de précisions possibles :)
Merci d'avance !
Bonjour et merci Lotfi!
Bon, je n'ai pas vraiment trouvé la réponse à ma question, hormis peut-être avec la solution de Soemix, que je vais essayer maintenant, j'ai cru appercevoir dans son code une partie custom post type. ( Et comme le dit l'auteur, le sien présente des avantages sur le référencement google etc etc ).
Bref, je teste ça et je reviens par ici :)
ps : Non ce n'est pas le code que j'ai utilisé, je l'ai trouvé je ne sais plus où et je l'ai un peu modifié. mais ça n'était pas loin en effet :)