Error: How to fix import demo for wordpress theme
Error: How to fix import demo for wordpress theme
当我在 wordpress 主题中导入演示时,我得到了以下内容
"Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in E:\xampp\htdocs\wordpress\wp-content\themes\random\framework\includes\wpalchemy\MetaBox.php on line 545" 错误。
当行的快捷方式转到
"// 尝试修复损坏的序列化数据,特别是 "\r\n" 在 wordpress XML 导出期间被转换为 "\n" (WXR)
// "maybe_unserialize()" 修复了一个 wordpress 错误,该错误在 export/import 期间双重序列化已经序列化的数据 $value = maybe_unserialize( preg_replace( '!s:(\d+):"(. *?)";!es', "'s:'.strlen('$2').':\"$2\";'", stripslashes( $meta['value'] ) ) );
update_post_meta( $post_id, $key, $value );"
已经写好了。
在这种情况下如何纠正。如果保留错误没有问题,它不会做任何事情,因为它是主题。这是我的第一条消息,所以我会永远记住回答的人。谢谢你。最好的问候
这是因为 PHP 已弃用的函数用法。
maybe_unserialize( preg_replace( '!s:(\d+):"(.*?)";!es', "'s:'.strlen('').':\"\";'", stripslashes( $meta['value'] ) ) )
替换为以下代码:
preg_replace_callback( '!s:(\d+):"(.*?)";!s', array( $this, 'fix_serialized_string_type_callback' ), stripslashes( $meta['value'] ) );
并在同一文件中添加以下功能 (wp-content\themes\random\framework\includes\wpalchemy\MetaBox.php),
protected function fix_serialized_string_type_callback( $matches ) {
return sprintf( 's:%s:"%s";', strlen( $matches[2] ), $matches[2] );
}
如果这不起作用,请升级您的框架。我认为框架作者解决了这个问题
https://github.com/farinspace/wpalchemy/blob/master/wp-content/wpalchemy/MetaBox.php
当我在 wordpress 主题中导入演示时,我得到了以下内容
"Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in E:\xampp\htdocs\wordpress\wp-content\themes\random\framework\includes\wpalchemy\MetaBox.php on line 545" 错误。
当行的快捷方式转到
"// 尝试修复损坏的序列化数据,特别是 "\r\n" 在 wordpress XML 导出期间被转换为 "\n" (WXR) // "maybe_unserialize()" 修复了一个 wordpress 错误,该错误在 export/import 期间双重序列化已经序列化的数据 $value = maybe_unserialize( preg_replace( '!s:(\d+):"(. *?)";!es', "'s:'.strlen('$2').':\"$2\";'", stripslashes( $meta['value'] ) ) );
update_post_meta( $post_id, $key, $value );"
已经写好了。
在这种情况下如何纠正。如果保留错误没有问题,它不会做任何事情,因为它是主题。这是我的第一条消息,所以我会永远记住回答的人。谢谢你。最好的问候
这是因为 PHP 已弃用的函数用法。
maybe_unserialize( preg_replace( '!s:(\d+):"(.*?)";!es', "'s:'.strlen('').':\"\";'", stripslashes( $meta['value'] ) ) )
替换为以下代码:
preg_replace_callback( '!s:(\d+):"(.*?)";!s', array( $this, 'fix_serialized_string_type_callback' ), stripslashes( $meta['value'] ) );
并在同一文件中添加以下功能 (wp-content\themes\random\framework\includes\wpalchemy\MetaBox.php),
protected function fix_serialized_string_type_callback( $matches ) {
return sprintf( 's:%s:"%s";', strlen( $matches[2] ), $matches[2] );
}
如果这不起作用,请升级您的框架。我认为框架作者解决了这个问题
https://github.com/farinspace/wpalchemy/blob/master/wp-content/wpalchemy/MetaBox.php