1

我在这里阅读了一些内容,但是由于我是新手,我无法自行配置将描述更改为的内容,有人可以帮助我吗?

我收到此错误:

警告:第 37 行 C:\xampp\htdocs\testdb1\wp-content\themes\prospect\functions\meta-box.php 中的非法字符串偏移 'seodescription'

第 37 行如下所示:

echo htmlspecialchars( $data[ $meta_box[ 'name' ] ] );

[] 是对我不利吗?如果是,我该如何更改它们并保留 $meta_box 定义?

4

2 回答 2

0

在下面的行中:

$data[ $meta_box[ 'name' ] ]

看起来$datakey 没有值$meta_box['name']。确保您拥有正确的密钥,并确保$data已定义且可访问。

将上面的行替换为下面的行。

$data[$meta_box['seodescription']['name']];

当你 print_r($data) 时你会得到什么?在第 37 行之前添加此打印语句。粘贴您的输出。

于 2012-10-26T07:11:25.980 回答
0

当脚本到达第 37 行时,$data 不是一个数组(但显然​​是一个字符串)。
要测试它,请尝试类似

if ( !is_array($data) ) {
    echo '$data is not an array.';
    var_dump($data);
    die;
}
else if ( !isset($data[ $meta_box[ 'name' ] ]) ) {
    echo '$data doesn\'t have a key ', $meta_box[ 'name' ];
    die;
}
else {
    echo htmlspecialchars( $data[ $meta_box[ 'name' ] ] );
}
于 2012-10-26T07:30:47.887 回答