Михаил, Нужно или в шаблоне в начало добавить комментарий
/**
* Template Name: About Page
*/
и потом в админке создать страницу и в ней выбрать шаблон About Page.
Или создать страницу в админке и в ней указать slug, по которому будет искать шаблон для page-{slug}.php.
Хотя во втором случае возможно без создания будет доступна, но не по /page-about.php а по /about
Егор Антропов, у вас в коде вручную запускается new WP_Query(), он там не нужен, вызываются не $query->have_posts(), а просто have_posts(), тогда достаются предзагруженые посты.
Возможно конфликт плагинов, попробуйте отключать по очереди, перезагружать и смотреть. Ещё у меня возле .vue файлов иконки в виде логотипа vue, но может это от темы зависит, а не от плагина
почему id для get_field берутся разными способами? они предполагаются разными или одинаковыми? my_price вызывается в месте где $post установлен до этого?
it_pear_yurec, когда то был косяк с несовпадением версии плагина которая в админке показывается и версии самой библиотеки. Если есть время можно проверить вдруг там внутри другая версия стоит, в папке плагина в composer.json в блоке required будет версия библиотеки написана
Если обновить страницу, в devtools файл показывается как загруженный? в dom есть нужный элемент style? если есть то внутри css файла нужные стили находятся?
Смысл серверного рендеринга в том, чтобы при первой загрузке клиенту быстро пришла уже отрендеренная страница c нужной разметкой для поисковых ботов, а дальше оно работало как обычный SPA. Если нужно чтобы каждая страница рендерилась и приходила отдельно то нет особого смысла делать SPA
Возможно переведённая строка выводится где то ещё, а в меню используется просто строка на английском. Можно поискать вывод этого места в файлах плагина или попробовать перевести другие пункты из меню чтобы проверить.
Pan Propan, не, стандартные атрибуты woocommerce не очень гибкие, лучше через custom fields или чтобы было удобнее через плагины advanced custom fields или carbon fields
"unslick" это метод, а не опция. Чтобы включать или выключать нужно при загрузке страницы и при ресайзе проверять ширину и либо включать либо выключать слик
Если разделов будет немного и они по большей части будут одинаковые у всех товаров и возможно будут нужны отдельные страницы для терминов разделов или сортировка по этим терминам тогда лучше таксономии,
если разделов будет много или у каждого товара будет небольшая часть от всего количества разделов то кастомные поля через что нибудь типа acf или carbon fields.
Если разделы будут разные то как вариант использовать оба метода а на странице уже просто выводить в похожем виде
Сталкивался с такой проблемой, готового решения не было и делали свой костыль. Плагин был wp super cache, там есть динамическое кэширование, через него выводился блок с контентом виджета. Список недавно просмотренных задается через setcookie которые тоже кэшируются, поэтому пришлось выводить их в html через тоже динамическое кэширование в скрытый блок и потом работать с ними через js.
Как вариант поискать сторонний виджет для вывода просмотренных и гуглить возможность работы с плагином кэша который у вас работает.
Вообще такой код по умолчанию выведет и дочерние товары тоже потому что в tax_query есть параметр include_children который по умолчанию true. Поэтому вы или проверяете как то неправильно или есть сторонний код который меняет include_children на false