我目前正在从O’Reilly用Wordpress构建Web应用程序中学习,该书解释说在WordPress初始化和wp操作触发后加载页面模板。我知道在调用get_header之前不会调用wp_head动作。
您如何处理和重定向收集联系人姓名,电子邮件和消息的通用联系表单?还是那不是正确的思维方式?
1回答
这里列出了我已记录的动作列表,这些动作在尝试弄清楚WordPress的功能时对我有帮助。这是我完整列表的一小段,但是应该与您要执行的操作相同:
主题 functions.php 已加载
- after_setup_theme
- init
- wp_loaded
定义的wp query vars
- get_search_query (filter)
- pre_handle_404 (filter)
- wp
- template_redirect
- template_include
- get_header
页眉已发送
开始html, 开始head
- wp_head
- wp_enqueue_scripts
- wp_print_styles
- wp_print_scripts
结束head
您可以依靠的最后一个动作是get_header
在发送标头之前。如您所见,wp_head
发送标头后会发生火灾,因此这对您没有用。
在像您这样的情况下,我通常要等到至少定义了WP Query var,因为很多时候我需要知道该信息然后再决定要做什么。我无法评论您的具体情况,因此您可能不在乎。但在之前执行任何操作get_header
应该没问题。
您的钩子应该足够晚,以允许WordPress处理您可能需要的任何信息。如果您只关心$ _POST数据,什么都不关心,那么继续进行init
操作。如果您希望获得WordPress处理的大量信息,请进入wp
,等等。