Snelle tip: WP_Query & velden met meerdere regels

Met behulp van het meta_query attribuut in de krachtige WordPress WP_Query class kunnen posts worden gefilterd die bepaalde waarden in hun metavelden hebben. Als je een metaveld met meerdere regels hebt gemaakt (bijvoorbeeld met behulp van Advanced Custom Fields ) en alleen berichten wilt vinden die een bepaalde waarde in dit veld bevatten, gescheiden door regeleinden, is de REGEX-wereld van MySQL aan te bevelen.


De volgende oproep vindt alle berichten dat de waarde bar ergens in een lijn in het veld foo hebben:

d6a80606f7846cba392a561bfdecf2b7

Dit zorgt ervoor dat er geen onjuiste substrings worden gevonden en dat regeleinden op verschillende platforms werken. Ook belangrijk: de waarde van het value- attribuut moet tussen dubbele aanhalingstekens staan, anders ontsnapt WordPress aan de backslashes (maak je geen zorgen: Prettier houdt hier permanent rekening mee). Dezelfde procedure kan ook voor andere doeleinden worden gebruikt: In de bovenstaande code wordt bijvoorbeeld "\ r \ n | \ r | \ n" vervangen door " ;" als de waarden door komma's (in plaats van lijn) zijn gescheiden binnen een tekstveld.

Terug