-
投稿者投稿
-
2019年7月4日 12:31 PM #20525
トピックを新しく立てる方は次の項目も記述してください(要望トピックの場合は不要です)。
【お使いの Snow Monkey のバージョン】7.2.0
【お使いのブラウザ】chrome
【当該サイトのURL】(公開できる場合は書いていただいたほうがスムーズです)===
お世話になっております。
ヘッダーコンテンツ内にサイト内検索をつけたいのですが可能でしょうか?
検索ボックスを表示させるphpのコードを入れてみたり、
検索フォームの実際のhtmlコードを入れてみたりするのですが表示されません。何か方法がありますでしょうか。
アドバイス頂けますと幸いです。よろしくお願いいたします。
♥ 0いいねをした人: 居ません2019年7月5日 10:10 AM #20665ヘッダーコンテンツには直接 PHP コードは書けず、また、安全性の観点から、WordPress が HTML 出力時に form タグは除去してしまうようです。
そこで、次の方法を考えてみました。
1. 検索フォームを表示するショートコードをつくる
2. ショートコードをヘッダーコンテンツで実行可能にする
3. ヘッダーコンテンツにショートコード [search_form] を入れるこれなら多分表示できるかなsと。下記のコードを My Snow Monkey プラグインか、子テーマの
functions.php
に貼り付けてみてください(My Snow Monkey、子テーマがよくわからない場合はお知らせください)。参考: My Snow Monkey プラグインについて
/** * [search_form] で検索フォームを表示 */ add_shortcode( 'search_form', function() { ob_start(); get_template_part( 'template-parts/common/search-form' ); return ob_get_clean(); } ); /** * ヘッダーコンテンツ内でショートコードを実行可能に */ add_filter( 'snow_monkey_template_part_render', function( $html, $slug ) { if ( 'template-parts/header/content' !== $slug ) { return $html; } return do_shortcode( $html ); }, 10, 2 );
♥ 1いいねをした人: 居ません2019年7月5日 9:02 PM #20775お世話になっております。
アドバイス通り入力してみたところ、無事に表示させることができました!
formタグもダメなのだとはじめて知りました。勉強になりました。丁寧に対応していただきありがとうございました。
今後ともどうぞよろしくお願いいたします。♥ 0いいねをした人: 居ません2019年7月6日 9:11 AM #20799Snow Monkey はセキュリティ対策で、どの出力も「HTML 全部 NG」もしくは「記事で許可されている HTML は OK」のどちらかが適用されています。今回の場合は後者ですね。
解決できてよかったです、トピック閉じます。
♥ 0いいねをした人: 居ません -
投稿者投稿
- トピック「ヘッダーコンテンツにサイト内検索のフォームを設置したい」には新しい返信をつけることはできません。