it-swarm.it

Controlla se la pagina è un nodo usando gli argomenti in D7

In Drupal 6, per verificare se la pagina corrente è un nodo, utilizziamo il seguente frammento:

if (arg(0)=='node' && is_numeric(arg(1))) { /* Do stuff. */ }

Dal momento che questa è un'istruzione usata frequentemente, mi chiedo se c'è un modo più breve per farlo in Drupal 7, come qualcosa di simile al seguente:

if (is_node()) { /* Do stuff. */ }
6
Logi

In realtà, esiste una funzione disponibile in Drupal 6: menu_get_object() . Con i valori predefiniti, restituirà un oggetto nodo se l'URL della pagina corrente inizia con nodo/[ID nodo] (dove [ID nodo] è l'ID nodo) e FALSE negli altri casi; la funzione è particolarmente utile se, dopo aver verificato che la pagina corrente è una pagina nodo, è necessario accedere anche all'oggetto nodo associato con la pagina e la funzione che chiama menu_get_object() non ottiene un oggetto nodo tra i suoi argomenti.

In Drupal 7, c'è anche un'altra funzione, ma il suo scopo è solo quello di verificare se la pagina visualizzata corrente è la vista a pagina intera del nodo passata come argomento: node_is_page() .

15
kiamlaluno