php template php drupal

Drupal Русскоязычное сообщество

В моей теме Друпала нет файла template.php. Но многие решения, которые я хотел бы использовать, требуют правки этого файла. Подскажите пожалуйста, как самому создать этот файл? Метод создания пустого файла не помогает.

Комментарии

Сделай на основе подобного файла из другой темы php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupalТолько скорректировать не забудь )

Сделай на основе подобного файла из другой темы php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupalТолько скорректировать не забудь )

Метод создания пустого файла не помогает.

Подскажите пожалуйста, как самому создать этот файл? Метод создания пустого файла не помогает.

Автор не слушай тролей они тебя обманывают. Создать этот файл не возможно.

Автор не слушай тролей они тебя обманывают. Создать этот файл не возможно.

Это мне? Я вас лично чем-то обидел?

Почему невозможно? В других-то темах этот файл есть.

Почему невозможно? В других-то темах этот файл есть.

Я вас лично чем-то обидел?

А тебя кто то обижал?

Автор, что вы хотите сделать лучше скажите.

Показывайте сайт, скажите какую тему вы скачали (и откуда).

что за моя тема? то что вы пытаетесь вставлять в него рабочее?

Я просто в блокноте создала файл с таким именем и добавляю туда все, что мне нужно

В моей теме Друпала нет файла template.php. Но многие решения, которые я хотел бы использовать, требуют правки этого файла. Подскажите пожалуйста, как самому создать этот файл? Метод создания пустого файла не помогает.

Простой и точный ответ

Я просто в блокноте создала файл с таким именем и добавляю туда все, что мне нужно

Только проверь, фаил должен лежать в корне темы. А так же должен начинаться с

Трекер

СРОЧНО. Пожалуйста, помогите! Как создать папку для загружаемых файлов?

Порядок ответов в комментариях

Как в подвале views вывести текст видный только админу.

Spam webform?

Удалить h1 c страницы

Как создать отдельную страницу с регистрацией и входом на сайт

Создание новой страницы на drupal7

Не перестанавливаются блоки

Изменение формата номера телефона при импорте

Вывод словаря(с иерархией) в Drupal7.

Новые материалы

СРОЧНО. Пожалуйста, помогите! Как создать папку для загружаемых файлов?

Удалить h1 c страницы

Как в подвале views вывести текст видный только админу.

Spam webform?

Порядок ответов в комментариях

Создание новой страницы на drupal7

Как создать отдельную страницу с регистрацией и входом на сайт

Вопросы по системному модулю поиска

preprocess_views_view_fields

Изменение формата номера телефона при импорте

На развитие drupal.ru

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

Источник

Урок Создание отдельного шаблона страницы для разных типов ноды

По умолчанию в друпале все страницы выводятся через шаблон page.tpl.php. Можно создавать шаблоны созданные по такому принципу: если путь выглядит как имясайта/node/10, то шаблон будет выглядеть как page-node-10.tpl.php. Если создать шаблон page-node.tpl.php, то все страницы, лежащие «ниже» урла имясайта/node/ будут автоматически перекрыты этим шаблоном.

То есть, если в корне вашей темы лежит файл page-node-tpl.php и выводит только переменную $content, то на странице абсолютно любой ноды будет выведен тольько контент, без колонок, табов и прочих аттрибутов.

Этот принцип работает для любого адресса, и любого уровня вложенности в него. Однако давайте рассмотрим неординарный вариант: допустим, перекрыть надо только страницы нод определённого типа материала. Для этого потребуется поместить в template.php следующий код:

Теперь друпал научится понимать шаблоны, построенные по любому типу ноды (если вы их перекрыли).

Пример: для типа материала story шаблон будет выглядеть так:

Сейчас я немного поясню код. Для этого мне придётся рассказать о функции arg(). Она возвращает составные части текущего урла страницы. То есть для страницы http://drupalace.ru/node/add/lesson оно вернёт:

Значит, этой строкой я убеждаюсь, что нахожусь на странице с нодой (т.к. страница с нодой строится по урлу имяСайта/node/нид):

Далее всё вообще прозрачно:

Применяется это к любым шаблонам и страницам. Просто я делал всё на примере node.

Вот и вся хитрость. Таким же образом можно создать себе шаблоны на абсолютно любой случай жизни 🙂

Источник

Drupal Русскоязычное сообщество

Хотелось бы найти простой способ создавать блоки с PHP-кодом, для дальнейшего их размещения в шаблоне сайта стандартными средствами drupal. Идеальный вариант был бы просто создание блока, где вписывается ссылка на PHP-файл на диске. Идея хранить PHP-код в базе мне не нравится. Подскажите, может существует готовое решение?

Комментарии

А чем стандартный block api не подходит?

Для 6 друплы из коробки был модуль php filter, просто делаете формат ввода php и профит

Как вариант можно темизировать шаблон нужного блока

А чем стандартный block api не подходит?

Для 6 друплы из коробки был модуль php filter, просто делаете формат ввода php и профит

Искал такой модуль для Drupal 7, но видимо нет такового.

А зачем его искать? Заходим http://сайт.ру/admin/modules включаем PHP filter и юзаем его в блоках.

Вообще не вижу проблем с PHP при создании новых блоков. Фсе работает искаробки!

«ХулиGUN» написал(а):
Для 6 друплы из коробки был модуль php filter, просто делаете формат ввода php и профит
Искал такой модуль для Drupal 7, но видимо нет такового.

Куда вписывать код API изначально? В шаблон template.php? Можно какой-нибудь простейший пример такого блока?

А где искали? Этот модуль и в 7-ку входит. Только зачем он вам, если вы сами сказали что идея хранить PHP-код в базе мне не нравится?

При желании можно и в шаблоне всё сделать, а лучше использовать block api. Все примеры тут.

Включение модуля сильно тормозит сайт.

Какие минимально необходимо задействовать хуки block api, чтобы просто создать блок без всяких настроек и текстов? Необходим простейший блок, который бы можно было вставить в шаблон через «структура»->»блоки».

hook_block_info и hook_block_view

Делаю в template.php так :

Сбрасываю кеш сайта. В списке блоков все равно мой блок не появляется. Подскажите, что не так.

Define all blocks provided by the module.

Трекер

СРОЧНО. Пожалуйста, помогите! Как создать папку для загружаемых файлов?

Порядок ответов в комментариях

Как в подвале views вывести текст видный только админу.

Spam webform?

Удалить h1 c страницы

Как создать отдельную страницу с регистрацией и входом на сайт

Создание новой страницы на drupal7

Не перестанавливаются блоки

Изменение формата номера телефона при импорте

Вывод словаря(с иерархией) в Drupal7.

Новые материалы

СРОЧНО. Пожалуйста, помогите! Как создать папку для загружаемых файлов?

Удалить h1 c страницы

Как в подвале views вывести текст видный только админу.

Spam webform?

Порядок ответов в комментариях

Создание новой страницы на drupal7

Как создать отдельную страницу с регистрацией и входом на сайт

Вопросы по системному модулю поиска

preprocess_views_view_fields

Изменение формата номера телефона при импорте

На развитие drupal.ru

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

Источник

Drupal Русскоязычное сообщество

Вожусь с созданием отдельного шаблона страницы для разных типов ноды. Под шестёрку это делалось так. А как такое реализовать в седьмом?

Комментарии

к примеру так: node—book.tpl.php, node—blog.tpl.php

к примеру так: node—book.tpl.php, node—blog.tpl.php

Спасибо Stan.Ezersky.

Шаблоны должны называтся page—type—мой_тип.tpl.php и для конкретной ноды page—node—конкретный_ид.tpl.php

Странно, но почему-то у меня не работает.

template.php:

page—node—15.tpl.php:

Потому что надо не page—node—15.tpl.php а page__node__15.tpl.php

Потому что надо не page—node—15.tpl.php а page__node__15.tpl.php

Хотя не, именно page—node—15.tpl.php правильно

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

Все разобрался, в коде mytheme не изменил на свое, а файл должен быть page—type—типноды.tpl.php

Не забывайте кэш сбрасывать, друзья мои. Час ковыряла бедные шаблоны пока не поняла это.

С созданием отдельного шаблона для конкретной ноды или типа ноды понятно, а можно ли как-то темизировать саму страницу на которой выводятся ноды определенного типа?
Например есть ссылка меню с адресом термина таксономии (taxonomy/term/1) которая отображает список нод одного типа. Как применить свой шаблон к этой странице?

господа форумчане. тема актуальна, я вот тоже не могу добиться желаемого.
в www\themes\bartik\template.php:

есть страницы типа «sell», тип определяется корректно, проверил (в вышенаписанный скрипт добавлял вывод типа страницы. выводилось.)
файл «www\themes\bartik\templates\page—type—sell.tpl.php». Если содержимое файла:

.field-name-body
<
float : right ;
clear : right ;
width : 450px ;
text-align : left ;
>

то собственно все это и выводится вместо ноды.
если же данное обрамить в = «text/css» > >
страница выводится абсолютно пустая.
поясните где и чего я недопонимаю.

Есть файл типа node—add—apps.tpl.php, какой будет правильный код для переопределения шаблона в template.php для страницы добавления материалов? Второй день маюсь, никак не получается

При этом имя файла: page—node—partners_page.tpl

Сейчас мне нужно присвоить свой шаблон для всех страниц типа services (не нод, а страниц). Тип материала services создан.
Вышеприведенное перекрытие работает для чего угодно (тип ноды, отдельная страница), только не для страницы типа ноды.

Ничего не поменялось случайно? Или где я косячу?

Источник

Блог Vaden Pro

Применение шаблонов block.tpl.php для темизации блоков в Drupal 7

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

При работе на CMS Drupal 7 вы можете темизировать при помощи шаблонов, практически любой элемент, начиная от целой страницы, заканчивая отдельными полями. Блоки не стали исключением, для них также есть шаблон block.tpl.php и при его помощи можно подстраивать вывод блока под себя. Обычные блоки темизировать не надо, ведь внутри их можно написать любой код, а вот системные блоки или же блоки выводимые представлением не так просто изменить, но об этом чуть позже.

Какие шаблоны block.tpl.php можно использовать?

Перед началом работы с темизацией блоков стоит обратить внимание, какие существуют шаблоны.

Первый шаблон используется по умолчанию и затрагивает все блоки, которые есть на сайте.

Он по умолчанию встроен в друпал и его можно найти в директиве /modules/block/block.tpl.php

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

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

Так, для того, что бы воздействовать на все блоки в Sidebar second название будет выглядеть следующим образом: block— sidebar_second.tpl.php

Этот шаблон необходим для темизации всех блоков выведенных при помощи конкретного модуля.

Узнать в ком модуле выводится шаблон можно двумя способами.

Первый это сначала использовать шаблон типа block.tpl.php, в нём вывести dpm($block);

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

На странице найти необходимый нам блок и открыв сообщение найти строчку под название module и взять значение.

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

А также можно зайти в настройки блока

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

И он будет написан в адресной строке после /manage/..

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

При помощи уточнения, а именно дописания [дельты], можно темизировать конкретный блок, так как [дельта] у каждого блока уникальная

Где брать название модуля мы уже выяснили, теми же способами можно узнать и название дельты, также при помощи dpm($block)

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

И при помощи адресной строки в настройке блоке, дельта идёт следом за модулем

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

Важность шаблона

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

Главным шаблоном, который перекрывает все другие является block—[модуль]—[дельта].tpl.php.

Если он отсутствует то следом будет подключён шаблон block—[модуль].tpl.php.

Если система не найдёт вышеупомянутые шаблоны она начнёт искать block—[регион].tpl.php.

И если уже и этого шаблона нет, то будет подключен шаблон block.tpl.php.

Стоит обратить внимание, что местоположение шаблона тоже играет существенную роль, сначала будут подключены шаблоны которые находятся внутри папки текущей темы, а затем шаблоны с папки /module/… Следовательно если у вас в папке темы будет шаблон block.tpl.php то он перекроет этот же шаблон который находится в папке модуля.

Переменные

Кроме самого кода, в файле стандартного шаблона, написаны еще переменные, которые можно использовать для темизации блоков. В самом файле они разделены на «Available variables» (Доступные (Основные) переменные),

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

и «Helper variables:» (Вспомогательные переменные)

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

Рассмотрим каждые из них

$block->subject – название самого блока.

$content – содержит контентную информацию

$block->module – название модуля, который был задействован при выводе блока

$block->delta – идефикатор. Является не повторимым и содержится в каждом блоке, благодаря ему можно обращаться к конкретным блокам.

$block->region – содержит название региона в котором был выведен блок.

$block_zebra – присваивает классы odd и even, в соответствии с с чётностью элемента. Напрямую связанна с регионом в котором находится блок, следовательно исчисление идёт от первого элемента внутри региона

$block_id— содержит значения id блока, внутри определённого региона

$id— содержит значение id блока, но не привязан к региону.

Следующие переменные присваивают значение «Истина» при соблюдении условий:

$is_front – блок на главной странице

$logged_in – пользователь залогинен(авторизован) на сайте

$is_admin – авторизованный пользователь является администратором

Подключение шаблона и пример использования

Для начала нам стоит какие или какой именно блок мы будем темизировать и создать соответствующий файл. Для примера мы будем темизировать блок созданный представлением «Жанры».

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

Для этого создадим файл с названием block—views—ganre-block.tpl.php и откроем его.

Теперь стоит перейти в дерективу module/block/ и найти там стандартный файл block.tpl.php, скопировать его содержимое и вставить в наш ново созданный шаблон блока.

И у нас должно получиться следующие.

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

Теперь у нас есть новый шаблон для блока с жанрами, осталось его подключить, а для этого необходимо перейти в раздел конфигурация, на административной панели сайта, найти в ней подраздел «Разработка» и перейти по ссылке «Производительность».

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

В открывшимся окне необходимо нажать на кнопку «Очистка кэша». После чего наш шаблон будет подключён

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

Теперь наш шаблон подключен и мы можем вносить в него изменения.

Пропишем наше условие и сохраним документ.

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

Теперь если мы выйдем из своей учётной записи то в нашем блоке не будет выводится содержимое

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

А если мы авторизуемся то содержимое блока будет выводится.

Так мы можем добавить в содержимое блока специальные подписи, поменять оформления заголовков и сделать еще множество вещей для приведения нашего сайта к желательному для нас виду.

php template php drupal. Смотреть фото php template php drupal. Смотреть картинку php template php drupal. Картинка про php template php drupal. Фото php template php drupal

Важно

Будьте внимательны в темизации блоков, особенно при выборе шаблона, ведь в Drupal 7 вывод всего контента совершается через блоки.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *