当我在Revive 4.1.1中为广告系列添加html5横幅并点击“保存更改”时,我会在管理员中找到一个空白页面。 Apache错误日志包含:
PHP致命错误:无法重新声明/ home / applinet / local / ads中的Plugin_BannerTypeHTML_delivery_adRender()(之前在/home/applinet/local/ads/www/lib/OX/Extension/bannerTypeHtml/bannerTypeHtmlDelivery.php:31中声明)第31行的/www/lib/OX/Extension/bannerTypeHtml/bannerTypeHtmlDelivery.php
可能导致这种情况的原因是什么?
我在Debian 9.2 Linux上使用Revive 4.1.1(之前从4.0和OpenX升级)和PHP 7.0和MySQL 5.5。
答案 0 :(得分:0)
我会说你应该找到再次声明函数的位置并将其删除。然而....
对此的肮脏修复是这样的; 找到Plugin_BannerTypeHTML_delivery_adRender()函数的声明位置(在bannerTypeHtmlDelivery.php中的外观)然后添加此代码;
if (!function_exists('Plugin_BannerTypeHTML_delivery_adRender')) {
// the funtion doesnt already exists so declare it here
function Plugin_BannerTypeHTML_delivery_adRender(){
//all the function stuff here.
}
}
澄清....只需将现有函数包装在if块中。
正如我所说,这是一个肮脏的修复。