Utilizarea multiplă a funcției is_page() în page.php

20 iun. 2017, 01:08:55
Vizualizări: 22.1K
Voturi: 5

Încerc să adaug multiple ID-uri de pagină într-o instrucțiune if else. Acesta este codul meu până acum:

if ( is_page(ID) || is_page(ID) ) { 
    get_header('header_alt'); // obține header-ul alternativ
} else { 
    get_header(); // obține header-ul implicit
}

Am încercat câteva alte soluții găsite pe Google, dar funcționează doar pe pagina inițială după golirea cache-ului.

0
Toate răspunsurile la întrebare 2
0
11

Poți pasa un array de ID-uri la is_page în loc să folosești mai multe apeluri is_page:

if( is_page( array( 11, 22, 33, 44 ) ) ) {
    // Codul tău
}

De asemenea, dacă îl folosești într-o buclă (loop), ar trebui să iei în considerare această notă:

Datorită suprascrierii anumitor variabile globale în timpul Buclei (The Loop), funcția is_page() nu va funcționa. Pentru a o putea folosi după Buclă, trebuie mai întâi să apelezi wp_reset_query().

20 iun. 2017 01:12:08
0

Pentru a completa răspunsul lui Jack Johansson, această metodă funcționează și pentru slug-urile paginilor.
De exemplu:

if( is_page( array('noutati', 'portofoliu', 'despre', 'contact' ) ) ) {
// Codul tău
}
29 nov. 2019 13:07:36