آموزش ساخت یک ماژول ساده مجنتو

آموزش ساخت یک ماژول ساده مجنتو

Magento را می توان به جرات قدرتمند ترین سیستم فروشگاهی آنلاین نام برد که در زمان ثبت این پست، نسخه ی 1.8 Community را می توانید از آدرس http://www.magentocommerce.com/download دانلود کنید. Magento یک سیستم کاملا ماژولار هست و هر توسعه دهنده برای کار بر روی این سیستم نیاز به داشتن دانشی پایه برای اضافه کردن یک ماژول به این سیستم می باشد. 

معماری پایه ی Magento تعریف شده بر MVC معروف است با این تفاوت که لایه ی View را دو بخش Layout و Blocks تشکیل میدهند. برای ایجاد یک ماژول ساده بر روی Magento باید شرح عملیات زیر را انجام دهید.

 

هدف: ایجاد یک ماژول ساده با خروجی Hello World

قدم اول: فایل 

/etc/modules/WORLD_HelloWorld.xml

را بسازید، هر ماژول در Magento دارای نام و Namespace میباشد. که در اینجا World همان Namespace و HelloWorld نام ماژول است. ( Namescpace_ModuleName )

کد زیر را در در فایلی که ساختید قرار دهید.

<?xml version="1.0"?>
<config>
         <modules>
                <WORLD_HelloWorld>
                        <active>true</active>
                        <codePool>local</codePool>
                </WORLD_HelloWorld>
         </modules>
</config>

 

قدم دوم: 

1.  Class Controller ماژول را در 

app/code/local/WORLD/HelloWorld/controllers/IndexController.php

بسازید و کد زیر را در آن قرار دهید.

class WORLD_HelloWorld_IndexController extends Mage_Core_Controller_Front_Action
{
    public function indexAction()
    {
     $this->loadLayout(array('default'));
     $this->renderLayout();
    }
}

2.  Block Class را در 

app/code/local/WORLD/HelloWorld/Block/HelloWorld.php

بسازید و کد زیر را در آن قرار دهید.

 

class WOLRD_HelloWorld_Block_HelloWorld extends Mage_Core_Block_Template
{
  // methods
}

 

3. فایل تنظیمات را در شاخه

app/code/local/WORLD/HelloWorld/etc/config.xml

بسازید و کد زیر را در آن قرار دهید.

<?xml version="1.0"?>
<config>
    <global>
        <modules>
                <world_helloworld>
                        <version>0.1.0</version>
                </world_helloworld>
        </modules>
    <blocks>
            <helloworld>
                <rewrite>
         <helloworld>WORLD_HelloWorld_Block_HelloWorld</helloworld>
        </rewrite>
            </helloworld>
     </blocks>
 
        </global>
       <frontend>
                <routers>
                        <helloworld>
                                <use>standard</use>
                                <args>
                                      <module>WORLD_HelloWorld</module>
                                      <frontName>helloworld</frontName>
                                </args>
                        </helloworld>
                </routers>
        <layout>
            <updates>
                <helloworld>
                      <file>helloworld.xml</file>
                </helloworld>
            </updates>
            </layout>
        </frontend>
</config>

قدم سوم: تعریف در Template و Frontend

1. فایل زیر را در شاخه ی زیر بسازید

app/design/frontend/default/default/layout/helloworld.xml

و محتوای زیر را در آن قرار دهید:

<?xml version="1.0"?>
 
    <layout version="0.1.0">
 
        <helloworld_index_index>
            <reference name="root">
                <action method="setTemplate"><template>page/1column.phtml</template></action>
            </reference>
            <reference name="content">
                <block type="helloworld/helloworld" name="hello" template="helloworld/helloworld.phtml"/>
            </reference>
        </helloworld_index_index>
 
    </layout>

2. یک فایل زیر در شاخه ی زیر بسازید:

app/design/frontend/WORLD/default/template/helloworld/helloworld.phtml 

و متنی ( هر چی دلتون خواست ) داخلش بنویسید.

 

قدم آخر: 

ماژولتون رو ببینید، اینجا:

http://localhost/projectname/index.php/helloworld/

 

خوب دیگه، هر مشکلی بود چیزیو نفهمیدید یا سوالی دارید رابطه با مجنتو همینجا تو نظرات بگید. :)

۰ ۱ دیدگاه

دیدگاه‌ها (۱)

مرسی از آموزش خوبیون مطالب بیشتری ئرباره مجنتو دارید و اکه میشه برام بذارید


ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی