如果我不写Add_action()也没关系

时间:2011-01-28 作者:haha

我在网上下载了各种主题functions.php 他们写了这样的东西

删除内联注释样式的示例。

function demo_remove_recent_comments_style() {
    add_filter( \'show_recent_comments_widget_style\', \'__return_false\' );
}
add_action( \'widgets_init\', \'demo_remove_recent_comments_style\' );
问题

为什么我们不在没有function()

add_filter( \'show_recent_comments_widget_style\', \'__return_false\' );
让我知道

2 个回复
最合适的回答,由SO网友:Rarst 整理而成

技术上并不总是需要,但出于多种原因,遵循这是一种良好的做法:

通过将钩子相关的内容保持在一起,代码更有条理。运行时的条件越精确,性能越好。可以更轻松地解开钩子函数,执行多个添加,然后分别解开每个添加

我自己使用了几个我自己的函数(还有一些混乱的函数)-add_filter_return()add_action_with_arguments() 使用挂钩时减少包装量。

SO网友:joelhaus

如果没有更多的上下文,很难确切地知道原因,但一般来说,这可能会对站点性能带来微小的改善。

如前所述add_action 函数限制add_filter 函数已激发。仅当widgets_initshow_recent_comments_widget_style 钩同样地show_recent_comments_widget_style 钩子可以在代码中使用,而无需执行add\\u filter函数。

没有function(), 每次show_recent_comments_widget_style 遇到挂钩,无论widgets_init 功能排在第一位。

结束

相关推荐

Adding goodies to themes

如何在主题更新时向Arjuna-X等主题添加内容而不丢失?儿童主题是一种很好的方式,还是有其他选择?如果新版本的主题对我添加的功能具有本机支持,该怎么办?