Quantcast
Channel: blog.cybdev.org - Drupal 7
Viewing all articles
Browse latest Browse all 10

Как программно создать блок в Drupal7

$
0
0

Так как же программно создать блок. Для создания собственного блока в Drupal 7.x нужно зделать 4 вещи:

1) Создать папку с именем модуля.

Как пример мы создадим блок который будет выводить ссылки для входа на сайт и выхода. Назвем наш модуль custom_login. Соответственно нужно назвать папку custom_login.

2) Создать файл с расширением .info.

Создадим файл custom_login.info. Нужно назвать файл так как называется модуль. Далее поместим следующий текст в даный файл.

name = Custom Login
description = This module provides a custom block with Login links
package = Other
core = 7.x

name - Имя модуля
description - Описание модуля, которое будет видно на странице подулей
package - Отвечает за то, в какой групе модулей будет находится ваш модуль, в моем варианте это група Other
core - Какая версия друпала поддерживает даный модуль

3) Создать файл с расширением .module. И реализовать необходимые хуки.

Создаем файл custom_login.module. Для того, что бы создать простой блок, нам необходимо реальзовать всего лишь два обработчика, а именно hook_block_info() i hook_block_view().


/**  * Implements hook_block_info().  */
function custom_login_block_info() {   $blocks['custom_login'] = array(     'info' => t('Custom Login'),     'cache' => DRUPAL_CACHE_GLOBAL,   );     return $blocks; } /**  * Implements hook_block_view().  */ function custom_login_block_view($delta = '') {   $block = array();  
  switch ($delta) {     case 'custom_login':       $block['subject'] = t('Custom Login');       $block['content'] = _custom_login_content();       break; }   return $block; }   function _custom_login_content() {   global $user;   if ($user->uid == 0) {     return "".t('Вход')."";   } else {     return "".t('Выход')."";   } }

hook_block_info() - объявляет блоки предоставляемые модулем и устанавливает для них настройки по умолчанию.
hook_block_view() - возвращает содержимое блока. Параметр $delta - уникальный индентификатор блока предоставляемый.

4) Включить модуль в блоках и розместить его там где вы хотите.

LikeMe: 

Viewing all articles
Browse latest Browse all 10

Latest Images

Vimeo 10.7.0 by Vimeo.com, Inc.

Vimeo 10.7.0 by Vimeo.com, Inc.

HANGAD

HANGAD

MAKAKAALAM

MAKAKAALAM

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Vimeo 10.6.2 by Vimeo.com, Inc.

Vimeo 10.6.2 by Vimeo.com, Inc.

Vimeo 10.6.1 by Vimeo.com, Inc.

Vimeo 10.6.1 by Vimeo.com, Inc.



Latest Images

Vimeo 10.7.0 by Vimeo.com, Inc.

Vimeo 10.7.0 by Vimeo.com, Inc.

HANGAD

HANGAD

MAKAKAALAM

MAKAKAALAM

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Vimeo 10.6.1 by Vimeo.com, Inc.

Vimeo 10.6.1 by Vimeo.com, Inc.