デフォルトのウィジェットのコードからモデル化された、いくつかのカスタムウィジェットを作成しました。ウィジェットはすべてうまく機能し、私はしばらくの間プロダクションでそれらを使用してきました。
私は新しいカスタマイザAPIを使用して作業していましたが、「shift-click to edit」機能を発見しました。しかし、私のカスタムウィジェットはどれもこの機能で正しく動作しません。
クリックされたウィジェットがパネルに正しくフォーカスされるようにするには、ウィジェットパネルを開いておく必要があるという現在の制限を認識しています。デフォルトのウィジェットは正常に機能しています。
私は、これがどうやって機能するのかを試してみるために、ソースを調べていましたが、幸運でした。
ウィジェットを登録するときに何がこの動作を制御しますか?
私のカスタムウィジェットでは、スタイル設定にIDを使用していなかったので、 'before_widget'マークアップにIDを追加することを省略しました。これが、Customizer JSがウィジェットをターゲットにするために使用していることであることがわかりました。 (当たり前)
そのため、ウィジェットの出力に正しいIDを含めると、すべてが正常に機能します。