Представление не видит подгружаемые функции из page.tpl.php

Главные вкладки

Аватар пользователя Кришпер Кришпер 6 мая 2016 в 13:42

В page.tpl.php при помощи include я подгружаю ф-ции.
В шаблоне представления и в её шапке он их не видит.
Если я использую include, то мне выдаёт ошибку о переопределнии ф-ций redicalre
Пробывал закинуть подгрузку ф-ций из page.tpl.php в html.tpl.php, но так ф-ций он не видит.
Нужно, что бы подгружаемые ф-ции были видны во всех шаблонах. Как быть?

Комментарии

Аватар пользователя Кришпер Кришпер 6 мая 2016 в 14:24

В tamplate работает, но почему-то модуль админ меню ломается.

п.с а, не, сори, у меня ошибка в вёрстке была.

п.с 2 хотя всё-таки да, крашится.

Аватар пользователя Кришпер Кришпер 6 мая 2016 в 16:47

Может, однако стандартный Toolbar работает. А админ есть, когда включаешь, но стоит перейти на др страницу(не всегда с первого раза, порой, спустя несколкьо переходов) и он исчезает(даже хтмл не генерится). Можно выключить, включить, он будет, но потом снова исчезает. Очень странно.

Аватар пользователя sas@drupal.org sas@drupal.org 6 мая 2016 в 17:57

Просто диву даешься как иногда изобретают велосипеды по несколько раз на день. Есть же правила видимости и определения, подключения Drupal API. Подключать только там, где они нужны, чтобы не сорить память. Если нужны только в конкретных Views смореть views API в направлении _preprocess или _process, там и подключать по необходимости, если нужны везде, то через hook_init поделючать, если на определенных страницах, hook_process hook_preprocess для page. см. https://api.drupal.org/api/drupal

Аватар пользователя Кришпер Кришпер 10 мая 2016 в 10:09

Просто подгружается файл, в котором функции и надо чтоб они были видны во всех шаблонах сайта. dashiwa, что конкретно смотреть? В хуках редиклер выдаёт, в темплейт админ модуль ломается(в других местах подгрузки и нету больше), что ещё попробовать?

Аватар пользователя Dirst Dirst 10 мая 2016 в 22:40

В темплейты функции грузить? Революция друпала строения)
Если эти функции от какого то проекта на гитхабе который можно установить через менеджер пакетов composer то можно поставить composer_manager.

Если это просто самописная парочка функций, надо создать свой модуль или запихнуть их в template.php.

Если это классы то надо создать модуль и подключать в module.info в files[]

Аватар пользователя gun_dose gun_dose 11 мая 2016 в 17:38

Это происходит из-за того, что твои функции что-то выводят не туда, куда надо, из-за этого не закрываются тэги и ломается вёрстка

Аватар пользователя Кришпер Кришпер 11 мая 2016 в 18:54

В таком случае теги админ меню модуля бы сохранялись и их можно было бы найти в консоли, но их вообще нету. И уж точно не может оно то появляется полностью то также исчезать, когда его включаешь и отключаешь.