Я хочу перенаправить пользователя на домашнюю страницу, если корзина пуста, возможно ли это сделать из панели администратора, если да, пожалуйста, помогите, иначе мне придется перенаправить через перегрузку контроллера.
Перенаправление на главную страницу, если корзина пуста
Ответы (2)
Я не думаю, что вы можете сделать это от администратора, но вы можете попробовать
В
app/design/frontend/default/your-theme/template/checkout/cart/noItems.phtml
добавить (это может быть не лучшее решение, но работает)<?php Mage::app()->getResponse()->setRedirect($this->getContinueShoppingUrl()); ?>
Создайте наблюдателя (попробуйте
controller_action_predispatch_checkout_cart_delete
), который проверяет, пуста ли ваша корзина, а затем перенаправляет на домашнюю страницу (для перенаправления от наблюдателя см.)Использование javascript и таймера, чтобы пользователь видел, что корзина пуста перед перенаправлением на домашнюю страницу (см. перенаправление с задержкой по времени?) Добавьте приведенный ниже код в
noItems.phtml
см. решение №1.<script> setTimeout(function () { window.location.href = "<?php echo $this->getContinueShoppingUrl() ?>"; //will redirect to your blog page (an ex: blog.html) }, 2000); //will call the function after 2 secs. </script>
Добавьте это в свой functions.php
function cart_empty_redirect_to_shop() {
global $woocommerce;
if ( is_page('cart') and !sizeof($woocommerce->cart->cart_contents) ) {
wp_redirect( get_permalink( wc_get_page_id( 'shop' ) ) ); exit;
}
}
add_action( 'wp_head', 'cart_empty_redirect_to_shop' );
Приведенное выше перенаправит пустую корзину на страницу магазина.