جوملا-سیستم مدیریت محتوای متن باز
عنوان: نحوه ساخت ماژول ساده "HELLO WORLD" در جوملا نسخه 1.5.23
مرجع: http://docs.joomla.org
به نام خدا
ماژول پسوند سبک و انعطاف پذیر است که برای رندر صفحه استفاده می شود. آنها برای بیت های صفحات بطور کلی و با کمترین پیچیدگی استفاده می شوند
شما می توانید نمونه های بسیاری از ماژول را در جوملا استاندارد (هسته اصلی جوملا1.5.23) ببینید!
مسیر ماژول ها بشرح زیر است:
نصب : -- منوها -- آخرین اخبار -- فرم ورود به انجمن -- و بسیاری دیگر.
این آموزش نحوه ایجاد یک ماژول ساده "HELLO WORLD" را شرح خواهد داد.
از طریق این آموزش شما با ساختار فایل اصلی از یک ماژول آشنا می شوید .
سپس می توانید با گسترش این ساختار به تولید و طراحی ماژول های پیشرفته و استادانه بپردازید.
چهار فایل اصلی در الگوی استاندارد توسعه ماژول وجود دارد :
* mod_helloworld.php -- این پرونده در نقطه ورودی اصلی ماژول است.
هر گونه روال دهی اولیه لازم را انجام دهید، فراخوانی روال کمکی به جمع آوری هر گونه اطلاعات لازم و شامل قالب است که از خروجی ماژول نمایش داده شود.
* mod_helloworld.xml -- این پرونده حاوی اطلاعات در مورد ماژول است.
ایجاد این فایل برای شناساندن محتویات ماژول به جوملا الزامی است
* * * * * تعداد helper.php -- این فایل حاوی کلاس کمکی استفاده شده است که به انجام کار واقعی در بازیابی اطلاعات در ماژول نمایش داده شده (معمولا از پایگاه داده ها و یا برخی از منابع دیگر) است.
* tmpl / default.php -- قالب ماژول. داده های توسط mod_helloworld.phpجمع آوری شده و تولید HTML بر روی صفحه نمایش داده می نماید.
______________________________________________
کدها
______________________________________________
یک پوشه جدید به نام mod_helloworld بسازید
در پوشه ساخته شده نیز یک پوشه به نام tmpl بسازید.
_____________________________________________
کدهای:
<?php
/**
* Hello World! Module Entry Point
*
* @package Joomla.Tutorials
* @subpackage Modules
* @link http://dev.joomla.org/component/option,com_jd-wiki/Itemid,31/id,tutorials:modules/
* @license GNU/GPL, see LICENSE.php
* mod_helloworld is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
*/
// no direct access
defined( '_JEXEC' ) or die( 'Restricted access' );
// Include the syndicate functions only once
require_once( dirname(__FILE__).DS.'helper.php' );
$hello = modHelloWorldHelper::getHello( $params );
require( JModuleHelper::getLayoutPath( 'mod_helloworld' ) );
?>
را در نوت پد کپی نموده و در فایل mod_helloworld به نام mod_helloworld.php
ذخیره نمایید
_____________________________________________________________________
فایل helper.php
طبق روال بالا در پوشه mod_helloworld ذخیره نمایید
<?php
/**
* Helper class for Hello World! module
*
* @package Joomla.Tutorials
* @subpackage Modules
* @link http://dev.joomla.org/component/option,com_jd-wiki/Itemid,31/id,tutorials:modules/
* @license GNU/GPL, see LICENSE.php
* mod_helloworld is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
*/
class modHelloWorldHelper
{
/**
* Retrieves the hello message
*
* @param array $params An object containing the module parameters
* @access public
*/
function getHello( $params )
{
return 'Hello, World!';
}
}
?>
____________________________________________________________________
کدهای زیر را در پوشه tmpl برای فایل default.php ذخیره نمایید
توجه:
پوشه tmpl در پوشه mod_helloworld در ابتدای کار ایجاد نمودیم.
<?php // no direct access
defined( '_JEXEC' ) or die( 'Restricted access' ); ?>
<?php echo $hello; ?>
___________________________________________________________________________
کد های زیر را برای فایل xml در پوشه mod_helloworld به نام mod_hellowoeld.xml ذخیره نمایید
<?xml version="1.0" encoding="utf-8"?>
<install type="module" version="1.5.0">
<name>Hello, World!</name>
<author>John Doe</author>
<version>1.5.0</version>
<description>A simple Hello, World! module.</description>
<files>
<filename>mod_helloworld.xml</filename>
<filename module="mod_helloworld">mod_helloworld.php</filename>
<filename>index.html</filename>
<filename>helper.php</filename>
<filename>tmpl/default.php</filename>
<filename>tmpl/index.html</filename>
</files>
<params>
</params>
</install>
_______________________________________________________________________
جهت امنیت ماژول کدهای زیر را برای ساخت فایل index.html در پوشه mod_helloworld استفاده نمایید
<html><body bgcolor="#FFFFFF"></body></html>
_______________________________________________________________________
حال پوشه mod_helloworld را به فرمت zip فشرده سازید
_______________________________________________________________________
سپس می توانید فایل فشرده را از مسیر
افرونه ها==> نصب/حذف
آپلود نمایید ...
آنچه مشاهده می شود نصب ماژول جدید به نام Hello, World! است که این نام در کدهای xml که ساخته ایم تعیین می شود.
_______________________________________________________________________
بررسی کدهای فایل های ساخته شده در یادداشت بعدی
موفق باشید...
دفتر انتشارات اسلامی وابسته به جامعه مدرسین حوزه علمیه قم
سیستم طراحی شده:
مدیریت محتوا cms