Yop,
J'ai un doute, qui m'a effleuré la première fois pour le plugin Devise,
et qui continue à me tarauder pour un besoin similaire.
Pour les auteurs que j'affiche sur un site (plaztika.com), je voudrais
gérer l'info de leur pays, de la subdivision dans le pays
(état pour le mexique, région ou département pour la france, etc.), et
ville.
Pour les attribuer à un auteur, il va de soi que ce sera sous forme
de champ ou de champs dans la table auteurs. Cependant, pour les
données elles-mêmes, ce n'est pas si clair. Que ce soit sur ce site ou
de façon générique sous forme de plugin, plusieurs solutions me
viennent à l'esprit, mais aucune ne me satisfait totalement pour ce
genre de données.
- Tables SQL: a priori pas mal car ça gère une grande quantité de
données. Cependant, ce sont des données qui sont d'une part a priori
les mêmes pour tout le monde (les tables pays, subdivision 1, ville),
d'autre part qui ne vont jamais ou jamais changer, et enfin qui
ont des noms à traduire. Je parle bien entendu de la définition
de ces infos, pas de leur attribution à un auteur.
- Mots-clés: ajouter au fur et à mesure les mots-clés dont on a besoin
pour le site. Bof. Le plus rapide, le moins générique et malin,
évidemment.
- Fichiers de langue. L'option que j'ai prise pour Devises. A priori
bien pratique et adéquate. Le problème qu'elle me pose est double:
d'une part, pour des listes éventuellement très très longues, ça veut
dire que toutes les données sont en RAM, car c'est un tableau PHP.
Par ailleurs, c'est compliqué d'établir des relations entre les
données: ça pourrait pourtant être intéressant de dire que l'état du
Oaxaca est au Mexique. Certes, si on passe par le code iso 3166,
l'état du Oaxaca est MX-OAX, la région Lorraine est FR-M et la Drôme
est FR-26, donc l'info de pays est comprise, mais dans d'autres
situations la relation c'est plus compliqué, par exemple si on veut
associer un pays à une devise.
Bref... l'un dans l'autre, le SQL me semble le plus "logique" d'un
côté, mais d'un autre côté je sais pas... fournir dans un plugin non
seulement une structure de table mais carrément son contenu, et qui ne
bougera pas, ça me semble un peu bizarre.
Je me suis posé la question il y a quelques jours pour les devises,
maintenant pour les pays, et d'autres se la poseront ou se la sont
probablement posée avant pour d'autres cas, mais je n'ai pas trouvé de
trace de discussion à ce sujet.
Z'en dites ?
--
davux