我试图在使用此代码的posts容器之前添加一些内容
add_action( \'wp\', \'mainFunc\' );
function mainFunc( $query ) {
if ( is_home() && $query->is_main_query()) {
add_action("loop_start","anotherFunc");
}
}
我还有另一个func()。
但我明白
致命错误:调用C:\\xampp\\htdocs\\WP\\WP content\\plugins\\topMessage\\topMessage中未定义的方法WP::is\\u main\\u query()。php在线40
有什么想法吗?
最合适的回答,由SO网友:Nicolai Grossherr 整理而成
错误的钩子,因为传递给wp
是
当前WordPress环境实例
不
WP\\U查询实例
例如,将其传递给loop_start
.
实际上,您可以在挂接到的函数回调中进行检查loop_start
.
编辑/注释:
你本可以这么做的global $wp_query;
内部wp
胡克,这实际上是第一个$wp_query
是有可能的,但我不建议这样做。一个更好的地方——或者至少是我可能会去的地方——是pre_get_posts
操作,但会通过$query
- 这个WP_Query
对象-通过引用。