Wordpress : afficher le nom de la page la plus haute hiérarchiquement

milkiway

WRInaute accro
Bonjour,

Derrière ce titre barbare, une demande toute simple.
J'ai des pages organisées comme suit :
Code:
Afrique
          o Afrique du Sud
          o Cameroun
          o Sénégal
          o Guinée 
Amérique du Sud
          o Argentine
          o Brésil
          o Guyane
          o Pérou

Je voudrais sur n'importe quelle sous page afficher le nom de sa page parente.
Par exemple, sur la page Pérou ou Brésil, récupérer le nom "Amérique du Sud".

Les pages n'étant pas liées aux catégories, single_cat_titel() ne renvoie rien.
Quel est le bon code ?

Un grand merci

Milki
 

SpeedAirMan

WRInaute passionné
Je me rappelle avoir vu une fonction permettant d'extraire le nom (et le lien) de la page parente...
ça remonte à loin, pas trop envie de chercher pendant des heures, mais si mes souvenirs sont bons, la fonction se trouvait dans le fichier functions.php d'un des thèmes WordPress d'Andreas Viklund (WP-Andreas01 si mes souvenirs sont bons).

Télécharge, cherche et teste, et n'hésite pas à revenir nous dire si tu as trouvé ;-)
 

milkiway

WRInaute accro
Merci.

Bon et bien comme d'habitude aucune réponse ni même semblant d'aide sur Wordpress-fr (j'ai pas posté il y a longtemps remarque, je suis pas tellement objectif sur ce coup) j'ai demandé sur le forum US.
Réponse en 3 minutes.

<?php
//if page being displayed and there's a page parent, display the page parent title
global $posts;
$parent = $posts[0]->post_parent;
if (is_page() && $parent ) {
$args=array(
'post__in' => array($parent),
'post_type' => 'page',
'post_status' => 'publish',
'posts_per_page' => 1,
'caller_get_posts'=> 1
);
$my_query = null;
$my_query = new WP_Query($args);
if( $my_query->have_posts() ) {
while ($my_query->have_posts()) : $my_query->the_post(); ?>
<p><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></p>
<?php
endwhile;
}
wp_reset_query(); // Restore global post data stomped by the_post().
}
?>
Et ça fonctionne parfaitement :)

Source : Wordpress : How to get and display the name of a parent page on a page
 

Marie-Aude

WRInaute accro
milkiway a dit:
Merci.

Bon et bien comme d'habitude aucune réponse ni même semblant d'aide sur Wordpress-fr (j'ai pas posté il y a longtemps remarque, je suis pas tellement objectif sur ce coup) j'ai demandé sur le forum US.

Au nom de toute l'équipe de wordpress-fr, nous te faisons nos plus plates excuses d'avoir une vie en dehors du web, de ne pas être aussi nombreux que la communauté US, d'avoir parfois autre chose à faire à l'heure du dîner, et de ne pas avoir pu répondre aussi vite que tu le souhaitais.

Cela dit, perso, quand je vois une demande identique sur plusieurs forums je zappe. Et pour le "comme d'habitude", je suppose que tu as plusieurs ID là bas ? Parce qu'avec deux messages au compteur, en date d'aujourd'hui, c'est pas beaucoup pour avoir des habitudes.
 

milkiway

WRInaute accro
Bonsoir,

Je ne savais pas qu'il y avait des membres Wordpress-fr ici mais de toutes façons je ne voulais ni ne pensais offenser personne. Ce n'est jamais mon but (voir mes + de 2000 messages sur WRI).
Effectivement j'ai eu plusieurs comptes WP-fr. Je ne sais pas quel pseudo tu as vu de moi mais j'ai une 20 aines de posts sur ce forum et n'ai malheureusement jamais eu de réponses aux questions mais peut-être que mes demandes ne sont pas claires ?

Pour les demandes identiques sur plusieurs forums j'ai toujours fonctionné comme ça ai ai toujours supprimé les posts sans réponse pour ne générer ni DC, ni pages référencées sans réponses. Je poste enfin les réponses que j'ai eu ou trouvé pour en faire profiter les autres.

Donc mea culpa si j'ai blessé quelqu'un, ce n'était pas voulu mais un constat personnel ;)
 

Marie-Aude

WRInaute accro
Pour les demandes ça dépend de beaucoup de choses, pas obligatoirement seulement du fait qu'elles soient claires ou pas.
Pour les demandes identiques, ce n'est pas tellement une question de DC, c'est plutôt de faire bosser plusieurs personnes sur le même problème à la fois, et quand on répond à plusieurs endroits, finalement, la discussion n'est jamais complète. Quant aux multiples pseudos, je ne comprends pas trop l'intérêt... mais bon
 

Discussions similaires

Haut