The Words are like Making Love.
趁着腾讯云疫情复工优惠换了个云服务器,一次买了三年。目前还有41G的空间,想要分摊当邻居的留言,腾讯云S2 1核 1GB 1Mbps 广州机房,域名接入要备案,我可提供备案码。环境是 PHP7.2 + MYSQL 5.6,最好是博客或正经的小展示站,以目前的访问量感觉上个三五个WordPress之类的都没啥压力。
之前一直用军哥的LNMP,感觉年纪大了命令行记不住了,突发其想在新服务器上弄了宝塔面板,体验流畅,点啥有啥,真香。
PHP 升到 7.2 后,老主题很多问题都来了,PHP弃用函数、jQuery弃用函数、WordPress弃用函数,轮流报错。
评论上有个报错
警告信息:Warning: count(): Parameter must be an array or an object that implements Countable in /www/wwwroot/****/wp-content/themes/******/comments.php on line ***)
找了一下报错代码位置,发现有以下的代码,一般wordpress的一些老主题里用来计算评论回复数会用到,后台修改主题的评论文件comments.php,找到count函数,代码如下
echo count($comments)-count($trackbacks);
直接给值前面加个代表数组的(array),报错消失了
echo count((array)$comments)-count((array)$trackbacks);
-----------
jQuery中的ereg_replace函数报错
错误信息:Uncaught Error: Call to undefined function ereg_replace()
原因是新版jQuery中ereg_replace弃用改成preg_replace
如
$jquery_click_hook = ereg_replace("[^A-Za-z0-9]", "", strtolower($value['name']));
改
$jquery_click_hook = preg_replace("[^A-Za-z0-9]", "", strtolower($value['name']));
--------------------
Deprecated: 自2.0.0版本起,已不建议给has_cap传入一个参数!用户级别已被废弃,请改用能力。
如果是在评论里,一般是博主认证的代码引起的。
<?php if(user_can($comment->user_id, 1)){
......
}
找到这个代码或类似的代码,将1改为 'manage_options'
<?php if(user_can($comment->user_id, 'manage_options')){
......
}
我也是腾讯云,不过VPS在香港
@美樂地 免备案