WordPress belülről

Bizonyos oldalak elrejtése WordPress adminban

Akadnak olyan esetek, amikor egy bizonyos oldalt azért hozunk létre, mert funkcionálisan szükségünk van rá. Így például webáruház bővítményeknél is vannak ilyen oldalak, mint Kosár, Profil, stb. De előfordulhat az is, hogy éppen egy olyan oldal sablont használunk, amelynek funkciója annyi, hogy egy naptár adatait tároljuk benne tegyük fel json formátumban. De sorolhatnánk napestig ezeket a példákat. Ezen oldalak úgymond veszélyben vannak, hiszen ha törlésre kerülnének, akkor az oldal bizonyos funkciói nem működnének, így nem árt ezen oldalakat, ha elkészült weboldalunk, eltüntetni.Nem kell más tennünk, mint az admin-ban kiszűrni ezen oldalakat, az alábbi kód segítségével, amelyet a sablon functions.php fájljába illesztünk bele:

add_action( 'pre_get_posts' ,'exclude_this_page' );
function exclude_this_page( $query ) {
        if( !is_admin() )
                return $query;
        global $pagenow;
        if( 'edit.php' == $pagenow && ( get_query_var('post_type') && 'page' == get_query_var('post_type') ) )
                $query->set( 'post__not_in', array(10,2,14) );
        return $query;
}

Az array-ben található számok az oldalak ID számai, amelyeket el szeretnénk rejteni.