Chaque site Web que nous créons a ses propres défis. Mais les outils que nous utilisons peuvent nous aider à les affronter de front.
WordPress et son Ă©cosystĂšme de plugins sans fin ont aidĂ© les concepteurs de sites Web Ă maĂźtriser mĂȘme les demandes des clients les plus difficiles. Presque tout ce dont nous avons besoin est simplement de cliquer et de partir. Et s'il n'existe pas, nous pouvons le construire nous-mĂȘmes.
Mais pour chacune de ces solutions que nous mettons en Ćuvre, il y a une consĂ©quence cachĂ©e. Celui qui ne monte que lorsque nous approfondissons un peu les donnĂ©es spĂ©cifiques Ă l'utilisateur. Ce n'est qu'alors que nous rĂ©alisons le dĂ©sordre emmĂȘlĂ© sous cette jolie coque extĂ©rieure.
Un début simple
Dans une installation WordPress par défaut, les données utilisateur (au moins le type que vous souhaitez exporter) sont en fait assez propres et soignées. Les données sont stockées dans la table de base de données wp_usermeta. à l'intérieur, vous trouverez les bases comme le nom d'utilisateur, ainsi que leur rÎle / capacités et les préférences de compte.
Combinez cela avec ce qui est dans la table wp_users (nom d'utilisateur, adresse e-mail, mot de passe), et vous pouvez obtenir de nombreuses informations utiles pour chaque utilisateur sur votre site Web. En outre, vous pouvez facilement importer une liste CSV de nouveaux utilisateurs si nécessaire.
Bien sĂ»r, la plupart des sites Web ne s'arrĂȘtent pas Ă un paramĂštre par dĂ©faut. Au lieu de cela, nous ajoutons souvent un nombre illimitĂ© de plugins afin que les utilisateurs puissent en faire plus avec notre site.
Nous voulons qu'ils fassent des choses comme avoir des informations de profil personnalisées, suivre les commandes et appartenir à des groupes spécifiques. De plus, des fonctionnalités telles que les forums, les portails de support et les systÚmes de gestion de l'apprentissage sont également largement utilisées de nos jours.
Et cela ne fait qu'effleurer la surface. Il y a beaucoup plus à ajouter à un site WordPress typique. C'est bien, jusqu'à ce que vous deviez essayer de discuter des données.

Des données, des données, partout
Le problĂšme en question n'est pas tant la faute de WordPress lui-mĂȘme. C'est lĂ que, dans de nombreux cas, un certain morceau de donnĂ©es est stockĂ© est laissĂ© aux dĂ©veloppeurs de plug-ins. Cela peut entraĂźner le stockage des donnĂ©es utilisateur que vous souhaitez collecter. C'est la nature de la bĂȘte.
Prenons un site Web récent sur lequel j'ai travaillé comme exemple. Il utilise un plugin d'adhésion, qui permet aux gens de rejoindre l'organisation du client.
Informations collectées
Lorsqu'ils s'inscrivent, nous leur demandons plus que des métadonnées utilisateur WordPress standard. Les nouveaux membres sont invités à fournir des informations telles que:
- Adresse de livraison;
- Numéro de téléphone;
- Votre préférence pour la façon dont ils reçoivent les newsletters (e-mail ou courrier postal);
Données générées
Au-delà des informations que nous demandons aux utilisateurs de fournir, il existe également une multitude de données générées par le plugin d'adhésion, qui comprend:
- Statut de membre (actif ou inactif);
- Niveau d'adhésion;
- Date d'expiration de l'adhésion;
Il n'y a rien au-dessus des paramĂštres. Ce n'est probablement pas trĂšs diffĂ©rent des dizaines de milliers d'autres sites qui exĂ©cutent le mĂȘme ensemble de membres.
Bien que le site lui-mĂȘme ne soit pas trop compliquĂ©, cela ne signifie pas que vos donnĂ©es utilisateur sont faciles Ă trouver. Voyons comment une tĂąche apparemment simple peut devenir un dĂ©fi qui prend du temps.

Le défi
Le client avait un besoin trÚs élémentaire. Ils voulaient une exportation de tous les membres actifs qui préfÚrent recevoir une copie imprimée du bulletin de l'organisation. D'aprÚs ce que nous avons, cela ne devrait prendre que quelques minutes pour improviser. C'était loin.
C'Ă©tait beaucoup plus difficile que je ne l'imaginais. Les donnĂ©es dont nous avions besoin Ă©taient prĂ©sentes dans la base de donnĂ©es. Mais essayer de le reconstruire s'est avĂ©rĂ© ĂȘtre une tĂąche presque monumentale pour quelqu'un qui n'est pas un assistant de requĂȘte de base de donnĂ©es.
Cependant, c'est pourquoi nous avons des plugins, non? Et il existe des tonnes d'options différentes, à la fois gratuites et premium. Mais, peu importe ce que j'ai essayé, je n'ai pas pu obtenir exactement ce dont l'exportation avait besoin. C'est pourquoi:
- Les données personnalisées que nous demandons aux membres de fournir nous est assez facile à obtenir. C'est dans la table wp_usermeta, que les plugins d'exportation d'utilisateurs peuvent généralement trouver. Par conséquent, générer une liste d'utilisateurs qui souhaitaient cette copie imprimée du bulletin était assez simple.
- Les autres donnĂ©es relatives aux membresCependant, il est stockĂ© dans une autre table unique au plugin d'adhĂ©sion. MĂȘme un plugin de trading assez robuste que j'ai utilisĂ© ne pouvait pas m'aider ici.
Le résultat a été que j'ai pu savoir qui avait demandé l'édition postale du bulletin, mais je n'ai pas pu savoir si leur adhésion était active, ce qui n'était pas trÚs utile.
Bien sĂ»r, ces informations ont Ă©tĂ© stockĂ©es dans une table adjacente dans la mĂȘme base de donnĂ©es, mais elles pourraient Ă©galement se trouver sur Jupiter Ă mes fins. C'Ă©tait comme chercher les clĂ©s de la maison, pour dĂ©couvrir que son voisin les avait en quĂȘte de secours.
Enfin, j'ai trouvé un plugin d'exportation, qui comprenait un plugin pour le plugin d'adhésion, qui m'a aidé à recueillir les données dont j'avais besoin. Si cela n'avait pas existé, vous seriez toujours coincé avec juste une demi-solution.

L'expĂ©rience peut-elle ĂȘtre amĂ©liorĂ©e?
Tout cela m'a laissĂ© me demander comment ces situations peuvent ĂȘtre amĂ©liorĂ©es ou Ă©vitĂ©es en premier lieu. C'est une dĂ©cision difficile.
Tout d'abord, j'avoue que ce genre de défis n'est pas mon point fort. Quelqu'un avec beaucoup d'expérience PHP et MySQL pourrait probablement trouver une solution personnalisée. Je? Je suis parti pour expérimenter avec les plugins et gémir quand ils ne fonctionnent pas comme prévu.
Mais une question mĂ©rite d'ĂȘtre posĂ©e: Dans le cas oĂč une telle expĂ©rience est requise pour exporter un ensemble complet de donnĂ©es utilisateur? Il semble qu'il devrait y avoir un moyen plus simple de l'utiliser pour travailler.
Le fait que WordPress permet aux plugins de crĂ©er leurs propres tables de base de donnĂ©es est comprĂ©hensible et mĂȘme bĂ©nĂ©fique. Il garantit que nous pouvons installer et dĂ©sinstaller des plugins sans craindre de casser quelque chose.
Cependant, alors que tout cela fonctionne Ă l'Ćil nu, c'est tout sauf pour ceux d'entre nous qui tentent d'accĂ©der aux donnĂ©es sous-jacentes.
Peut-ĂȘtre qu'il devrait y avoir une API qui nous permet d'obtenir tout ce qui concerne un utilisateur spĂ©cifique, quel que soit l'endroit oĂč il est stockĂ© dans la base de donnĂ©es. Mais je laisserai cette discussion Ă ceux qui connaissent les avantages et les inconvĂ©nients d'une telle fonctionnalitĂ©.
Jusque-là , je continuerai à assembler les choses selon les besoins des clients, en espérant un processus beaucoup plus propre à l'avenir.
