2011-12-08 6 views
0

wp_list_pagesを使用して、ページと子ページにサブメニューを作成しています。 はすべて正常に動作しWp_list_pages出力時のページタイトルを変更する

私のメニューは、私は動的に出力にページのタイトルを変更する方法を見つけようとしています Parent, page title is Hello Child, Child, Child, etc

のように見えます。 上記の例では、親ページにHelloの代わりにGoodByeを表示したいと考えています。

私のページの名前を「さようなら」に改名していないのはなぜですか? (ウェルカムメニューヘッダーこんにちはディスプレイWPメニュー を経由して、これを変更することができます - - ページのタイトルは、私の設計では、3種類の形式 で表示されるので、 それは、正しいタイトルを表示するページのタイトルすなわちこんにちは

私が必要私の誰か

THX

答えて

1

はのはsidebar_titleそれを呼びましょう...あなたのページにカスタムフィールドを使用する。

さようならを表示するには、メニューを左に....

希望これは理にかなっています0

次に、wp_list_pagesコードをカスタムWordPressループに変換する必要があります(好きな場合はget_pagesを使用して同じことを行う方法があります)。

現在のページとその子ページを一覧表示するサイドバーコードがあります。the_title();をあなたのsidebar_title(存在する場合)に置き換えます。それはかなり醜いです...主なポイントは、カスタムフィールドにアクセスする方法を示すことです。

<?php 
    //Get children of current page and display with custom fields. 
    //You will probably need to adjust this. 
    $args=array(
     'post_parent' => $post->ID, 
     'post_type' => 'page', 
    ); 
    $my_query = null; 
    $my_query = new WP_Query($args); 
    if($my_query->have_posts()) { 
    ?> 
    <ul> 
    <?php 
     // Print parent with sidebar_title, if it exists 
     $sidebar_title = get_post_meta($post->ID, 'sidebar_title', true); 
     if ($sidebar_title != ''){ ?> 
      <li><a href="<?php the_permalink() ?>"><?php echo $sidebar_title;?></a></li> 
     <?php } else { ?> 
      <li><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li> 
     <?php } ?> 
    <?php 
     // Print each child page with sidebar_title, if it exists 
     while ($my_query->have_posts()) : $my_query->the_post(); ?> 
     <?php 
      $sidebar_title = get_post_meta($post->ID, 'sidebar_title', true); 
      echo $sidebar_title; 
      if ($sidebar_title != ''){ ?> 
       <li><a href="<?php the_permalink() ?>"><?php echo $sidebar_title;?></a></li> 
      <?php } else { ?> 
      <li><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li> 
      <?php } ?> 
     <?php endwhile; } ?> 
     </ul> 
    <?php wp_reset_query();?> 
関連する問題