web-dev-qa-db-fra.com

Quoi de mieux: champs personnalisés vs taxonomies personnalisées avec des termes pour des performances, une évolutivité et une meilleure expérience utilisateur

Je vais créer un site Web où les principales pages de destination seront les catégories et les filtres de produits.

Par exemple, nous aurons un site Web de produit, où chaque produit peut avoir de nombreux attributs différents (ex: la catégorie de produit est Jeans , les attributs (filtres) pour cette catégorie/les produits sont: couleur, matériau, taille , etc., comme tout site Web de commerce électronique). Mais je n'ai simplement besoin que de catégories avec des filtres, la plupart des produits seront générés automatiquement, en utilisant différentes API, certains seront ajoutés manuellement, comme des publications normales.

La question principale est donc de savoir comment organiser cette structure pour les attributs.

  1. Utilisez Taxonomies personnalisées avec termes pour des attributs tels que Woocommerce, mais dans ce cas, j'ai besoin de beaucoup de code pour rendre toute cette vue compacte dans Admim. Cela peut également avoir un impact sur les performances lorsque nous aurons trop de taxonomies et de termes . Aussi, je n'aime pas l'idée de créer une nouvelle taxonomie pour chaque attribut. Dans ce cas, j'aurai trop de taxonomies.
  2. Utilisez Champs personnalisés puis en utilisant query_vars, construisez des permaliens de filtres, Query Vars et la réécriture d'URL, etc.

J'utiliserai peut-être même le plug-in ACF PRO pour simplifier le codage par l'administrateur.

Alors, quelle est selon vous la meilleure option, la meilleure performance et la bonne pratique?

Merci d'avance.

PS: Vous ne voulez pas utiliser WC, car vous n'avez pas besoin de toutes ces fonctions. Besoin de quelque chose de simple avec moins de code.

2
solosik

Finalement, après les vacances, je suis revenu à cette question.

J'ai choisi d'utiliser Taxonomies personnalisées au lieu de Champs personnalisés.

Voici pourquoi:

  1. Il est plus rapide de faire différentes requêtes (même si je n'aurai pas beaucoup de messages)
  2. La plupart de ces attributs sont réutilisables (partagés)
  3. Ils peuvent être changés/modifiés facilement à l'avenir
  4. Je ne vais pas avoir trop longue liste de taxonomies
  5. ...

Voici quelques liens:

2
solosik

La réponse est si simple.

Utiliser des champs personnalisés

C'est exactement ce que codex explique que vous devez faire.

1
prosti