Sorteeri WordPressi postitused kuupäeva järgi
TL;DR: kui otsite lihtsat viisi WordPressi postituste sortimiseks kuupäeva järgi (olgu see siis kahanevalt või tõusvalt) haldusalas ilma, et kasutajad klõpsaksid kuupäeva veeru päisel, saate seda teha pre_get_posts
filtri abil. mis annab viite WP_Query
lehel töötavale eksemplarile.
Koodinäiteid selle kohta, kuidas seda teha, vaadake ülejäänud artiklist.
Sorteeri WordPressi postitusi
See artikkel on kirjutatud nii, et see eeldab teie seadistamist klassipõhiselt. See tähendab, et filtri seadistamine on määratletud funktsioonis, näiteks, init
ja see kutsub esile public
klassi funktsiooni nime, näiteks sort_articles_by_recent_time
.
Lõpuks määratleb see prioriteedi 10
ja määrab, et funktsioon aktsepteerib üksikuid argumente (mis on WP_Query
.
Esmalt lisage järgmine filter:
add_action( 'pre_get_posts', [ $this, 'sort_articles_by_recent_time' ], 10, 1 );
Seejärel lisage järgmine funktsioon:
See toimib järgmiselt.
- Pange tähele esimesi tingimuslikke kontrolle, kui me pole haldusalas või kui me pole
edit.php
lehel (mis on postituste loendi leht), jätame lihtsalt funktsioonid. See on valveklausel või varajane tagasipöördumine. - Kui vastame mõlemale kriteeriumile, värskendame päringut nii, et see järjestaks postituste kuupäeva järgi kahanevas järjekorras. See tähendab, et kõige värskemad kuupäevad on alati ülaosas.
See ei võta arvesse postituse olekut (nii et kui see on olekuga draft
postitus või postitus, publish
siis pole sellel tähtsust). Lisaks takistab see kasutajatel klõpsamast veeru päisel Kuupäev, et sortida tulemusi vastavalt vajadusele, kui seda oma lahenduses nii väga soovite.
Viited
[pre_get_posts](https://developer.wordpress.org/reference/hooks/pre_get_posts/)
[WP_Query](https://developer.wordpress.org/reference/classes/wp_query/)