カスタマイザJS APIを使用してページのリスト(type: dropdown-pages
)を追加するための適切な方法は何ですか?
現在、私はこのコードを持っていますが、それはコントロールを表示しません:
api.control.add( new api.Control( 'custom-control', {
type: 'dropdown-pages',
section: 'custom-section',
setting: new wp.customize.Setting( 'custom-control', '0' ),
label: 'Select Page'
} ) );
たとえば、型をtext
に変更すると、コントロールがセクションに表示されます。
あなたは正しい、それはうまくいきません…まだ。このコントロールでREST APIを利用してページを取得したいため、 #30738 にdropdown-pages
コントロールのサポートを追加しませんでした。そのため、4.9ではこれがサーバー側でのコアレンダリングを必要とする唯一の基本コントロールです。しかし、4.9では、dropdown-pages
コントロール用のコンテンツテンプレートの独自の実装を簡単に提供できます。
私はdropdown-pages
コントロールタイプ用の コントロールテンプレート を含む スタンドアロンサンプルプラグイン を書きました。そのテンプレートを含めると、ここで行っているのと同じ方法でコントロールを作成できます。今後のコア実装については #42272 に従ってください。
あるいは、Select = 2を使用して1つまたは複数のページを選択するための検索可能なインターフェースを提供するコントロールを提供するため、 Object Selectorのカスタマイズ プラグインを検討することもできます。 投稿のカスタマイズ プラグインの 使い方例 をご覧ください。