wordpress升级出错:preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in wp-includes/class-wp.php on line 222

98次阅读
没有评论

共计 1528 个字符,预计需要花费 4 分钟才能阅读完成。

今天,丸趣 TV(wanqutv.com) 小编收到某新手站长的帮助求求,说升级出现了错误。网站文章管理页和其它页面后台都打不开了,感觉升级后果很严重,怕网站因此而打不开了。其实,这完全不用担心,这个升级错误其实很多做的比较大的博主也有发生过。

WordPress 升级出错:preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in wp-includes/class-wp.php on line 222

中文意思是: 警告:preg_match():编译失败:量词在第 222 行的 wp-includes / class-wp.php 中的偏移量 1 处未跟随可重复项

下面,我们来仔细看一下解决方案:

具有页面类型帖子,订单类型帖子或帖子的任何页面都会显示此错误。这仅在托管环境中可见。我无法在本地复制错误。

我们可以按此顺序执行以下操作:

1、停用所有插件

2、转到设置 -> 永久链接并重新保存 %postname% 选项

3、验证错误仍然存​​在,没有插件和固定链接重置。

4、更新了所有插件和主题。

5、验证错误仍然存​​在。

6、在本地执行相同的步骤,但无法复制此问题。

注意: 有时候很可能就是插件问题导致的(后台容易出现),当然也可能是主题(前端容易出现),小编帮助这个新手站长停用所有插件,刷新错误页面,没有正常。然后,又重新启动了所有插件,再刷新错误页面,恢复正常了。还有,如果真的是插件问题,可以慢慢挨个停用插件,直接停用哪个插件后,恢复正常,那可能就是插件兼容性问题或其它相关问题!

来自 class-wp.php:

foreach ((array) $rewrite as $match => $query ) {

// If the requested file is the anchor of the match, prepend it to the path info.

if (! empty( $requested_file) && strpos($match, $requested_file) === 0 && $requested_file != $requested_path ) {

$request_match = $requested_file . ‘/’ . $requested_path;

}

if (preg_match( “#^$match#”, $request_match, $matches) ||

preg_match(“#^$match#”, urldecode( $request_match), $matches ) ) {

if ($wp_rewrite->use_verbose_page_rules && preg_match( ‘/pagename=\$matches\[([0-9]+)\]/’, $query, $varmatch ) ) {

// This is a verbose page match, let’s check to be sure about it.

$page = get_page_by_path($matches[ $varmatch[1] ] );

if (! $page) {

continue;

}

$post_status_obj = get_post_status_object($page->post_status);

if (! $post_status_obj->public && ! $post_status_obj->protected

&& ! $post_status_obj->private && $post_status_obj->exclude_from_search ) {

continue;

}

}

// Got a match.

$this->matched_rule = $match;

break;

}

}

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-06-15发表,共计1528字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)