У меня есть настоящая щекотка для мозга, с которой я боролся пару дней.
Я создаю веб-сайт WordPress для кого-то (по адресу http://www.lydiala.com/) и с помощью Простого плагина корзины покупок Paypal для WordPress.
Я хочу отображать общее количество товаров в корзине в правом верхнем углу моего файла header.php.
Я придумал функцию, которая успешно возвращает эту цифру, и добавил ее в основной PHP-файл плагина по адресу /wp-content/plugins/wordpress-simple-paypal-shopping-cart/wp_shopping_cart.php
(наряду со всеми другими функциями).
Я взял следующую СУЩЕСТВУЮЩУЮ функцию в wp_shopping_cart.php:
function simple_cart_total() {
$grand_total = 0;
foreach ((array)$_SESSION['simpleCart'] as $item){
$total += $item['price'] * $item['quantity'];
$item_total_shipping += $item['shipping'] * $item['quantity'];
}
$grand_total = $total + $item_total_shipping;
return number_format($grand_total,2);
}
Затем я скопировал его, переименовал и изменил следующим образом:
function total_items() {
$grand_total = 0;
foreach ((array)$_SESSION['simpleCart'] as $item){
$total += $item['quantity'];
}
$grand_total = $total;
return number_format($grand_total);
}
Теперь в моем header.php у меня есть:
echo total_items();
Который отлично работает!
НО, когда плагин будет обновляться в будущем, эта недавно добавленная функция будет потеряна, когда wp_shopping_cart.php будет перезаписан новой версией.
Есть ли способ добавить мою пользовательскую функцию в этот внешний файл .php
? Я уже испробовал несколько методов, но большинство из них не работают, потому что они пытаются загрузить wp_shopping_cart.php, который уже загружен ("Не удается повторно объявить" и т. д.).
В худшем случае я всегда могу попросить клиента позвонить мне, когда будут доступны обновления этого плагина.