• Никакой политики на форуме. Иначе - бан!
  • Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!
  • Темы озаглавленные с маленькой буквы или капсом удаляются без предупреждения!

Решено Где лежит шаблон "shop" и как сделать 2 разные страницы

Gnumster

Новичок
Здравствуйте! Использую плагин Polylang, соответственно нужно две страницы магазина, на одной выводить товары на русском, на другой - на английском. С блогом была та же ситуация, с ней быстро справился копированием файла и кода и применением этого второго шаблона в качестве основного для страницы на английском, а вот с woocommerce не могу уже пол дня разобраться.
Как это всё реализовать? Думаю всё просто, в сети таких вопросов не нашёл.

P.S.: сразу скажу, что обычные средства visual composer не помогают - тема премиум и на основной странице магазина всё смотрится в разы лучше, чем через обычную вставку товаров по категориям, также не работает виджет по ценам и тд и тп. Но думаю это уже всё к теме не относится, написал на всякий...

Заранее спасибо, если кто поможет.
 

Gnumster

Новичок
Разобрался, неведомым образом контент магазина стал выводиться на английском варианте, НО!
Не переводится заголовок страницы, изначально он называется Магазин, в английском варианте выводится также - Магазин. Получается это потому, что в моём случае woocommerce не генерирует второй шаблон для магазина, а использует один-единственный.
Как я понимаю, можно заголовок английского магазина исправить через archive-product, через функцию if, но я в этом слабо шарю, может кто строчку кода черканёт)
По идее должно быть что-то вроде:
<?php if ( lang="en-US", true); ?>
<h1 class="page-title">Shop</h1>
 
Последнее редактирование:

Gnumster

Новичок
Покурил функции, всё оказалось очень просто. Может будет ещё какой-то новичок вроде меня, оставлю здесь решение:
1) добавил в functions.php строку pll_register_string('shop1', 'shop2');
2) перевёл в polylang обе строки
3) изменил код на <h1 class="page-title"><?php pll_e('shop2'); ?></h1>
 
  • Like
Реакции: D&B

ls3run

Новичок
Разобрался, неведомым образом контент магазина стал выводиться на английском варианте, НО!
Не переводится заголовок страницы, изначально он называется Магазин, в английском варианте выводится также - Магазин. Получается это потому, что в моём случае woocommerce не генерирует второй шаблон для магазина, а использует один-единственный.
Как я понимаю, можно заголовок английского магазина исправить через archive-product, через функцию if, но я в этом слабо шарю, может кто строчку кода черканёт)
По идее должно быть что-то вроде:
<?php if ( lang="en-US", true); ?>
<h1 class="page-title">Shop</h1>
Решил таким образом Wordpress и бесплатная версия плагина Polylang:

<?php if(((strpos(strtolower($_SERVER['REQUEST_URI']), "/en/shop/") !== FALSE) || ((strpos(strtolower($_SERVER['REQUEST_URI']), "/en/product/") !== FALSE) ))): ?>

<h3 class="main-title__primary">Основоной заголовок</h3>
<?php else: ?>

<<?php echo $main_tag; ?> class="main-title__primary">
<?php echo $title; ?>
</<?php echo $main_tag; ?>>

<?php endif; ?>

<?php if(((strpos(strtolower($_SERVER['REQUEST_URI']), "/en/shop/") !== FALSE) || ((strpos(strtolower($_SERVER['REQUEST_URI']), "/en/product/") !== FALSE) )|| ((strpos(strtolower($_SERVER['REQUEST_URI']), "/en/product-category/") !== FALSE) ))): ?>
<h3 class="main-title__secondary">Подзаголовок</h3>
<?php else: ?>
 
Последнее редактирование:
Сверху Снизу