こんにちは。ミスってたので修正しました。
こちらは参考になりますか?
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 で表示されます。
それにスタイルシートで、外見を変更していくのだと思います。
これらを組みあわせてですかね。
なんとなくですが、テーマが普通に実装しているはずのことを、プラグインで実装しても、
それを公開する必要があまりないので、公開はされていないと、考えました。
お邪魔しました。
ご返答ありがとうございます。
もう少し教えてください。
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を記述してください。
※子テーマにて実装されることをお勧めします。また、作業の前にバックアップをお取りください。
munyaguさん
ご回答ありがとうございます。
そちらの方法で上手くいきました!
本当にありがとうございました。