Problema creazione template personalizzato

6 contenuti / 0 new
Ultimo contenuto
Problema creazione template personalizzato

Salve a tutti,
ho creato una nuova pagina/file per l'errore 404 e ho chiamato il file page--404.tpl.php e nel file template.php ho inserito il seguente codice:

function miotema_preprocess_page(&$vars) {
  $header = drupal_get_http_header("status");
  if ($header == "404 Not Found") {
    $vars['theme_hook_suggestions'][] = 'page__404';
  }
  elseif ($header == "403 Forbidden") {
    $vars['theme_hook_suggestions'][] = 'page__403';
  }
}

il problema è che quando viene visualizzata la pagina, mi riporta prima e dopo il codice che ho nel file page--404.tpl.php il contenuto del file html.tpl.php
Ciò non va bene in quanto mi riporta file js e css che non mi servono rovinando poi anche il template.
Potete aiutarmi?

Anche perchè vorrei creare un layout adhoc per alcuni node.

Drupal Version:

Ciao Gianfranco, in effetti non dovrebbe succedere, perciò dovresti fare un piccolo debug:

<?php
// mostra l'array vars
drupal_set_message('<pre> ' . print_r($vars['theme_hook_suggestions'], TRUE) . '</pre>');
// eventualmente usa unset per togliere il template precedente
unset($vars['theme_hook_suggestions']);
?>

Ciao ;)

E' tutto molto strano dell'array non mi mostra nulla e con unset non succede nulla!
Eppure mi riporta tutto il codice di html.tpl.php rovinandomi il template.
Ho svuotato la cache, eliminato i cookie e file temporanei dal browser...

Cosa restituisce vars?

function THEME_preprocess_page(&$vars) {
drupal_set_message('<pre> ' . print_r($vars, TRUE) . '</pre>');
}

Ps. forse hai gia fatto, ma visto che il forum è miracolosamente tornato....

Ciao,
dunque se inserisco il debug nel file template.php mi restituisce:
Fatal error: Cannot redeclare monooment_responsive_preprocess_page() (previously declared in /home/sites/all/themes/monooment_responsive/template.php:8) in home/sites/all/themes/monooment_responsive/template.php on line 20

mettendo drupal_set_message(' ' . print_r($vars, TRUE) . ''); nella pagina page--404.tpl.php non mi torna alcun errore o messaggio...

Molto strano...perchè si riporta il codice di html.tpl.php?

Altri consigli, suggerimenti o file da passarmi per testare?