我的网站有一个结帐,在提交测试购买后会在白页上一起发出以下警告。
警告:在第1460行的wordpress.php中从空值创建默认对象
警告:无法修改标题信息 - 已经发送的标题(输出从第1842行的wordpress.php开始
第1460行引用以下内容:$totals->quantity = $total_qty;
这是代码的一部分:
if (!function_exists('yak_get_totals')) {
/**
* Return an array containing the total quantity and total price of an array of items.
*/
function yak_get_totals(&$items) {
$total_qty = 0;
$total_price = 0;
foreach ($items as $key=>$item) {
if (!isset($item->price)) {
$item->price = yak_calc_price($item->id, $item->cat_id, $item->price);
}
$total_qty += $item->quantity;
$total_price += ($item->price * $item->quantity);
}
$totals->quantity = $total_qty;
$totals->price = $total_price;
return $totals;
}
}
这段代码是我在WordPress上使用多年的插件的一部分。该插件的开发人员已停止使用它,所以现在更改服务器我正在尝试更新代码以在PHP7中工作。
在后端,插件正常工作。它发出一封电子邮件,表明已进行销售,并且购买显示在订单区域等。但是,客户没有进入订单确认页面而是获得此页面。
答案 0 :(得分:0)
我找到了这个问题的答案。行{14} $totals->quantity = $total_qty;
$ totals需要声明如下:$totals = new StdClass;
一旦完成,两个错误再也不会发生。
希望将来可以帮助其他人!
谢谢!