array_key_exists()期望参数2是给定的数组字符串

时间:2017-01-17 22:47:44

标签: php wordpress

wordpress网站正在给出此错误代替徽标的位置;

  

警告:array_key_exists()要求参数2为数组,字符串在第337行的主题.... \ edgt.functions.php中给出。

以及相关代码

        //is subarray of meta array keys set?
        if(is_array($keys) && count($keys)) {
            $sub_array = array();   

            //for each defined key
            foreach($keys as $key) {
                //check if that key exists in all meta array
                if  (array_key_exists($key, $meta_data)) {
                    //assign key from meta array for current key to meta subarray
                    $sub_array[$key] = $meta_data[$key];
                }
            }

            //we want meta array to be subarray because that is what used whants to get
            $meta_data = $sub_array;
        }

其他信息:使用XAMPP在本地开发网站,并将Hudson主题与wordpress一起使用。

提前致谢

1 个答案:

答案 0 :(得分:0)

您可以联系主题开发人员了解此警告,并要求将其修复。

否则就在这一行之前:

if  (array_key_exists($key, $meta_data)) {

添加以下代码:

if (!is_array($meta_data)) {
   $meta_data = [$meta_data];
}

这将消除警告,但这可能是链条进一步问题的一个迹象,需要更多的信息和时间来调试。

如果您为此主题付费,请务必与开发者联系。