既定の検索ブロックフォームテンプレートをカスタマイズする方法を教えてください。以下のテンプレートを使用して検索フォームブロックを表示しますが、このコードでは、このフォームの各部分を個別に編集およびカスタマイズできず、柔軟性がありません。
form--search-block-form.html.twig
<form{{ attributes.addClass('search-form', 'search-block-form') }}>
{{ children }}
</form>
そして、以下のコードで私のテーマに印刷します:
{{ page.search_box }}
より多くの変数とカスタマイズの柔軟性を備えたより良いテンプレート名の提案はありますか?
検索ブロックは、コアモジュールSearchによって提供されます。このモジュールをインストールすると、ブロックを配置したときに、ブロックレイアウトでブロックが使用可能になります。
おそらく、標準プロファイルをインストールすることで、すでにこれを実行しているでしょう。
検索フォームをカスタマイズするには、フォーム変更フックを使用できます。
たとえば、この関数をmytheme.theme
検索ボタンを変更するには:
function mytheme_form_alter(&$form, $form_state) {
if ( $form['#form_id'] == 'search_block_form' ) {
$form['actions']['submit']['#value'] = t('Search my Website');
}
}