0

私の管理ページでは、デフォルトのテンプレート ページを別のカスタム テンプレートに変更できます。私が必要とするのは:

私のナビゲーションヘッダーメニューには多くのリンクがあり、タグがデフォルトのテンプレートではなくカスタムテンプレートでレンダリングされるページを指しているa場合、タグのタイトル属性を設定する必要があります。a例:

<li><a hreh=".." title="myCustom">link1</a></li> //this title will be redirected with my custom template
<li><a hreh="..">link2</a></li> //this title will be redirected with default template
<li><a hreh="..">link3</a></li> //this title will be redirected with default template
<li><a hreh=".." title="myCustom">link4</a></li> //this title will be redirected with my custom template

header.phpそのリンクを開くと、次の方法で作成されます。

<?php $params = array( 
      'theme_location'  =>'primary',
      'limit'  => 5,
      'format' => 'custom',
      'link_before' => '<span>',
      'link_after'  => '</span>' );
       wp_nav_menu($params); 
?>

リンクがデフォルトのテンプレートまたは私のものでレンダリングされているかどうかを確認するにはどうすればよいですか?

4

2 に答える 2

1

何をしようとしているのかわかりませんがtitle、バックエンドで簡単に追加できます...外観>メニュー。以下サンプル画像。。

ここに画像の説明を入力


これが役立つかどうかはわかりませんが、Creating Your Own Page Templates を読んでみましたか?

そのため、ページを作成するときに、その特定のページに使用するテンプレートを選択できます。下の画像のように、

ここに画像の説明を入力

于 2013-01-13T10:54:45.943 に答える
0

テーマがbody_classのような関数を使用している場合<body <?php body_class(); ?>>、Html はそのページの要素のみを対象とするために必要なものを既に出力しています。

体のクラス

このページはテンプレート ファイルを使用しています: /twentytwelve/page-templates/front-page.php

そこに StackOverflow クラスがあることがわかります ;)、それは次の方法によるものです。

add_filter('body_class', 'body_class_so_14302462');

function body_class_so_14302462( $classes ) 
{
    global $post;
    if( 'page' != $post->post_type )
        return $classes;

    $classes[] = 'STACKOVERFLOW';
    return $classes;
}

配列にクラスを追加する代わりに、 を使用して完全にオーバーライドし$classes = 'custom-and-only-class';、あらゆる種類のチェックを行って出力を微調整することもできます。

于 2013-01-13T15:41:03.500 に答える