检查查询监视器,它抛出这个错误,
array\\u key\\u exists():第一个参数应为字符串或整数
与此功能相关:
public function lsx_team_scporder_get_terms_orderby( $orderby, $args ) {
if ( is_admin() )
return $orderby;
$tags = $this->get_lsx_team_scporder_options_tags();
if ( ! isset( $args[\'taxonomy\'] ) )
return $orderby;
$taxonomy = $args[\'taxonomy\'];
if ( is_array( $taxonomy ) && count( $taxonomy ) == 1 )
$taxonomy = $taxonomy[0];
if ( ! array_key_exists($taxonomy, $tags ) )
return $orderby;
$orderby = \'t.lsx_team_term_order\';
return $orderby;
}
为什么要抛出那个错误?
最合适的回答,由SO网友:Cubakos 整理而成
从php manual 这个array_key_exists()
函数将“数组索引可能的任何值”作为第一个参数,再次查找arrays 在文档中,我们可以得到“键可以是整数或字符串。值可以是任何类型。”,这也对应于您在查询监视器中看到的错误。
意味着$taxonomy
传递给array_key_exists()
不是字符串或整数。
您可以调试$taxonomy
变量,通过var_dump($taxonomy);
.
希望,这会有所帮助。