Стряпаем модуль для XOOPS



helloxoopsСегодня мы попробуем на скорую руку создать свой модуль для XOOPS. Всё равно какой модуль. Абсолютно! Главное знать, что хотим получить в результате, и прямые руки. В идеале у нас должен быть уже работающий PHP-скрипт(или несколько), который нужно интегрировать в XOOPS.

Под интеграцией в XOOPS нас в первую очередь интересует использование единых навигации, тем оформления и авторизации.

Для начала нам нужно:

  • Создать каталог в каталоге модулей например /var/www/html/modules/helloworld
  • Создать в этом каталоге конфигурационный файл модуля: xoops_version.php.

Для того, чтобы создать xoops_version.php – предлагаю скопировать аналогичный файл из другого модуля и приспособить его под себя.
У меня получилось следующее:

<?php
$modversion = array();
$modversion['name'] = "HelloWorld";
$modversion['version'] = 1.0;
$modversion['description'] = "This is a stub module.";
$modversion['credits'] = "Altesack( http://blogocms.ru/ )The Blog About CMS";
$modversion['license'] = "GPL see LICENSE";
$modversion['image'] = "hello_logo.png";
$modversion['dirname'] = "helloworld";
 
// Admin things
$modversion['hasAdmin'] = 0;
 
// Menu
$modversion['hasMain'] = 1;
//$modversion['sub'][1]['name'] = "hello1";
//$modversion['sub'][1]['url'] = "hello1.php";
//$modversion['sub'][2]['name'] = "hello2";
//$modversion['sub'][2]['url'] = "hello2.php";
//$modversion['sub'][3]['name'] = "hello3";
//$modversion['sub'][3]['url'] = "hello3.php";
 
?>

Здесь я закомментировал возможные подменю. Если появится несколько скриптов – можно их добавить.

Затем нужно создать собственно скрипт

  • Создать файл скрипта. Например: /var/www/html/modules/helloworld/index.php
  • Вставить в начало строчку
    include "../../mainfile.php";

    Это инициализирует объекты движка, а также проверяет доступ.

  • Вставить непосредственно после этого строчку
    include XOOPS_ROOT_PATH."/header.php";
  • Вставить собственно свой код
  • В конце скрипта
    include XOOPS_ROOT_PATH."/footer.php";

У меня получилось примерно следующее:

<?php
include "../../mainfile.php";
include XOOPS_ROOT_PATH."/header.php";
 
echo "<h1>HELLO WORLD</h1>";
 
include XOOPS_ROOT_PATH."/footer.php";
?>

Вот так мы и состряпали модуль на скорую руку. Скачать можно здесь. Посмотреть что получилось – здесь
Понятно, что мы писали модуль не для того, чтобы сказать “Hello World”. Вместо этого можно добавить любой свой алгоритм.

Вот и всё =)

См. также

Посты по теме:

  1. Возвращение XOOPS

Категории XOOPS |
автор: altesack / Пятница, Февраль 20, 2009 / Comments Off

Комментирование закрыто.