-
投稿者投稿
-
2019年2月16日 5:45 PM #10466
トピックを新しく立てる方は次の項目も記述してください(要望トピックの場合は不要です)。
【お使いの Snow Monkey のバージョン】v5.1.1(ローカルテスト環境)
【お使いのブラウザ】safari、chrome
【当該サイトのURL】(公開できる場合は書いていただいたほうがスムーズです)
新しく追加された「snow_monkey_template_part_root」の書き方はどうなりますか?
my snow monkeyプラグインに以下のように書けば良いかと思いますが、functionの中の〇〇部分がわかりません。
add_filter(
‘snow_monkey_template_part_root’,
function( $root, $slug, $name, $vars ) {〇〇
},10,4)♥ 0いいねをした人: 居ません2019年2月17日 1:07 AM #10469これまだ記事も説明も書いてなかったですね。。。
例えば
my-snow-monkey/my-snow-monkey.php
に記述 &my-snow-monkey/my-snow-monkey/templates
の中にテンプレートを配置するとすると、次のようになります。add_filter( 'snow_monkey_template_part_root', function( $root, $slug, $name, $vars ) { return __DIR__ . '/templates'; }, 10, 4 );
上の例だと
Helper::get_template_part()
で呼び出されるすべてのテンプレートの基本ディレクトリがmy-snow-monkey/templates
になりますが、例えば$slug
を使って分岐させれば特定のテンプレートのときだけ基本ディレクトリを変える、みたいなこともできます。♥ 0いいねをした人: 居ません2019年2月17日 10:41 AM #10471ご説明ありがとうございます。
以下のようにプラグインディレクトリ内を配置しましたが、配置したテンプレートが反映されませんでした。何か配置の仕方を勘違いしているのだと思いますが、正解をお示しいただけますか?
my-snow-monkey
├my-snow-monkey.php
└templates
└loop
└entry-summary-post.php
my-snow-monkey.phpでの書き方は、冒頭のプラグイン名などのコメント以外に以下を記しただけです。
add_filter(
‘snow_monkey_template_part_root’,
function( $root, $slug, $name, $vars ) {
return DIR . ‘/templates’;
},10,4);♥ 0いいねをした人: 居ません2019年2月17日 10:51 AM #10472配置がずれたので再投稿します。
ディレクトリ構造my-snow-monkey ├my-snow-monkey.php └templates └loop └entry-summary-post.php
my-snow-monkey.php内のコード
add_filter( 'snow_monkey_template_part_root', function( $root, $slug, $name, $vars ) { return __DIR__ . '/templates'; },10,4 );
「My Snow Monkey」以外に有効化されたプラグインは「Snow Monkey Blocks」「WP Multibyte Patch」だけです。
♥ 0いいねをした人: 居ません2019年2月17日 8:30 PM #10479あ、このフックちょっとわかりにくいですよね。。
えと、
snow_monkey_template_part_root
はHelper::get_template_part()
が呼び出すテンプレートパーツの基準ディレクトリを変更します。なので、例えばHelper::get_template_part( 'template-parts/common/copyright' );
としてテンプレートパーツを呼び出した場合、
/PATH/TO/wp-content/themes/snow-monkey/template-parts/common/copyright.php
が呼び出されるわけですが、この/PATH/TO/wp-content/themes/snow-monkey/
の部分を変更できる、ということになります。したがって、先の例だと、my-snow-monkey 内の配置はこうすることになります。
my-snow-monkey ├ my-snow-monkey.php └ templates └ template-parts └ loop └ entry-summary-post.php
♥ 0いいねをした人: 居ません -
投稿者投稿
- このトピックに返信するにはログインが必要です。