Een kijkje in: Aangepaste WordPress-query maken
Vandaag gaan we kijken naar WordPress Query . Hoewel WordPress zijn Query- functie heeft gedocumenteerd, is het erg intimiderend en waarschijnlijk onpraktisch om in elk van de secties te duiken. Dit is de sneltoets die u nodig hebt.
In deze post bespreken we een paar praktische tips voor het toepassen van WordPress Query die u mogelijk regelmatig moet gebruiken voor uw thema.
Basis WP_Query
Kort WP_Query
, WP_Query
is een klasse om WordPress-berichten en -pagina's aan te vragen. We kunnen een nieuwe WP_Query
klasse maken in een WordPress-thema om berichten (of pagina's) te zoeken in aangepaste specificaties.
Laten we eerst eens kijken naar de index.php
in uw themamap; je zou het volgende stuk codes moeten vinden.
Het heet Loop. Het toont standaard alle berichten die zijn gepubliceerd.
Laten we eens kijken hoe we het kunnen aanpassen met WP_Query
. In dit voorbeeld gaan we berichten van een specifieke categorie uitsluiten.
Eerst stellen we een nieuw WP_Query
in een variabele in.
$ my_query = new WP_Query ();
Daarbinnen kunnen we de categorie-ID toewijzen die we willen uitsluiten. Bijvoorbeeld:
$ my_query = new WP_Query ('cat = -1, -5'); // sluit categorie 1 en 5 uit
Vervolgens verwijzen we naar de variabele binnen de Loop, als volgt.
have_posts ()): while ($ my_custom_query-> have_posts ()): $ my_custom_query-> the_post (); ?>
Merk op dat wanneer u meerdere aangepaste query's hebt, met name binnen een enkele pagina, u deze moet omsluiten met wp_reset_postdata()
.
Query toewijzen met WP-PageNavi
WP-PageNavi is waarschijnlijk de meest populaire plug-in om genummerde paginering toe te voegen in WordPress. De meeste mensen komen echter een fout tegen wanneer ze deze gebruiken samen met aangepaste WP_Query
. De paginering werkt gewoon niet .
Sinds versie 2.74 heeft WP-PageNavi een optie geboden waarmee u een aangepaste query kunt toewijzen. Als we de bovenstaande aangepaste zoekopdracht als voorbeeld nemen, kunnen we het volgende doen:
wp_pagenavi (array ('query' => $ my_query));
... en dat zou de fout moeten oplossen.
Cache-query
Houd er rekening mee dat wanneer u meerdere query's uitvoert, met name op één pagina, er meerdere servers worden geladen die van invloed kunnen zijn op de prestaties van uw site.
Een van de manieren om dit te optimaliseren is door Transient API te gebruiken. In dit geval gebruiken we het om het opgevraagde object in de cache van WP_Query
en het in een bepaalde periode op te slaan.
Op die manier kunnen we de laadtijden van query's versnellen door de gegevens in de cache op te halen en te verwerken in plaats van deze telkens als de pagina is geladen, te ondervragen.
Hier is een codevoorbeeld, waar de cache 24 uur wordt opgeslagen.
if (! ($ my_query = get_transient ('mijn_query_cache'))) {$ mijn_query = nieuwe WP_Query ('cat = -1, -5'); set_transient ('mijn_query_cache', $ mijn_query, DAY_IN_SECONDS); }
Afronden
Met WP_Query
kunnen we eenvoudige of meer complexe query's maken. Als het schrijven van een aangepast WP_Query
ingewikkeld lijkt, is er een tool genaamd WP_Query Generator die het gemakkelijker zal maken.
Ik hoop dat je deze tip nuttig zult vinden, en als je verder op dit onderwerp wilt ingaan, staan hieronder enkele referenties:
- WordPress Loop - WordPress Codex
- WordPress Query - WordPress Codex
- 4 manieren om te lussen met WordPress - DigWP
- Doe-het-zelf cachemethoden met WordPress
Datum en tijd weergeven: hoe u het goed moet doen
We komen die data en tijd tegen ... nou ja, elke dag. Als het gaat om het web, kunt u ze herkennen in uw mobiele apps, in e-mails, in uw berichten-apps en op vele andere plaatsen. Maar ondanks dat we elke dag en overal datum en tijd zien, moeten we er nog een universeel formaat voor aannemen.Als ik bijvoorbeeld 10/05/2015 schrijf, weet je nooit zeker of die "10" de maand of de datum is, tenzij ik je vertel waar ik vandaan kom
Hoe WiFi-wachtwoorden in Windows en MacOS te vinden
U kunt een situatie tegenkomen wanneer u uw WiFi met een gast wilt delen, maar u bent het wachtwoord vergeten en het is alleen opgeslagen op uw computer, of misschien heeft u een nieuw apparaat en wilt u het verbinden met alle WiFi-netwerken die worden opgeslagen op uw computer.In beide scenario's is de oplossing om toegang te krijgen tot de WiFi-wachtwoorden die in uw computersysteem zijn opgeslagen