nishiki_blocks_pro_posts_yyy_article_zzz の表示箇所について。

表題の件ですが、 nishiki_blocks_pro_posts_before_article_image nishiki_blocks_pro_posts_after_article_image nishiki_blocks_pro_posts_before_article_header nishiki_blocks_pro_posts_after_article_header こちらのすべての表示箇所がすべて同じところになります。(想定外の場所) posts/block.php を見てみても、どうしてここに表示されるのか…という感じで… 画像を添付しましたのでご確認お願いいたします。
No description
No description
3 Replies
imamura
imamura9mo ago
もしかして echo で出力させてないですかね。 投稿一覧ブロックの出力は一旦変数に格納する処理になっているので、nishiki_blocks_pro_posts_xxxx_article_xxx フィルターは return で値を返す必要があります。
TKHR a.k.a たったか
なるほどです!echoで出力していました。return で書き換えたところ、意図した場所に表示されました!ありがとうございます。…これが「フィルター」ってことなんですね。
imamura
imamura9mo ago
前にちょっとだけ話したかもですが、apply_filters はデフォルト値をフックで変更したい(上書きしたい)時に使う関数って認識でいいかなと思います。 下のコードのケースだと、デフォルトは空「''」の出力で、フィルターを使って何かのコンテンツを返したりできる、みたいなイメージです。
$output .= apply_filters( 'nishiki_blocks_pro_posts_before_article_header', '' );
$output .= apply_filters( 'nishiki_blocks_pro_posts_before_article_header', '' );
https://developer.wordpress.org/reference/functions/apply_filters/
Andrew Nacin
WordPress Developer Resources
apply_filters() – Function | Developer.WordPress.org
Calls the callback functions that have been added to a filter hook.

Did you find this page helpful?