1

wordpressのメインナビゲーションにカテゴリを使用しています。カテゴリ「ホーム」(開始ページ) を表示するには、index.php で次のコードを使用します。「ホーム」はカテゴリ 4 です。

<?php if ( have_posts() ) : ?> <?php query_posts("cat=4"); //set cat 4 to start page ?>
            <?php /* Start the Loop */ ?>

問題は、誰かが私のサイトにアクセスしたときに、「ホーム」が現在のページとしてマークされていないことです。ただし、「ホーム」をクリックすると、現在のページとして強調表示されます。

誰かが自分のサイトにアクセスしたときに、カテゴリ ホームを現在のページとして設定するにはどうすればよいですか? 上記のphpコードにcssを含めることはできますか?

メイン メニューのリンク (カテゴリ) をクリックすると動作するが、メニューをクリックせずに誰かが Web ページにアクセスしたときは機能しない、CSS に次のコードを追加します。

.main-navigation .current-menu-item > a,
.main-navigation .current-menu-ancestor > a,
.main-navigation .current_page_item > a,
.main-navigation .current_page_ancestor > a {
    color: #ffffff;
            background-color: #f68a1f;
}

私のメニューコードは次のようになります(ワードプレスメニューを使用)

<nav id="site-navigation" class="main-navigation" role="navigation">
            <h3 class="menu-toggle"><?php _e( 'Meny', 'twentytwelve' ); ?></h3>
            <div class="skip-link assistive-text"><a href="#content" title="<?php esc_attr_e( 'Skip to content', 'twentytwelve' ); ?>"><?php _e( 'Skip to content', 'twentytwelve' ); ?></a></div>
            <?php wp_nav_menu( array( 'theme_location' => 'primary', 'menu_class' => 'nav-menu' ) ); ?>
        </nav><!-- #site-navigation -->
4

1 に答える 1

0

index.phpを使用する代わりに、次の説明に従って新しい「PageofPosts」ページテンプレートを作成します: http: //codex.wordpress.org/Pages#A_Page_of_Posts

そのテンプレートでは、query_posts("cat=4");コードを使用して、そのカテゴリの投稿のみを表示します。

次に、Wordpressダッシュボードで新しいページを作成し、好きな名前を付けて、そのテンプレート(編集ページの[ページ属性]ブロック内)を新しく作成したテンプレートに設定します。

最後に、[設定]> [読み上げ]で[フロントページの表示]を[静的ページ]に設定し、新しく作成したページをフロントページとして選択します。

このように、Wordpressの組み込み機能を使用して、特定の種類のコンテンツを含むカスタムページを作成し、ページを表示しているときにページがアクティブであることを認識させます。

于 2012-11-30T10:01:55.627 に答える