วิธีการสร้าง Basic Module ของ Magento

คู่มือ แชร์วิธีใช้งาน Magento ทุกเวอร์ชั่น ตั้งแต่ การติดต้้งและใช้งานต่างๆ การอัพเกรด การ Backup ทุกเรื่องของการทำเว็บขายของ

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
mcmakdonal
PHP Super Member
PHP Super Member
โพสต์: 246
ลงทะเบียนเมื่อ: 18/05/2015 9:51 am

วิธีการสร้าง Basic Module ของ Magento

โพสต์โดย mcmakdonal » 06/07/2015 10:54 am

1. ไปที่ App -> etc -> Modules ให้ทำการสร้างไฟล์ xml ในที่นี้จะใช้ชื่อ Hello_Monday.xml (Hello คือ ชื่อ Folder ในการเก็บ Module | Monday คือชื่อ Module ของเรา)

2015-07-06_10-37-55.jpg
2015-07-06_10-37-55.jpg (28.49 KiB) เปิดดู 799 ครั้ง


แล้วพิมพ์ใค้ดตามนี้ลงไป

โค้ด: เลือกทั้งหมด

<?xml version="1.0" encoding="UTF-8"?>
<config>
    <modules>
        <Hello_Monday>
        <active>true</active>
        <codePool>local</codePool>
        </Hello_Monday>
    </modules>
</config>


2. ไปที่ App -> code -> local (ถ้าไม่มี Folder Local ก็ให้ทำการสร้างขึ้นมาเอง) แล้วสร้าง Folder Hello -> แล้วสร้าง Folder Monday

2015-07-06_10-41-01.jpg
2015-07-06_10-41-01.jpg (25.33 KiB) เปิดดู 799 ครั้ง


3. ภายใน Folder Monday ให้สร้าง Folder ชื่อ controllers แล้วใน controllers ให้สร้างไฟล์ php ชื่อ IndexController.php

2015-07-06_10-43-07.jpg
2015-07-06_10-43-07.jpg (31.54 KiB) เปิดดู 799 ครั้ง


ใน IndexController ให้พิมพ์โค้ดตามนี้


โค้ด: เลือกทั้งหมด

<?php
Class Hello_Monday_IndexController extends Mage_Core_Controller_Front_Action
{
    public function IndexAction()
    {
                        Echo "Monday";
    }
}


จุดสังเกต ตรง Hello_Monday_Indexcontroller คือชื่อ Folder _Module_indexCOntroller

4. ต่อมาให้สร้าง Folder ใน Monday ชื่อ etc แล้วให้สร้างไฟล์ xml ชื่อว่า config.xml

2015-07-06_10-46-02.jpg
2015-07-06_10-46-02.jpg (30.78 KiB) เปิดดู 799 ครั้ง


ใน config พิมพ์ โค้ด

โค้ด: เลือกทั้งหมด

<?xml version="1.0" encoding="UTF-8"?>
<config>
    <modules>
        <Hello_Monday>
            <version>1.0.0</version>
        </Hello_Monday>
    </modules>
    <frontend>
        <routers>
            <Monday>
                <use>standard</use>
                <args>
                    <module>Hello_Monday</module>
                    <frontName>Hello</frontName>
                </args>
            </Monday>
        </routers>
    </frontend>
</config>


จุดสังเกต ตรง Tag <frontName> ข้างใน Tag นั้นจะเป็นชื่อของ url ในการเข้าใช้งาน Module ของเรา ในตัวอย่างใช้ Hello วิธีเข้าก็จะเป็น localhost/magento/hello

5. จากนั้นทำการ เคลียร cache แล้วทำการเข้า localhost/magento/hello

2015-07-06_10-50-02.jpg
2015-07-06_10-50-02.jpg (15.66 KiB) เปิดดู 799 ครั้ง


6. ต่อไปทำการสร้าง layout ของ magento นะครับ ให้ไปที่ไฟล์ IndexController แล้วให้เพิ่มโค้ดเป็น

โค้ด: เลือกทั้งหมด

<?php
Class Hello_Monday_IndexController extends Mage_Core_Controller_Front_Action
{
    public function IndexAction()
    {
        $this->loadLayout();
        $this->renderLayout();
    }
}


จะได้ผลลัพท์

2015-07-06_10-52-23.jpg


7. จะทำการเพิ่มข้อความลงใน layout ให้เพิ่มโค้ด ลงใน IndexController

โค้ด: เลือกทั้งหมด

<?php
Class Hello_Monday_IndexController extends Mage_Core_Controller_Front_Action
{
    public function IndexAction()
    {
        $this->loadLayout();
        $this->renderLayout();
       
        Mage::getSingleton('core/session')->addSuccess("Hello Monday");
    }
}


จะได้ผลลัพท์

2015-07-06_10-53-58.jpg



สามารถ Download ไฟล์ตัวอย่างได้ที่นี้ครับ > คลิก
รูปภาพ

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 18927
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: วิธีการสร้าง Basic Module ของ Magento

โพสต์โดย mindphp » 16/07/2015 12:03 am

:like:
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: viewforum.php?f=29
รับอบรม และพัฒนาระบบ: viewtopic.php?f=6&t=2042


  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ย้อนกลับไปยัง

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: 2 และ บุคคลทั่วไป 0 ท่าน