Oszlopok hozzáadása WordPress-ben a bejegyzéslistázó nézetekhez
Adj egyedi oszlopokat a WordPress admin felületének bejegyzéslistázó nézeteihez - ha bizonyos mezők tartalmát a bejegyzés megnyitása nélkül is látni szeretnéd, ez a snippet neked való.
Több esetben is szükséged lehet erre a lehetőségre - nézzünk is két elképzelt lehetőséget:
- szeretnéd, ha mindegyik bejegyzésedhez tartozó képet anélkül tudnál megnézni (vagy ellenőrizni, hogy van-e hozzá kiemelt kép választva), hogy megnyitnád a bejegyzésszerkesztő felületet,
- valamilyen egyedi mező tartalmát szeretnéd kiíratni egy újabb oszlopban.
Először is nézzük, hogy hogyan tudod az első esetben felmerült igényt kielégíteni - hozz létre egy fájlt az mu-plugins mappában, custom-columns-for-posts.php
néven, az alábbi tartalommal:
Mentés és frissítés után láthatod, hogy a Bejegyzés menüpont alatti nézetben egy újabb oszlop jelent meg - egyelőre érdemi tartalom nélkül.
Megjegyzés: ha ugyanezt egy custom post type esetében szeretnéd elérni, cseréld le a manage_posts_columns
hook-ot a manage_[post_type]_posts_columns
-ra, ahol [post_type]
a custom post type neve. Bővítsük a fenti kódot az alábbira:
A második függvény felel az érdemi tartalommal való "feltöltésért": amikor az oszlopokat tartalommal tölti fel a WordPress és a featured_image
nevű oszlophoz ér (így neveztük el az oszlopunkat az előző függvényben), akkor ott kiíratja a get_the_post_thumbnail()
függvény visszatérési értékét - ami éppen a bejegyzés kiemelt képének <img>
tagje lesz. Megjelent a kép, ügyesek vagyunk! :)
Menjünk tovább a következő esetünkre, ahol valamilyen egyedi mező tartalmát szeretnénk kiíratni az oszlopban. Nagyon sokat nem kell változtatnunk a fenti kódon, csak az "oszlopban meghívott" függvényt kell lecserélnünk, ebben az esetben a get_post_meta()
-ra, és a MEZŐ_NEVE
helyett megadni a mezőnk nevét:
Ha mindent jól csináltunk, megjelent a bejegyzéshez tartozó mező értéke az oszlopban.
Gratulálok - megint kiváltottál egy plugint!