Q - วิธีการ Add Module แล้วในไปแสดงที่แถบเมนูในส่วนของหน้า ACP ในphpbb

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: Q - วิธีการ Add Module แล้วในไปแสดงที่แถบเมนูในส่วนของหน้า ACP ในphpbb

Re: Q - วิธีการ Add Module แล้วในไปแสดงที่แถบเมนูในส่วนของหน้า ACP ในphpbb

โดย thatsawan » 12/10/2018 6:42 pm

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

public function update_data()
    {
        return array(
            
           
            
            array('module.add', array(
                'acp',
                'ACP_CAT_DOT_MODS',
                'SO_ACP'
            )),
            array('module.add', array(
                'acp',
                'SO_ACP',
                array(
                    'module_basename'    => '\mindphp_extenstion\xxxx\acp\xxxxx_module',
                    'modes'            => array('settings'),
                ),
            )),
        );
    } 

Re: Q - วิธีการ Add Module แล้วในไปแสดงที่แถบเมนูในส่วนของหน้า ACP ในphpbb

โดย thatsawan » 12/10/2018 6:39 pm

ok ขาดส่วนที่จะให้มันติดตัง้ให้

Re: Q - วิธีการ Add Module แล้วในไปแสดงที่แถบเมนูในส่วนของหน้า ACP ในphpbb

โดย Ittichai_chupol » 12/10/2018 6:38 pm

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


<?php

namespace mindphp\sample1\migrations;

class install_sample1 extends \phpbb\db\migration\migration {

    public function effectively_installed() {
        return isset($this->config['sample1_version']) && version_compare($this->config['sample1'], '1.0.0', '>=');
    }

    static public function depends_on() {
        return array('\phpbb\db\migration\data\v310\dev');
    }

    public function update_schema() {
        return array
            (
            'add_tables' => array(
                $this->table_prefix . 'sample1' => array(
                    'COLUMNS' => array(
                        'id' => array('UINT:11', null, 'auto_increment'),
                        'usertel_id' => array('UINT:11', 0),
                        'username' => array('VCHAR:100', ''),
                        'password' => array('VCHAR:100', ''),
                        'tell' => array('VCHAR:100', ''),
                        'pass_duplicate' => array('UINT:11', 0),
                    ),
                    'PRIMARY_KEY' => 'id',
                ),
            ),
        );
    }

    public function revert_schema() {
        return array(
            'drop_tables' => array(
                $this->table_prefix . 'sample1',
            ),
        );
    }

    public function update_data() {
        return array(
            array('config.add', array('tmb_newa_userid', '1')),
            array('config.add', array('tmb_newa_usergroup', '')),
        );
    }

}


Re: Q - วิธีการ Add Module แล้วในไปแสดงที่แถบเมนูในส่วนของหน้า ACP ในphpbb

โดย Ittichai_chupol » 12/10/2018 6:35 pm

ครับ ง้นคือต้องไปแก้ที่ส่วนของ ไฟล์ที่อยู่ ใน migrations

Re: Q - วิธีการ Add Module แล้วในไปแสดงที่แถบเมนูในส่วนของหน้า ACP ในphpbb

โดย thatsawan » 12/10/2018 6:32 pm

เหมือนทำถูกเเล้ว นะ เเต่ถ้าจะให้มัน install เเล้ว มีเมนูเลย ต้องไปทำต่อ ที่ ไฟล์ migrations

Re: Q - วิธีการ Add Module แล้วในไปแสดงที่แถบเมนูในส่วนของหน้า ACP ในphpbb

โดย Ittichai_chupol » 12/10/2018 6:31 pm

ไฟล์ที่ใช้
ไฟล์ m_mtb_news_module.php
ไฟล์ m_mtb_news_info.php
12-07.png
12-07.png (13.62 KiB) Viewed 1242 times

Re: Q - วิธีการ Add Module แล้วในไปแสดงที่แถบเมนูในส่วนของหน้า ACP ในphpbb

โดย Ittichai_chupol » 12/10/2018 6:17 pm

ไฟล์ m_mtb_news_module.php

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


<?php

namespace mindphp\sample1\acp;

class m_mtb_news_module {

    var $u_action;

    function main($id, $mode) {
        global $db, $user, $auth, $template, $cache, $request;
        global $config, $phpbb_root_path, $phpbb_admin_path, $phpEx;
        $this->config = $config;
        $this->request = $request;
        $this->tbl_name = 'acp_m_mtb_news';
    }

}







ไฟล์ m_mtb_news_info.php

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

<?php

namespace mindphp\sample1\acp;

if (!defined('IN_PHPBB')) {
    exit();
}

class m_mtb_news_info {

    function module() {
        return array(
            'filename' => '\mindphp\sample1\acp\m_mtb_news_module',
            'title' => 'ACP_MTB_NEWS_TITLE',
            'version' => '1.0.0',
            'modes' => array(
                'm_topic_portal' => array('title' => 'ACP_MTB_TITLE', 'auth' => 'ext_minphp/sample1', 'cat' => array('SAMPLE1_MOD')),
            ),
        );
    }

}


Re: Q - วิธีการ Add Module แล้วในไปแสดงที่แถบเมนูในส่วนของหน้า ACP ในphpbb

โดย Ittichai_chupol » 12/10/2018 6:06 pm

ไฟล์ m_mtb_news_info.php
12-02.png
12-02.png (33.31 KiB) Viewed 1251 times
ไฟล์ m_mtb_news_module.php
12-03.png
12-03.png (31.15 KiB) Viewed 1251 times

Re: Q - วิธีการ Add Module แล้วในไปแสดงที่แถบเมนูในส่วนของหน้า ACP ในphpbb

โดย thatsawan » 12/10/2018 5:55 pm

cap ภาพโครงสร้างไฟล์ เเละ ขอดูชื่อไฟล์ เเต่ละไฟล์ หน่อย

Q - วิธีการ Add Module แล้วในไปแสดงที่แถบเมนูในส่วนของหน้า ACP ในphpbb

โดย Ittichai_chupol » 12/10/2018 5:50 pm

ผมอยากทราบวิธีการที่จะทำให้ moduleที่เราสร้างนั้นไปแสดงที่ส่วนของแถบเมนู ของ ส่วน ACP ซึ่งเป็นส่วนที่ใช้จัดการสิ่งต่างๆของบอร์ด
ซึ่งได้ทำการสร้าง module เพิ่มเข้ามาในส่วนของระบบ แล้วแต่โดยปกติ ก้จะขึ้นไปที่แถบเมนูได้เลย เมื่อเราทำการ กดที่ ทำให้ใช้ได้
แต่ในส่วนที่ผมนั้น แสดงแค่ในส่วนของระบบ แต่ไม่แสดงในส่วนของแถบเมนู ดังรูป

รูปภาพ

จึงอยากทราบว่าจะแก้ไข้ได้อย่างไงบางครับ


โดยโคดที่ใช้นั้นมีส่วนส่วนคื่อ ไฟล์ m_mtb_news_info.php

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

<?php

namespace mindphp\sample1\acp;

if(!defined('IN_PHPBB'))
{
    exit();
}

class m_mtb_news_info
{
    function module(){
        return array(
            'filename'  => '\mindphp\sample1\acp\m_mtb_news_module',
            'title' => 'ACP_MTB_NEWS_TITLE',
            'version' => '1.0.0',
            'modes' => array(
                'm_topic_portal' => array('title' => 'ACP_MTB_TITLE' ,'auth' => 'ext_minphp/sample1' , 'cat' =>array('SAMPLE1_MOD')),

                
            ),
        );
    }
}


ไฟล์ m_mtb_news_module.php

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

<?php

namespace mindphp\sample1\acp;
class m_mtb_news_module{
    
    var $u_action;
    function main($id,$mode)
    {
        global $db ,$user , $auth,$template,$cache , $request;
        global  $config,$phpbb_root_path ,$phpbb_admin_path, $phpEx;
        $this->config = $config;
        $this->request = $request;
        $this->tbl_name = 'acp_m_mtb_news';
    }
}


ข้างบน