• 解決済 hachikuma

    (@hachikuma)


    yuutaというテーマを使ってるのですが、
    投稿ページ等にサイドナビが出ない仕様になっているようです。
    ウィジットも少し表示が他と異なりサイドナビはなさそうでした。

    企業ホームページなので他のページはいらないのですが、
    ブログやニュースページ(つまり投稿ページ)にだけ、
    一般的なブログページのようにサイドナビを付けたいのですが、
    他のテーマにする余裕がないので、何かプラグイン等で付けられればと思っております。
    このようなケースの場合、どういう方法がありますでしょうか?

    よろしくお願いします。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • こんにちは。ミスってたので修正しました。
    こちらは参考になりますか?

    https://webukatu.com/wordpress/blog/27994/

    WordPressの作法として上を取り込む場合、下記の手順+CSSになると思います。

    //サイドバーを増やす
    register_sidebar( array(
    	'id' => 'my_sidebar', 
    	'name' => 'ショートコードadd_widget', 
    	'description' => '説明は省略', //設定画面の説明欄
    ) );
    //サイドバーを呼び出す
    function call_sidebar($params = array()) {
    	ob_start();
    	dynamic_sidebar('my_sidebar');
    	$text = ob_get_clean();
    	return "<div class='call_sidebar1'>" . $text . "</div>";
    }
    //ショートーコードのトリガーを決める
    add_shortcode('add_widget', 'call_sidebar');

    functoin.phpにこれを追記して、
    my_sidebarのウィジェット領域に、ウィジェットを配置します。
    ショートコード add_widget で表示されます。
    それにスタイルシートで、外見を変更していくのだと思います。

    これらを組みあわせてですかね。

    なんとなくですが、テーマが普通に実装しているはずのことを、プラグインで実装しても、
    それを公開する必要があまりないので、公開はされていないと、考えました。

    お邪魔しました。

    • この返信は1年、 5ヶ月前にsyntaroが編集しました。
    トピック投稿者 hachikuma

    (@hachikuma)

    ご返答ありがとうございます。

    もう少し教えてください。
    functoin.phpに記述したところ、外観>ウィジェットに
    ショートコード add_widgetが表示されました。

    そこにHTMLでいろいろ作り込めそうですが、
    これを各投稿ページに呼び出すにはどうすれば良いのでしょうか?

    基本的なことがわかってなくて申し訳ありません。
    よろしくお願いいたします。

    こんにちは

    サイドナビはテーマごとにどのように追加するかは異なりますので、汎用的にプラグインで追加することは難しそうです。

    投稿が表示された場合にのみ、サイドナビを表示したい場合には、テーマのsingle.php</main><!-- #main -->の下に

    <aside>
      <?php dynamic_sidebar('my_sidebar'); ;?>
    </aside>

    を追加してください。

    ウィジット機能でサイトバーナビの内容を追加したい場合には syntarouさんが書かれているような方法で、以下のように functions.php に以下のように記述してサイドバーを追加しておいてください。

    function my_add_sidebar(){
        register_sidebar( array(
            'name' => 'サイドバー',
            'id' => 'my_sidebar'
        ) );
    }
    add_action( 'widgets_init', 'my_add_sidebar' );

    このままでは、サイドナビは投稿コンテンツの下に表示されますので、CSS でよしなに右にでも左にでも表示してください。
    これで、ウィジットにいろいろ追加することで、投稿画面のサイドバーに反映することができます。

    もし、直接 HTML でサイドナビ内にコンテンツを追加したい場合には、functions.php にサイドバーを追加する記述は不要です。
    single.php に追加した<?php dynamic_sidebar('my_sidebar'); ;?>を削除して、その箇所に自由にHTMLを記述してください。

    ※子テーマにて実装されることをお勧めします。また、作業の前にバックアップをお取りください。

    トピック投稿者 hachikuma

    (@hachikuma)

    munyaguさん

    ご回答ありがとうございます。

    そちらの方法で上手くいきました!
    本当にありがとうございました。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「サイドナビの付け方」には新たに返信することはできません。