Je crée un site Web à l'aide de WooCommerce et je souhaite limiter les produits disponibles aux utilisateurs en fonction du code postal saisi dans le formulaire de recherche de ma page d'accueil.
Pour y parvenir, je dois spécifier les conditions de chaque produit dans la base de données dans phpMyAdmin, mais je n'arrive pas à le trouver.
Est-ce que quelqu'un sait où se trouve la base de données woocommerce des produits et/ou des catégories dans phpmyAdmin?
Merci d'avance.
Les produits sont situés principalement dans 2 tables:
wp_posts
table avec un post_type
comme product
ou product_variation
,
Table wp_postmeta
avec le post_id
correspondant par produit (l'ID de produit).
Les types de produits, catégories, sous-catégories, balises, attributs et toutes les autres taxonomies personnalisées se trouvent dans les tableaux suivants:
wp_terms
wp_termmeta
wp_term_taxonomy
wp_term_relationships
wp_woocommerce_termmeta
wp_woocommerce_attribute_taxonomies
(pour les attributs de produit uniquement)
Les types de produits sont gérés par la taxonomie personnalisée product_type
avec les termes par défaut suivants:
simple
grouped
variable
external
Depuis Woocommerce 3+, une nouvelle taxonomie personnalisée nommée product_visibility
gère:
exclude-from-search
et exclude-from-catalog
featured
outofstock
rated-1
à rated-5
Particularité: chaque attribut de produit est une taxonomie personnalisée…
Références:
Les tables suivantes constituent la base de données des produits Store WooCommerce:
wp_posts -
Les messages sont au cœur des données WordPress. Il est stocké un post_type
comme produit ou variable_product
.
wp_postmeta -
Chaque publication contient des informations appelées métadonnées qui sont stockées dans wp_postmeta. Certains plugins peuvent ajouter leurs propres informations à cette table, comme le magasin de plugins WooCommerce product_id
du produit dans la table wp_postmeta.
Catégories de produits, sous-catégories stockées dans cette table:
en suivant Requête Retourne une liste de catégories de produits
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';
pour plus de référence -
En vrac ajouter de nouvelles catégories à Woo:
Insérer l'id de la catégorie, le nom, la clé de l'URL
INSERT INTO wp_terms
VALUES
(57, 'Apples', 'fruit-apples', '0'),
(58, 'Bananas', 'fruit-bananas', '0');
Définir les valeurs de terme en tant que catégories
INSERT INTO wp_term_taxonomy
VALUES
(57, 57, 'product_cat', '', 17, 0),
(58, 58, 'product_cat', '', 17, 0)
17 - est la catégorie parent, s'il en existe une
la clé ici est de s'assurer que la table wp_term_taxonomy term_taxonomy_id, term_id est égale à term_id de la table wp_term
Après avoir suivi les étapes ci-dessus, accédez à wordpress admin et enregistrez toute catégorie existante. Cela mettra à jour la base de données pour inclure vos catégories ajoutées en bloc
Je recommanderais d'utiliser champs personnalisés WordPress pour stocker les codes postaux éligibles pour chaque produit. add_post_meta () et pdate_post_meta sont ce que vous recherchez. Il n'est pas recommandé de modifier la structure de table par défaut WordPress. Tous les postmetas sont insérés dans la table wp_postmeta
. Vous pouvez trouver les produits correspondants dans la table wp_posts
.