ウィジェットからの他の値に基づいて、管理領域とカスタマイザ内のウィジェットのタイトルにコンテンツ(アイコンとテキスト)を追加することは可能ですか?
ウィジェットはカスタムで私が開発したものです(WPデフォルトのものではありません)。
理想的には、管理エリアとカスタマイザでボットが動作するはずです。フロントエンドで追加のコンテンツが表示されるようになりました。
その後、ユーザーはウィジェットのオプションを変更し、保存タイトルが変わると
私はこれをJSと.on('widget-updated widget-added')
イベントで実現することに成功しましたが、カスタマイザではうまくいかないのでもっと堅牢なアプローチを探しています。
widget_title
フック用のフィルタを追加することができます。
または更新時に$instance['title']
を変更してください。
私の理解によれば、私はあなたがおそらく素晴らしいフォントのようなものを使うことができることをあなたに提案することができます。これは、単純なCSSクラスを使用して画像のようなものを表示するのに役立ちます。
それであなたは私の解決策をチェックし、それについてのあなたの見解を私に知らせてください。
すべての状況を説明しましょう。
私のカスタムウィジェットでは、ウィジェットクラスコードのこの部分でそれを変更します。
function __construct() {
parent::__construct(
'misha_widget',
'Widget title', // here it is
array( 'description' => 'Widget description' )
);
}
あなたが管理領域のウィジェットの "私の検索"を変更したいのであれば、WordPressもJSでそれをするのでJavaScriptはそれをするための十分な方法です。 widget_titleフックは、管理領域やカスタマイザではなく、Webサイトの外観にのみ適用されます。
add_filter('widget_title', 'misha_change_title1', 10, 3 );
function misha_change_title1( $title, $instance, $id ){
if( $id == 'search' ) {
return '????'. $title;
}
return $title;
}
カスタマイザについてはどうですか、ここでカスタムJSコードを実行する方法の指示を見つけることができます https://codex.wordpress.org/Theme_Customization_API#Step_2:_Create_a_JavaScript_File