将内容添加到小工具内管理区域中的小工具标题?

时间:2017-12-02 作者:Runnick

是否可以根据小部件的其他值向管理区域和自定义程序中的小部件标题添加内容(图标和文本)?

小部件是由我定制和开发的(不是WP默认的)

理想情况下,它应该在管理领域和;自定义程序。在前端,现在会显示额外的内容。

<小时>

enter image description here


然后用户更改小部件中的选项,并在保存标题时更改为

enter image description here


我通过JS和.on(\'widget-updated widget-added\') 事件,但正在寻找更健壮的方法,因为它在customizer中不起作用。

2 个回复
SO网友:Moshe Harush

您可以为添加筛选器widget_title

或更改$instance[\'title\'] 更新时。

SO网友:Misha Rudrastyh

让我描述一下每一种情况。

The widgets

<如果你想更改上面截图上的“搜索”,我会让你失望,你可以查看/wp admin/includes/widgets。php(第232行)和任何widget类(我打开了/wp-includes/widgets/class-wp-widget-search.php),您会发现它没有过滤器挂钩。它只能在自定义小部件中更改在我的自定义小部件上,我在小部件类代码的这一部分对其进行了更改:

    function __construct() {
         parent::__construct(
            \'misha_widget\', 
            \'Widget title\', // here it is
            array( \'description\' => \'Widget description\' )
        );
    }
如果您想在管理区域的小部件上更改“我的搜索”,JavaScript是一种很好的方法,因为WordPress也可以使用JS。widget\\u标题挂钩将仅应用于网站外观,不适用于管理区域或自定义程序:

add_filter(\'widget_title\', \'misha_change_title1\', 10, 3 );
function misha_change_title1( $title, $instance, $id ){
    if( $id == \'search\' ) {
        return \'\'. $title;
    }
    return $title;
}
关于customizer,您可以在这里找到如何运行自定义JS代码的说明https://codex.wordpress.org/Theme_Customization_API#Step_2:_Create_a_JavaScript_File

结束

相关推荐

Using add_filter() in Widgets

只需查询引用add_filter() 作用您可以在WordPress小部件类中使用此函数吗。Example我有一个带有动态创建代码的小部件,我想将其传递给插件中创建的另一个函数。这能实现吗?<?php /** * Display the actual Widget * * @param Array $args * @param Array $instance */ public function widget($args, $inst