在Wordpress中加载模板之前运行PHP代码

时间:2018-09-02 16:00:34

标签: wordpress model-view-controller

由于我最近才刚开始使用Wordpress,因此我仍在设法为加载特定文章的模板之前运行PHP代码。

我说的是将在MVC结构的contoller类中执行的代码。

很显然,将其填充到页面的模板文件中是很诱人的,但是我敢肯定,这完全没有资格作为最佳实践。 关于这个问题有什么建议吗?非常感谢。

1 个答案:

答案 0 :(得分:1)

WordPress前部的动作(执行列表)

muplugins_loaded
registered_taxonomy
registered_post_type
plugins_loaded
sanitize_comment_cookies
setup_theme
load_textdomain
after_setup_theme
auth_cookie_malformed
auth_cookie_valid
set_current_user
init
widgets_init
register_sidebar
wp_register_sidebar_widget
wp_default_scripts
wp_default_styles
admin_bar_init
add_admin_bar_menus
wp_loaded
parse_request
send_headers
parse_query
pre_get_posts
posts_clauses
posts_selection
wp
template_redirect
get_header
wp_head
wp_enqueue_scripts
wp_print_styles
wp_print_scripts
get_search_form
loop_start
the_post
get_template_part_content
loop_end
get_sidebar
dynamic_sidebar
get_search_form
pre_get_comments
wp_meta
get_footer
get_sidebar
wp_footer
wp_print_footer_scripts
admin_bar_menu
wp_before_admin_bar_render
wp_after_admin_
bar_render
shutdown

因此,如果您需要一些魔术而不需要所有核心功能,则可以将代码放入自己的mu插件中,并且它将在start(muplugins_loaded action)上执行。 有关基本功能和主题功能-wp_loaded等,请参见上面的列表。

通常,使用init操作(因为WordPress已完全加载,但没有标题和其他内容),例如:

add_action( 'init', 'my_func' );
function my_func() {
    // Write some code here...
}