Drupal. Система меню

toddНаписано по материалам книги

Томлинсон Тодд. CMS Drupal: руководство по разработке системы управления веб-сайтом.

1. Создаем файл sites/all/modules/custom/menufun/menufun.info со следующим содержимым:

name = Menu Fun
description = Изучение системы меню.
package = Pro Drupal Development
core = 7.x
files[] = menufun.module

Первая строка задает название модуля, именно под таким названием будет доступен модуль. Вторая строка – описание. Последняя – файлы пакета.

2. Создаем файл sites/all/modules/custom/menufun/menufun.module, в который пишем

<?php

/**
* @file
* Модуль для работы с системой меню Drupal.
*/

/**
* Реализация hook_menu(). 
*/

function menufun_menu() {
$items['menufun'] = array(
'title' => 'Приветствие',
'page callback' => 'menufun_hello',
'access callback' => TRUE,
'type' => MENU_CALLBACK,
);
return $items;
}

/**
* Обратный вызов страницы.
*/

function menufun_hello() {
return 'Привет!';
}

Здесь в первой части задается, что при вызове модуля необходимо запустить функцию ‘menufun_hello’, которая собственно и выводит привет. В этой функции можно определить php-код.

3. Активируйте модуль. Результат доступен по адресу localhost/drupal/menufun. Здесь вместо dripal должно быть название ВАШЕГО сайта

Здесь приводится пример для виртуальной машины. Сайт доступен по адресу localhost/drupal (У вас свой вариант)

4. Модифицируем функцию menufun_hello так:

function menufun_hello($first_name = '', $last_name = '') {
return 'Привет,'.$first_name.' '.$last_name;

}

Теперь указав в строке адреса, например, localhost/drupal/menufun/Аня/Иванова, мы получим персональное приветствие. Обратите внимание, как значения из строки адреса передаются в функцию.

5. Рассмотрим пример обращения к базе данных. Создайте  в MySQL таблицу  pers с текстовыми полями name и password. Заполните ее своими данными, например, так

 

name password
aaa 111
bbb 222
ccc 333

Функцию menufun_hello замените так:

function menufun_hello($first_name = '', $last_name = '') {
$_db='НАЗВАНИЕ ВАШЕЙ БД';
$_user='root'; 
$_pass=''; 
$db=mysql_connect('localhost',$_user, $_pass)OR DIE('Не могу создать соединение'); 
mysql_select_db($_db, $db)  or die(mysql_error()); 
$query='SELECT * FROM pers'; 
$res=mysql_query($query, $db); 
$aa="";
while ($row=mysql_fetch_array($res)) { 
$aa=$aa.$row['name'].' '.$row['password'].'<br>'; }
return 'Привет,'.$first_name.' '.$last_name.'<br>'.$aa;
}

6. Теперь самостоятельно реализуйте вывод в виде таблицы.

Поделиться:
  • Добавить ВКонтакте заметку об этой странице
  • Мой Мир
  • Facebook
  • Twitter
  • LiveJournal
  • FriendFeed
  • В закладки Google
  • Google Buzz
  • Яндекс.Закладки
  • StumbleUpon
  • Technorati
  • БобрДобр
  • Memori.ru
  • МоёМесто.ru