Estou recebendo periodicamente um erro sobre a indefinição de $ node em um dos meus arquivos de modelo. Tenho uma condição if simples que verifica o tipo de nó que está sendo exibido. Eu assumi que o nó $ está sempre disponível ou estou errado?
Estou recebendo periodicamente um erro sobre a indefinição de $ node em um dos meus arquivos de modelo. Tenho uma condição if simples que verifica o tipo de nó que está sendo exibido. Eu assumi que o nó $ está sempre disponível ou estou errado?
Respostas:
O nó $ não está necessariamente definido, a partir da API page.tpl.php Drupal 7 :
$ node: o objeto do nó, se houver um nó carregado automaticamente associado à página, e o ID do nó for o segundo argumento no caminho da página (por exemplo, nó / 12345 e nó / 12345 / revisões, mas não comentar / responder / 12345).
Por padrão, apenas nas páginas do nó a variável $ node é definida. Para a primeira página (um feed), visualize páginas, comentários, etc., eles não são.
Se você deseja que uma variável $ node seja definida em uma página que não seja um nó, será necessário editar / criar a função MYTHEME_preprocess_page (& $ variable) no arquivo theme template.php.
Para evitar seu erro, em seu arquivo de modelo, enrole a variável $ node em um
if (isset($node)) {
// do something with $node
}
Ou remova-o completamente