Как использовать 2 шаблона для товара в Woocommerce?
Ссылка скопирована
Мне надо чтобы для каждого товара были 2 URL
Например сейчас: /product/windows-11
и я хочу дополнительный url /download/windows-11
и чтобы по такому url использовался другой шаблон
Мне это надо для теста, чтобы был работоспособный старый вариант и новый который будет на тесте
Дополнительно:
А что ты тестировать собрался?
Нужно решить такую задачу?
Заказать помощь
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Лучший ответ
1
Другие ответы (0)
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопроскомментарий
Вам также может быть интересно
VPN
Как правильно настроить vless для Android TV?
0 ответов
Pyrogram
Как правильно зарегистрировать юзер бота в Telegram?
0 ответов
печатные-платы
Как заставить запускаться программу M3.exe от компании Hanxing AOI в инспекционной машине на Windows 7 Pro?
0 ответов
VPN
Почему подключение через VPN работает только на wi-fi, а через кабель нет, где ошибка?
0 ответов

Для двух URL одного товара в WooCommerce не нужно создавать второй товар. Нормальная схема: оставить основной URL
/product/windows-11/, а для тестового вида добавить отдельный rewrite endpoint или rewrite rule, который будет открывать тот же товар, но подключать другой шаблон.Пример идеи через rewrite rule:
add_action('init', function () { add_rewrite_rule( '^download/([^/]+)/?$', 'index.php?post_type=product&name=$matches[1]&download_view=1', 'top' ); }); add_filter('query_vars', function ($vars) { $vars[] = 'download_view'; return $vars; }); add_filter('template_include', function ($template) { if (get_query_var('download_view') && is_singular('product')) { $custom = get_stylesheet_directory() . '/woocommerce/single-product-download.php'; if (file_exists($custom)) { return $custom; } } return $template; });
После добавления правила нужно один раз пересохранить постоянные ссылки в админке. На продакшене лучше не делать это молча кодом на каждом запросе.
Для тестирования нового шаблона ещё проще использовать GET-параметр или закрытую тестовую страницу, например
/product/windows-11/?view=download. Если второй URL должен индексироваться, нужно отдельно продумать canonical, чтобы не получить дубль карточки товара.