Пишем модуль для Друпала. Часть первая: Начало

аватар: andyceo

Определимся с целью данного урока. Мы начнём с создания блокового модуля, который отображает ссылки на контент: например, ссылки на записи в блоге или обсуждения на форуме, которые были созданы неделю назад. Этот урок научит вас создавать содержимое блока, формировать ссылки, а также получать информацию из документов Друпала.

Прежде всего, создайте директорию в папке Друпала, предназначенной для хранения сторонних (не входящих в ядро) модулей: sites/all/modules/onthisdate. Может быть Вам потребуется сначала создать папку sites/all/modules. Создайте PHP файл и запишите его в директорию sites/all/modules/onthisdate под именем onthisdate.module. В Друпал, начиная с версии 5.х, директория sites/all/modules является наиболее желательной для сторонних (не включенных в ядро) модулей (так же как директория sites/all/themes для сторонних тем), т.к. начиная с этой версии, директория sites/ содержит в себе все файлы, специфичные для того или иного сайта. Это позволяет проще обновлять файлы и модули ядра, без стирания ваших специфичных файлов.

<?php
/* $Id$ */

В соответствии со Стандартом Написания Кода Друпала, используйте длинную версию начального тега </code>, а не <code><?</code> для заключения в него php кода. Также не используйте в файле закрывающий тэг <code>. Строка с кодом $Id$ поможет вносить информацию о текущей версии документа и дате его последнего изменения, когда вы отошлёте файл в систему управления версиями CVS.

Все функции вашего модуля, которые будет использовать Друпал, именуются следующим образом: {modulename}_{hook}, где "hook" - имя предопределённой функции (хука, в терминологии Друпала). Друпал будет вызывать такие функции для получения определённых данных. Предопределённые имена хуков необходимы, чтобы Друпал знал, как и где получить нужную информацию. Впоследствии мы рассмотрим хуки более подробно.

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

Комментарии

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • You can use the <go> tags just like the <a> for nicer urls.
  • Доступны HTML теги: <a> <img> <noindex> <br> <em> <i> <strong> <b> <strike> <s> <u> <sup> <sub> <h1> <h2> <h3> <h4> <h5> <h6> <cite> <blockquote> <abbr> <code> <ul> <ol> <li> <dl> <dt> <dd> <p> <div> <span> <hr>
  • Строки и параграфы переносятся автоматически.
  • You can enable syntax highlighting of source code with the following tags: <blockcode>. The supported tag styles are: <foo>, [foo]. PHP source code can also be enclosed in <?php ... ?> or <% ... %>.

Подробнее о форматировании

CAPTCHA
Введите, пожалуйста, код, который Вы видите на картинке. Показ изображений в браузере должен быть включен.
CAPTCHA на основе изображений
Введите символы, которые показаны на картинке.
Добавьте страницу в закладки. Перейти к верху страницы
RSS-материал