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

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

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

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

УрокПеренос сайта с локального сервера Denwer на рабочий сервер

Наверняка многие веб-разработчики, особенно использующих для своих нужд ОС Windows, сталкивались с таким джентельменстким набором как Denwer. Штука действительно очень полезная - за пару минут можно поставить себе на компьютер локальный сервер с базой данных (mysql) и настроенными php и apache. И сервис отправки почты в нагрузку. В общем, получается отличная имитация не сильно заурядного боевого сервера. Тут и памяти можно дать чуть больше для ускорения работы, и отлаживать удобнее, и прочие полезности.

Соответственно, если сайт был сделан целиком на локальном сервере, неплохо было бы показать его людям - а значит, перенести его на рабочий сервер в Интернете. И тут для людей не сильно опытных в этом вопросе может возникнуть затык - а с чего начинать, собсна?) Рассказываю.

Чтобы создать на рабочем сервере полную копию локального, вам необходимо перетащить туда следующие вещи:

    УрокНемного о выводе любых cck-полей программно через node.tpl.php

    Сегодня я решил рассказать как выводить cck поля через шаблон node.tpl. Часто бывают такие ситуации, что, например, требуется, чтобы данные из cck полей автоматически закидывать в html-таблицу, или формировать её особым образом, требующим обёртки в дополнительные div'ы (или в любые другие тэги). Поэтому надо обязательно знать, каким образом вывести эти поля в своём шаблоне.

    Алгоритм вывода не сложен:

    БлогДрупал-конкурс

    Друпал-конкурс

    Скоро выходные, и я решил совместить приятное с полезным - отдохнуть и познакомиться поближе с модулями друпала. Суть конкурса такая: тот, кто найдёт самый маленький по размеру архива модуль для 6го друпала на drupal.org получит 5 американских рублей ;) 2 и 3 место получат по ссылке с сайта :) Остальные - манну и банан.

    Анонимы - подписывайтесь, а то потом на разберёмся кому подарок вручать :) Итоги конкурса будут опубликованы в понедельник вечером.

    Я нашёл http://drupal.org/project/category_tokens - 6,85 кб

    УрокJava-скрипт, который обрезает фотографии и сохраняет их на сервере при помощи Ajax

    Не так давно получил примерно такое техзадание: вывести фотографию, которую пользователь может обрезать графическими средствами, после чего сохранить картинку на сервере. На самом деле тз было немного сложнее, но к сути вопроса это не относится ;)

    Скрипт, который позволяет графически выделить фотографию я нашёл довольно быстро - imgareaselect (пример можно посмотреть там же). Но остался вопрос как после выделения скрипта сохранить фотографию на сервере - иначе после перезагрузки страницы выбранная пользователем область пропадёт.

    Для этого я написал небольшой модуль, который можно скачать тут. Он включает в себя файл с упакованным скриптом imgareaselect, и моим модулем, который я назвал image_cropper.

    УрокМодули, которые делают жизнь проще, а солнце ярче

    Сейчас я расскажу об основных и дополнительных модулях друпала, без которых выполнение некоторых задач было бы сильно осложнено, особенно на начальном этапе. Все модули актуальны для 6 версии CMS Drupal.

    Основные модули друпала - мастхэв

    • cck - добавляет возможность создавать в содержимом допонительные поля (фотографии, текстовые поля, числовые, емейлы, загрузка файлов, голосование и прочее)
    • views - можно сказать, основной модуль друпала. В связке с cck обретает невероятную силу, получая +4 поинта к скорости настройки сайта и +5 к гибкости настройки системы :) Позволяет создавать легкоизменяемые блоки, страницы, меню, новостные ленты и прочие составляющие сайта. Новичкам может показаться слегка сложным, но потратив пару часов на освоение минимальных его возможностей, вы уже ощутите ту лёгкость, с которой можно создавать новые элементы сайта.

    УрокSEO вёрстка

    Немаловажной частью сайта является его "шкурка", шаблон. Внешний вид сайта не должен привлекать посетителей - не существует такого уникального дизайна, который гарантированно всем понравится. Внешний вид не должен отталкивать - с этой задаSeo - немаловажная часть жизни сайта, и о завтрашнем продвижении разработчик должен заботиться уже сегодня, с помощью грамотной верстки. Вообще шаблон сайта может быть рассмотрен с точки зрения seo как элемент внешней оптимизации. И если на этапе разработки программист допустил ошибку, которая будет сказываться на продвижении сайта, то его неминуемо попросят ее исправить. Подробнее про новинки seo можно прочитать на ресурсе seo осень, а мы же займемся программными аспектами.чей может справиться любой трезвый и адекватный дизайнер.

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

    Во-первых, самое важное правило, которого всегда надо придерживаться - тэг H1 должен быть на каждой странице сайта ТОЛЬКО один раз. В него можно обернуть название сайта, или его слоган, или заголовок ноды В ПОЛНОЙ СТАТЬЕ (не в анонсе!), или заголовок самой страницы. Но обязательно следите за тем, чтобы этот тэг не повторялся даже дважды.

    УрокСоздаём простой модуль с нуля

    Не так давно я рассказывал как сделать свои табы. И тогда же обещал рассказать как оформить это в модуль вместо функции. Выполняю своё обещание - перед вами урок по созданию модуля, который автоматически создаст блок с табами.

    Назовём модуль myTabs.

    Модуль, как и тема, в обязательном порядке содержит info-файл. Он будет называться mytabs.info. Для нашего модуля его содержимое будет выглядеть так:

    name = myTabs
    description = my first module with tabs
    core = 6.x

    Всё просто - имя, описание модуля, и ядро друпала, под которое модуль написан.

    Теперь создаём файл mytabs.module - основной файл модуля, в котором описаны основные функции, выполняемые для работы модуля. Из него можно подключать другие файлы, но т.к. наш модуль маленький, то за рамки этого файла мы выходить не будем.

    Страницы