当前未修改的输出如下所示→
<div id="archives-4" class="widget widget_archive">
<h2 class="h2b">Archives</h2>
<ul>
<li><a href="http://........./2017/11/">November 2017</a> (3)</li>
<li><a href="http://........./2017/10/">October 2017</a> (9)</li>
<li><a href="http://........./2017/09/">September 2017</a> (6)</li>
<li><a href="http://........./2017/05/">May 2017</a> (7)</li>
<li><a href="http://........./2017/04/">April 2017</a> (1)</li>
<li><a href="http://........./2017/03/">March 2017</a> (5)</li>
<li><a href="http://........./2017/02/">February 2017</a> (8)</li>
<li><a href="http://........./2017/01/">January 2017</a> (1)</li>
</ul>
</div>
但我最终还是要这样→
<div id="archives-4" class="widget widget_archive newinjected_class1">
<h2 class="h2b">Archives</h2>
<ul class="newinjected_class2">
<li><a href="http://........./2017/11/">November 2017</a> (3)</li>
<li><a href="http://........./2017/10/">October 2017</a> (9)</li>
<li><a href="http://........./2017/09/">September 2017</a> (6)</li>
<li><a href="http://........./2017/05/">May 2017</a> (7)</li>
<li><a href="http://........./2017/04/">April 2017</a> (1)</li>
<li><a href="http://........./2017/03/">March 2017</a> (5)</li>
<li><a href="http://........./2017/02/">February 2017</a> (8)</li>
<li><a href="http://........./2017/01/">January 2017</a> (1)</li>
</ul>
</div>
您是否了解新的两个课程:
newinjected_class1
newinjected_class2
我们是否可以通过一些过滤器来实现这一点,以便只修改输出而不改变小部件的正常行为?
SO网友:Mat
不,没有用于执行此操作的筛选器。为了实现这一点,您需要创建自己版本的小部件。
您可以在以下文件夹中找到默认WordPress小部件:/wp-includes/widgets
在WordPress安装中。
只需从相应的小部件中复制代码。主题或插件中的php文件:
class-wp-widget-archives.php
和
class-wp-widget-categories.php
然后根据您的喜好编辑小部件代码。
最后,您需要使用register_widget()
功能符合WordPress Codex页面-https://codex.wordpress.org/Function_Reference/register_widget. 应该是这样的:
function myplugin_register_widgets() {
register_widget( \'CustomArchiveWidget\' );
register_widget( \'CustomCategoriesWidget\' );
}
add_action( \'widgets_init\', \'myplugin_register_widgets\' );