今天在更新wordpress主题的时候,一段代码出现warning: illegal string offset的这样的错误提示,代码如下
[php]$meta_data = get_post_meta(get_the_id(), 'extend_info', true);
$post_abstract = $meta_data['post_abstract'];
if(!empty($post_abstract)){
echo $post_abstract;
}else{
echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 160,"……");
}[/php]
报错的原因是$meta_data数组里面有空数组,空数组里没有post_abstract这个字段。最终解决办法是:
只需要把第二行代码修改成:
[php]$post_abstract = isset($meta_data['post_abstract']) ?$meta_data['post_abstract'] : '';[/php]