In UserPress begrijpen en werken met gebruikersgegevens

WordPress slaat gebruikersgegevens op in de wp_users tabel, die is gekoppeld aan de wp_posts en wp_comments tabellen:

WordPress slaat gebruikersgegevens ook op in twee andere tabellen:

  • Aanvullende metagegevens over gebruikers worden opgeslagen in de wp_usermeta tafel
  • Gegevens over commentatoren die niet zijn ingelogd, worden opgeslagen in de wp_comments tafel.

In dit deel van mijn serie over gegevens in WordPress zal ik bekijken hoe WordPress gebruikersgegevens opslaat en hoe je er toegang toe kunt krijgen, met de nadruk eerst op de wp_users tafel.

De tabel wp_users

De wp_users tabel slaat alle kerninformatie over elke gebruiker op. Het heeft de volgende velden:

Veld Wat het opslaat Notes
ID kaart
de gebruikers-ID
automatisch gegenereerd
gebruiker login
gebruikersnaam
verplicht
gebruikerspas
wachtwoord
automatisch gegenereerd indien niet opgegeven bij aanmelding
user_nicename
bijnaam
automatisch gegenereerd indien niet handmatig ingevoerd
user_email
e-mailadres
verplicht
user_url
website
niet verplicht
user_registered
datum en tijd waarop de gebruiker voor het eerst registreerde
automatisch gegenereerd
user_activation_key
gebruikersactiveringssleutel
automatisch gegenereerd
gebruikers status
status opgeslagen als een nummer - dit vertelt WordPress of de gebruiker bijvoorbeeld de registratie via e-mail heeft bevestigd. Het slaat GEEN gebruikersrollen op.
automatisch gegenereerd
Weergavenaam
openbaar weergegeven naam
automatisch gegenereerd indien niet handmatig ingevoerd

Zoals je ziet, alles behalve één veld (user_url) zijn verplicht bij aanmelding of worden automatisch gegenereerd.

User Meta Data

Evenals de gegevens in wp_users, er zijn gegevens die voor alle gebruikers zijn gemaakt, maar worden opgeslagen in de wp_usermeta tabel, zoals rollen en mogelijkheden. Deze tabel wordt ook gebruikt om extra instellingen op te slaan om de gebruikerservaring te verbeteren, zoals het gekozen admin-kleurenschema en instellingen voor de beheerbalk en het dashboarddisplay.

Dit is de tabel die u zou moeten gebruiken wanneer u extra velden voor gebruikers wilt creëren via uw thema of plug-in - u zou nooit velden aan de hoofdtekst moeten toevoegen wp_users tafel.

Elke record in de wp_usermeta tabel heeft vier velden:

  • ID kaart - de record-ID
  • gebruikersnaam - die gekoppeld is aan wp_users
  • meta_key
  • meta_value

Als u een nieuw gebruikersgegevensrecord wilt maken, gebruikt u de add_user_meta () functie:

add_user_meta ($ user_id, $ meta_key, $ meta_value, $ unique);

De vierde parameter voor deze functie ($ unieke) is optioneel en geeft aan of de waarde in de meta_key veld moet uniek zijn.

Nadat u metadata van gebruikers hebt toegevoegd, kunt u deze op de auteurspagina van elke gebruiker uitvoeren met get_user_meta () of maak een lijst van alle gebruikers met een bepaalde waarde voor een opgegeven sleutel. 

Ik zal deze laatste optie in meer detail behandelen in een later zelfstudie waarin ik metadata en taxonomieën onderzoek.

Relaties tussen gebruikers en andere inhoud

Gebruikers kunnen aan twee soorten inhoud worden gekoppeld: berichten en opmerkingen. In het geval van berichten zal er altijd een gebruiker zijn, die de auteur zal zijn. De relatie is tussen de post_author veld in wp_posts en het ID-veld in wp_users.

Opmerkingen hebben niet altijd een link naar de wp_users tabel: deze wordt alleen gemaakt als de commentator een gebruiker is die is aangemeld. Als dit het geval is, is de link tussen ID kaart in wp_users en gebruikersnaam in wp_comments.

Als een commentator geen gebruiker is die is ingelogd, worden zijn gegevens rechtstreeks in de wp_comments tabel, met behulp van de COMMENT_AUTHOR, comment_author_email, comment_author_url en comment_author_IP velden.

Samenvatting

Gebruikers zijn fundamenteel voor een WordPress-installatie. Zonder deze hebt u geen sitebeheerder en geen auteurs om inhoud te maken. 

WordPress slaat kerngegevens op over gebruikers in de wp_users tabel en gebruikt ook de wp_usermeta tabel voor extra metadata. Het koppelt ook gebruikersgegevens aan berichten in de wp_posts tabel en opmerkingen in de wp_comments tafel.