这仅仅是一个关于性能和通用(WordPress)PHP开发方面什么更好的问题。
我在一个自定义PHP函数中从WordPress网站取消注册和退出fewe脚本(和样式),我add_action
就像这样add_action( \'wp_print_scripts\', \'my_custom_method\', PHP_INT_MAX );
在我的my_custom_method
我收集了一些插件选项、全局帖子和更多数据,然后运行wp_dequeue_script
和wp_deregister_script
迭代我设置要删除的每个脚本(插件选项),样式也是如此。
这适用于我到目前为止想要删除的所有脚本和样式。然而,有one 脚本已添加到get_footer
(通过第三方插件),因此wp_print_scripts
此项未删除。当我将我的方法(显然)挂接到get_footer
, 但在这种情况下,不会删除样式。
所以我把我的方法和wp_print_scripts
和get_footer
, 这很有效。
我的问题是add_action()
同样的方法两次(一次wp_print_scripts
一次到get_footer
), 或者,如果我减少get_footer
只是wp_deregister_script
这个one 脚本已添加到get_footer
?
SO网友:mozboz
因此有4个因素:
性能(速度、资源使用)便利性代码可维护性学习您正在使用的API如果您不知道函数的性能,那么就不可能回答您的问题,但我想如果它不执行或导致任何数据库查询,也不执行对大量数据的操作,那么它可能很快。
看起来你所做的很方便——你把代码放在一个地方,然后从需要的几个地方调用它。
尽管它是从两个地方调用的,因为代码在一个地方,非常容易维护。如果您想在将来更改它的功能,那么您没有两个位置,并且需要确定将更改放在哪里,您只需更改这一个函数,您就知道会发生效果。
您可以用不同的方式来实现这一点,但听起来您是在说,这将需要更多的时间来学习您正在使用的界面(即WP脚本排队顺序),这可能对您没有好处。
所以,总的来说,如果它是一个快速功能,那么没有理由不这样做,而且由于可维护性,它的设计也不错。