WooCommerce: поиск продуктов в базе данных

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

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

кто-нибудь знает, где база данных woocommerce для продуктов и/или категорий находится в phpmyAdmin?

спасибо продвижение.

4 ответов


продукты расположены главным образом в 2 таблицах:

  • wp_posts таблицы post_type как product или product_variation,

  • wp_postmeta стол с тегом post_id по продукту (идентификатор продукта).

типы продуктов, категории, подкатегории, теги, атрибуты и все другие пользовательские таксономии расположены в следующем таблицы:

  • wp_terms

  • wp_termmeta

  • wp_term_taxonomy

  • wp_term_relationships

  • wp_woocommerce_termmeta

  • wp_woocommerce_attribute_taxonomies (только для атрибутов продукта)


типы товара обрабатываются пользовательской таксономией product_type со следующими условиями по умолчанию :

  • simple
  • grouped
  • variable
  • external

С Woocommerce 3+ Новая пользовательская таксономия с именем product_visibility ручка:

  • видимость продукта с терминами exclude-from-search и exclude-from-catalog
  • характеристика изделия с термином featured
  • статус акций с термином outofstock
  • рейтинговая система с условия от rated-1 to rated-5

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


ссылки:


следующие таблицы являются базой данных продуктов магазина WooCommerce:

  • wp_posts -

    ядро данных WordPress-это сообщения. Он хранится post_type как продукт или variable_product.

  • wp_postmeta-

    каждая запись содержит информацию, называемую метаданными, и она хранится в wp_postmeta. Некоторые плагины могут добавить свою информацию в эту таблицу, как на WooCommerce plugin store product_id продукта в таблице wp_postmeta.

категории продуктов, подкатегории, хранящиеся в этой таблице:

  • wp_terms
  • wp_termmeta
  • wp_term_taxonomy
  • wp_term_relationships
  • wp_woocommerce_termmeta

после запрос возвращает список категории продукта

SELECT wp_terms.* 
    FROM wp_terms 
    LEFT JOIN wp_term_taxonomy ON wp_terms.term_id = wp_term_taxonomy.term_id
    WHERE wp_term_taxonomy.taxonomy = 'product_cat';

дополнительные ссылки -


Я бы рекомендовал использовать пользовательские поля WordPress хранить подходящие почтовые индексы для каждого продукта. add_post_meta () и update_post_meta это то, что вы ищете. Не рекомендуется изменять структуру таблицы WordPress по умолчанию. Все постметы вставляются в wp_postmeta таблица. Вы можете найти соответствующие продукты в wp_posts таблица.


Bulk добавить новые категории В Woo:

вставить идентификатор категории, имя, ключ url

INSERT INTO wp_terms 
VALUES
  (57, 'Apples', 'fruit-apples', '0'),
  (58, 'Bananas', 'fruit-bananas', '0');

задайте значения терминов как catergories

INSERT INTO wp_term_taxonomy 
VALUES
  (57, 57, 'product_cat', '', 17, 0),
  (58, 58, 'product_cat', '', 17, 0)

17 - это родительская категория, Если есть один

ключ здесь, чтобы убедиться, что таблица wp_term_taxonomy term_taxonomy_id, term_id равны term_id таблицы wp_term

после выполнения вышеуказанных шагов перейдите в WordPress admin и сохраните любую существующую категорию. Это обновит DB чтобы включить ваши массовые добавленные категории