Как создать свой модуль

Опубликовал Максим Баев, 13 ноября 2014, 12:20

Для создания своего модуля необходимо иметь 2 обязательных файла с расширениями .info и .module:

example
  |-example.info
  |-example.module

Обязательными данными в этих файлах являются:

example.info

name = example
core = 7.x

Info-файл, как понятно из расширения, это всего лишь описательный файл, который может содержать также зависимости от других модулей или версии ядра, список подключаемых php файлов, и ссылку на страницу конфигурации модуля. Исполнительный файл модуля может быть пустой, при этом сам модуль уже будет отображаться в списке модулей на странице /admin/modules.

Пример создания страницы модуля

К примеру, создадим страницу на которой выведем сообщение о создании страницы.

example.info

name        = example
description = "Some description for example module"
core        = 7.x

; указываем что модуль зависит от модуля Menu
dependencies[] = menu

example.module

<?php
/**
 *  Implements hook_menu().
 */
function example_menu(){
  $items['example-page'] = array(
    'title'            => 'First example page',
    'description'      => 'It our first example page',
    'access arguments' => array('access content'),
    'page callback'    => 'example_first_page',
    'type'             => MENU_NORMAL_ITEM,
    'menu_name'        => 'main-menu'
  );
  return $items;
}

function example_first_page(){
  return 'Congratulations! First page created!';
}

Включаем модуль, чистим кэш на странице /admin/config/development/performance и переходим на страницу /example-page.

Если ссылка не появилась, то возможно необходимо вынести "Главное меню" в один из регионов сайта. Сделать это можно на странице управления блоками: "/admin/structure/block".

Другие посты