Woocommerce данные товара не работают

WordPress.org

Support » Plugin: Яндекс.Касса 2.0 для Woocommerce » После обновления сломался раздел “данные товара” в woocommerce

После обновления сломался раздел “данные товара” в woocommerce

После обновления до актуальной версии, в woocommerce в карточках товара в разделе “Данные товара” перестали появляться все данные. При отключении плагина, все работает! С прошлой версией такого не наблюдалось.

У меня после обновления сайт на WP вообще перестаёт работать.
При деактивации плагина – работает.
WordPress 5.2.3
Woocommerce 3.7.0

  • This reply was modified 2 years ago by warmy .

Да, аналогичная проблема, в саппорт отписались. Пока тишина

Весь сайт перерыл в чём проблема, а это плагин Яндекс.Касса оказывается…

WordPress 5.2.3
WooCommerce 3.7.0
Яндекс.Касса 1.3.0

  • This reply was modified 2 years ago by gbryuzgin .
  • This reply was modified 2 years ago by gbryuzgin .

Благодарю за обращение, ошибка в плагине была исправлена 5 октября. Вы можете обновить плагин до последней версии.

Установлена самая последняя версия, но проблема не решается.

Именно версия 1.3.0 от 5 окт кладёт весь сайт:
“На сайте возникли временные проблемы технического характера.”

Поддерживаю @warmy
До версии 5 октября всё прекрасно работало. 5-го вышло обновление, я сегодня его установил и всё, у кого-то упал весь сайт, у меня же не работают данные о товарах.

Переустановил плагин сейчас, проблема падения сайта ушла, благодарю.
Версия плагина была 1.3.0 а стала 1.3.0 – не очень информативно.

5 октября был выпущен быстрый фикс, который исправляет проблему с падением сайта. Версия плагина не обновилась и осталась 1.3.0.

Мы уже приступили к решению проблемы с невозможностью редактирования товара и изменением цвета фона. Сегодня планируем выпустить фикс, у него изменим номер версии на 1.3.1.

Выложили обновление плагина для решения проблемы с редактированием товаров и изменением фона.
Новая версия плагина – 1.3.1, Вы можете сделать автообновление со страницы со списком плагинов WordPress.
Приношу извинения за доставленные неудобства!

Источник

Почему не отображаются атрибуты? Woocommerce

Не отображаются атрибуты товаров. Пробовала прописывать названия атрибутов на русском, на английском. Меняла темы. Нет атрибутов. Я так понимаю, что они должны быть под названием категории? Как исправить?

2 ответа 2

В общем случае атрибуты любого товара выводятся во вкладке Additional Information (Дополнительная информация).

Под названием категории выводятся атрибуты только для вариативного товара.

Смотрю на ваш сайт и вижу, что указанный в ссылке товар — не вариативный, а простой.

Что надо сделать для вывода атрибутов вариативного товара под категорией?

Создать атрибуты.

В консоли выберите Products->Atributes и создайте атрибуты.

Присвоить атрибутам значения.

Сделать товар вариативным и указать его атрибуты

Читайте также:  Как починить платье прожженное утюгом

Создать вариации товара по атрибутам и задать им цену

Вот тогда на странице товара вы увидите выбор вариаций и диапазон цен

Источник

WordPress.org

Русский

Поддержка → WooCommerce → Не отображаются товары в категориях

Не отображаются товары в категориях

На странице категории и магазина перестали выводится товары. После установки и наполнения всё отображается, на следующий день товары не отображаются.
При открытии настройки темы на страницах отображаются товары. Это проблемы с БД или что-то другое и как решить?
define( ‘WP_DEBUG’, true ); ничего не выдаёт

Самый простой способ — восстановить резервную копию на момент, когда всё работало. Попробуйте обратиться в поддержку Вашего хостинга. Сейчас многие хостинги делают автоматические копии.

P.S. Плагины кеширования на сайте используются? Пробовали очищать кеш?

@denisco, в этом и сложность что кэширования и оптимизаторов никаких нет. После того как всё отображались ничего не делали с сайтом

Возможно, стоит галочка «не отображать товары, которых нет в наличии».
Возможно, стоит выбор на типе отображения «подкатегории».

Без конкретной страницы — это гадание на кофейной гуще.

@5101y, https://senoeco.ru/category/seno/
Все товары стоят в наличии. Где ставится «не отображать товары, которых нет в наличии»?
Тип отображения «подкатегории» стоит только на странице https://senoeco.ru/katalog/
И когда на нём ставлю отображаться товары они тоже не выводятся

Похоже что конфликт с плагином Popup Maker

У Вас 2 разные страницы каталогов.
Одна, где указаны тайтлы и дескрипшены — все выводится
Вторая — где ничего этого нет.

Определенно — конфликт в плагинах.
Смотрите в сторону каких-нибудь фильтров, попапов, дополнительных надстроек к поиску товаров и прочему.

Чтобы проверить — зайдите на любую карточку товара.
Перейдите из нее в категорию — все будет отображаться.
Обратите внимание на код.

  • Ответ изменён 8 месяцев, 3 недели назад пользователем Александр Солунин .

Источник

Редактируем поля оформления заказа в WooCommerce

Содержание

У WooCommerce, как и WordPress, есть куча отличных зацепок. При работе с ними нам потребуется вносить изменения всего в один файл и часто это functions.php . Этого будет достаточно, но конечно, было бы лучше, если бы это был functions.php вашей дочерней темы.

Фильтр, с которым будем работать – это woocommerce_checkout_fields .

Знакомство с фильтром woocommerce_checkout_fields

Если вы попали на эту страницу только потому, что хотите удалить некоторые ненужные поля оформления заказа в WooCommerce, то смело пропускайте этот шаг. Но если вы хотите понять весь процесс, то продолжайте планомерно поглощать информацию ?

Итак, добавьте товар в корзину на вашем сайта и перейдите на страницу оформления заказа WooCoommerce. В качестве темы используется «Storefront» и нашем случае страница оформления заказа выглядит вот так:

Поля на странице оформления заказа в WooCommerce

Давайте посмотрим, из чего состоит эта страница, а для этого вставляем следующий код в functions.php :

После вставки кода вы увидите массив всех полей оформления заказа в WooCommerce с параметрами. Как вы можете видеть в массиве, эти поля отсортированы по группам: billing , shipping , account , order .

Читайте также:  Можно ли отремонтировать форсунку инжектора

А конкретный массив полей, например для поля «Название компании» выглядит так:

Посмотрели на все имеющиеся поля оформления заказа и продолжаем…

Делаем обязательные поля не такими уж и обязательными 🙂

В этом руководстве мы будет работать с вариативным товарам, но существенной разницы нет.

Просто так пользователь не может завершить процедуру оформления заказа. В WooCommerce есть несколько обязательных полей по умолчанию, а выглядит валидация вот так:

Обязательные поля при оформлении заказа WooCommerce

В рамках этого руководства мы будем работать в основном с woocommerce_checkout_fields , но если вам одновременно нужны разные поля для выставления счета (Billing) и для доставки (Shipping), лучше использовать зацепку woocommerce_default_address_fields , потому что она влияет как на поля доставки, так и на выставление счетов одновременно.

Следующий код сделает все поля не странице оформления заказа не обязательными, ну разве что кроме поля для ввода телефона (см. чуть ниже):

Ну а что там с полем телефона? К сожалению он не входит в массив полей адреса. Придется использовать woocommerce_checkout_fields , чтобы сделать поле не обязательным:

Убираем лишние поля при оформлении заказа

Самое плохо, что можно сделать это тупо скрыть не нужные поля используя CSS. Пожалуйста не делайте так!

Избавить от лишних полей очень просто:

Приоритет 9999 для зацепки выбран не случайно. Такого рода изменения нужно запускать как можно позже. Кто знает, что там у вас в теме?

Конечно, если удалить платежные данные для оформления заказа, то не стоит наедятся, что оплата картой будет работать. Конечно, нет. Но если вы используете другие методы оплаты, то все должно быть хорошо.

Первые четыре строчки закомментированы, так как в качестве примера мы оставляем Имя, Фамилия, Email и Примечание к заказу:

Убираем лишние поля при оформлении заказа WooCommerce

Меняем порядок полей

Сортировка полей может показаться одной из самых муторных процедур, да собственно так и есть, но пропустить это важный пункт ни как нельзя.

Сортировка полей внутри группы

Во-первых, вы должны помнить, что поля разделены на группы, а их всего 4:

  • billing – Адрес выставления счёта
  • shipping – Адрес доставки
  • account – Информация об аккаунте
  • order – Детали заказа

Каждая из этих групп содержит поля и можно легко изменить их порядок с помощью специального параметра приоритета.

В качестве примера давайте сделаем поле Email первым, а это всего пара строк кода:

А в результате страница оформления заказа будет выглядеть вот так:

Меняем приоритет поля оформления заказа в WooCommerce

Почему мы установили priority (приоритет) равный 4 ? Всё просто. Каждое из полей по умолчанию имеет свой приоритет, все они перечислены в таблице ниже. Итак, согласно таблице, чтобы сделать поле электронной почты первым, нужно использовать значение меньше 10 .

Группа Название Приоритет
Billing billing_first_name 10
billing_last_name 20
billing_company 30
billing_country 40
billing_address_1 50
billing_address_2 60
billing_city 70
billing_state 80
billing_postcode 90
billing_phone 100
billing_email 110
Shipping shipping_first_name 10
shipping_last_name 20
shipping_company 30
shipping_country 40
shipping_address_1 50
shipping_address_2 60
shipping_city 70
shipping_state 80
shipping_postcode 90
Account account_password –
Order order_comments –
Читайте также:  Не работали по вине работодателя

Иногда после игр с приоритетами можно поломать верстку и получится что-то вроде этого:

Поля при оформлении заказа отображаются не корректно

Почему так происходит? А всё просто – недостаточно отсортировать массив полей. Необходимо применить соответствующие классы и к каждому полю.

На самом деле каждое поле оформления заказа имеет свой стиль (класс CSS), в зависимости от его положения, есть 3 основных класса:

  • form-row-first – 50% в ширину, первый,
  • form-row-last – 50% в ширину, второй,
  • form-row-wide – 100% в ширину.

Давайте расставим правильные приоритеты и назначим плавильные CSS классы:

И как результат – всё выглядит правильно и приятно:

Правильные приоритеты и CSS классы для полей оформления заказа

Перемещение поля в другую группу

К сожалению этот метод не всегда работает, да и не со всеми полями, но и обойти его стороной тоже нельзя. Для примера давайте переместим поле Email другую группу:

И как результат:

Перемещение поля из одной группы в другую

Добавляем новые поля оформления заказа в WooCommerce

В качестве примера давайте добавим два поля в форму оформления заказа WooCommerce – выпадающий список под деталями выставления счета и флажок «Подписаться» в разделе примечаний к заказу. Первое поле будет обязательным.

Прежде всего, нам надо решить где разместить наши новые поля, а вот из чего нужно сделать выбор:

  • woocommerce_before_checkout_billing_form – До формы адреса оплаты.
  • woocommerce_after_checkout_billing_form – После формы адреса оплаты.
  • woocommerce_before_checkout_registration_form – До формы регистрации.
  • woocommerce_after_checkout_registration_form – После формы регистрации.
  • woocommerce_before_checkout_shipping_form – До формы адреса доставки.
  • woocommerce_after_checkout_shipping_form – После формы адреса доставки.
  • woocommerce_before_order_notes – До примечания к заказу.
  • woocommerce_after_order_notes – После примечания к заказу.

Всё понятно из названий зацепок, ими мы воспользуемся ниже, но они могут не сработать только в одном случае – если шаблоны оформления заказа WooCommerce по умолчанию: form-shipping.php и form-billing.php были переопределены в теме . В этом случае придется вручную добавлять новые поля в файлы темы в каталоге /woocommerce/checkout .

Итак, вот собственно код:

И как результат:

Добавляем поля оформления заказа в WooCommerce

А после оформления в информации о заказе (WooCommerce → Заказы) появятся новые, только что созданные поля:

Сохранение значения новых полей в ордере

К сожалении, даже с учетом того, что для нашего выпадающего списка мы поставили ‘required’ => true , поле всё еще по сути не обязательно для заполнения. 🙁

Добавив небольшой фрагмент кода мы решим эту задачку:

Посмотрите на второй параметр функции wc_add_notice – он также поддерживает типы уведомлений «success» и «notice», но параметр «error» – именно то, что нужно в нашем случае.

Вывод ошибки если пользователь не заполнил нужные нам поля оформления заказа в WooCommerce

На этом пока всё.

Если у вас есть вопросы или просто хотите поделиться своим мнением, то оставляйте комментарии ✌️

Источник

Оцените статью