1

問題: 追加した 3 番目のサイドバーがターゲット ページに表示されません。

説明: 特定のテンプレートでウィジェット サイドバーを作成および表示する手順で不足しているものを誰かが確認できるかどうかを確認したかったのです。以下に説明する状況を使用すると、ウィジェット管理ページにサイドバーが表示されますが、テンプレートがレンダリングされると、サイドバーがデフォルトのサイドバーになります。これは、動的サイドバーがテンプレートによって検出されていないことを示唆しています。これは、私が追加した 2 番目のサイドバーです。テンプレート タグのサイドバー名を最初の追加テンプレートの名前に置き換えると、ページは最初のカスタマイズされたサイドバーでレンダリングされます。

追加のウィジェット サイドバーを作成し、選択したテンプレートで表示する手順

1) functions.php の子テーマにサイドバーを登録します
。2) 登録プロセスで、新しいサイドバーに名前と ID を割り当て
ます。3) 既存のテンプレートに基づいて追加のサイドバー テンプレートを作成します。既存のテンプレートをコピーし、ダイナミック テンプレートの名前を新しく登録されたサイドバーと一致するように変更します。
4) サイドバーを表示するテンプレートに移動し、サイドバーの名前を get_sidebar() テンプレート タグに挿入します。
5) 管理パネルに移動し、ウィジェットを新しいサイドバーのブック ポストにドラッグします。

具体的には、次のようになります。

  1. サイドバーを登録します。

    if ( function_exists ('register_sidebar'))
        register_sidebar( array(
        'name'          => __('bookpost'),
        'id'            => 'sidebar-bookpost',
        'description'   => 'Sidebar for showing ad and section list on the template single-book.php',
        'before_widget' => '<div id="%1$s" class="widget %2$s">',
        'after_widget'  => '</div>',
        'before_title'  => '<h2 class="widgettitle">',
        'after_title'   => '</h2>' ));
    
  2. name bookpost と sidebar-bookpost を割り当てる
  3. sidebar-bookpost.php という名前の追加のサイドバー テンプレートを作成します。行を編集する

    それが今読むように

    get_sidebar('bookpost');
    

最後に、ウィジェット管理ページを使用してウィジェットを割り当てます。

4

1 に答える 1