defined('SITE_DOMAIN') ? SITE_DOMAIN : null, ]; return $context; }); // Отключаем канонические ссылки и hreflang от Yoast SEO add_filter('wpseo_canonical', '__return_false'); add_filter('wpseo_opengraph_url', '__return_false'); // Отключаем OG URL add_filter('wpseo_add_x_default_hreflang', '__return_false'); // Отключаем hreflang от Yoast add_filter('wpseo_disable_adjacent_rel_links', '__return_true'); // Отключаем соседние rel-ссылки // Добавляем каноническую ссылку add_action('wp_head', 'custom_canonical_url', 5); function custom_canonical_url() { if (!is_admin()) { // Защищаем от дублирования static $canonical_added = false; if ($canonical_added) { return; } $canonical_added = true; // Формируем текущий URL без лишних параметров $current_url = trailingslashit(home_url($_SERVER['REQUEST_URI'])); // Удаляем возможные параметры запроса, если они не нужны $current_url = strtok($current_url, '?'); echo '' . "\n"; } } add_action('wp_head', 'add_facebook_pixel'); function add_facebook_pixel() { ?> get_status() !== 'processing' && $order->get_status() !== 'completed') return; // Отправляем только для оплаченных заказов $items = []; foreach ($order->get_items() as $item) { $product = $item->get_product(); $items[] = [ 'id' => $product->get_id(), 'name' => $product->get_name(), 'price' => $product->get_price(), 'quantity' => $item->get_quantity() ]; } // Получаем валюту заказа $currency = $order->get_currency(); ?> 'Неверный ID товара')); wp_die(); } $passed_validation = apply_filters('woocommerce_add_to_cart_validation', true, $product_id, $quantity); if ($passed_validation) { $added = WC()->cart->add_to_cart($product_id, $quantity); if ($added) { error_log('Product added to cart: ' . $product_id); // Отладка // Подготавливаем фрагменты корзины ob_start(); woocommerce_mini_cart(); $mini_cart = ob_get_clean(); // Фрагменты для стандартной корзины и кастомного счетчика $fragments = array( 'div.widget_shopping_cart_content' => '
', '.mini-profile__button--counter' => ' ' ); wp_send_json_success(array( 'message' => 'Товар успешно добавлен в корзину', 'fragments' => apply_filters('woocommerce_add_to_cart_fragments', $fragments), 'cart_hash' => apply_filters('woocommerce_add_to_cart_hash', WC()->cart->get_cart_hash(), array()) )); } else { error_log('Failed to add product to cart: ' . $product_id); // Отладка wp_send_json_error(array('message' => 'Не удалось добавить товар в корзину')); } } else { error_log('Validation failed for product: ' . $product_id); // Отладка wp_send_json_error(array('message' => 'Ошибка валидации товара')); } wp_die(); }