bbcode สำหรับการแสดงวิดีโอ ทั้งใน facebook และ youtube สามารถงานได้กรณี ที่เป็น https

PHP Knowledge เป็น บอร์ดรวามความรู้ php เน้นบทความ แนวทางการเขียนโปรแกรม บันทึกกันลืม เพื่อให้สมาชิกได้เขียนความรู้ที่ตัวเองมีให้สมาชิกท่านอื่นๆ ได้ เข้ามาอ่าน และ ไว้อ่านเองกันลืมด้วย

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

Post Reply
User avatar
Ittichai_chupol
PHP VIP Members
PHP VIP Members
Posts: 2985
Joined: 19/09/2018 10:33 am

bbcode สำหรับการแสดงวิดีโอ ทั้งใน facebook และ youtube สามารถงานได้กรณี ที่เป็น https

Post by Ittichai_chupol » 01/10/2019 3:55 pm

- เว็บบอร์ด phpbb นั้นเป็บเว็บบอร์ดที่มี code และ ฟั่งชั่น ตางๆ ที่สนับสนุนการใช้งาน ในส่วนต่างๆของเว็บ มาให้เป้นพื้นฐาน ตั้งแต่แรกติดตั้งอยู่ นั้นจึงทำให้ผุ้พัฒนา ไม่ต้องเสียเวลากับการที่จะต้องสร้าง ส่วนต่างขึ้นมาเองทั้งหมด เพียงแค่ปรับปรุง หรือ เสริมเพียงเเค่บางส่วนเข้าไปเท่านั้น ก็ทำให้เว็บบอร์ด สามารถทำงาน ตามที่เราต้องการ โดยวิธีการที่เราจะทำให้เว็บบอร์ด phpbb สามารถทำในส่วนที่ไม่ได้มีมากับตอนติดตั้งครั่งแรกนั้น คือการส่ร้าง ส่วนขยาย(Extension)

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

- ในส่วนขยายนั้นที่พัฒนาขึ้นมานั้น จะสามารถปรับเปลี่ยน หรือจะใส่อะไรเพิ่มเข้าไปใหม่ๆที่ต้องการลงไปใน เว็บบอร์ด phpbb หลายๆอยากทั้งที่ที่ยังไม่มีหรือมีอยู่แล้ว อย่างเช่นการเพิ่ม bbcode ลงไปได้โดยที่ไม่ต้องเสีเวลา เข้าไปในส่วนของการตั้งค่า bbcode เลย และใน bbcode ที่จะมีการเพิ่มเขจ้ามาบ่อยที่สุดคือ bbcode สำหรับแสดง Vedio
นั้นเอง แต่ทั้งนี้ bbcode สำหรับแสดง Vedio นั้น บางครั่ง จะแสดงได่เพียง facebook หรีือ youtube เพียงอย่างละอย่าง เท่านั้น และที่แย่ก็คือบางครั่ง อาจจะไม่สามารถที่จะแสดง บน เว็บที่เป็น https ได้ แต่จะเสนอ bbcode สำหรับแสดง Vedio ที่สามารถแสดงได้ Vedio facebook หรีือ youtube และใช้ได้ทั้ง เว็บที่เป็น https หรือ http

1.สร้าง Extension ขึ้นมาก่อน ศึกษาจากที่นี้
2.สร้าง โฟลเดอร์ migrations ใน ชโฟลเดอร์ Extension
3.สร้างไฟล์ php ชือ install_ชื่อ Extension เช่น Extension ชื่อว่า sample1 ก็ตั้งชื่อไฟล์ว่า install_sample1
4.จากนั้นนำโคดนี้ไปใส่

Code: Select all

<?php

namespace mindphp\ชื่อ Extension \migrations;

class install_ชื่อ Extension  extends \phpbb\db\migration\migration {

    public function effectively_installed() {
        return isset($this->config['ชื่อ Extension _flieh_version']) && version_compare($this->config['ชื่อ Extension'], '1.0.0', '>=');
    }

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

    public function update_data() {
        return array(
            array('custom', array(array($this, 'md_bbcodes_update'))),
            array('config.add', array('ชื่อ Extension ', '1.0.0')),
            array('config.add', array('ชื่อ Extension _alert', '1')),
            array('module.add', array(
                    'acp',
                    'ACP_CAT_DOT_MODS',
                    'ACP_ชื่อ Extension _TITLE'
                )),
            array('module.add', array(
                    'acp',
                    'ACP_ชื่อ Extension _TITLE',
                    array(
                        'module_basename' => '\mindphp\ชื่อ Extension \acp\ชื่อ Extension _module',
                        'modes' => array('topic_ชื่อ Extension '),
                    ),
                )),
        );
    }

    public function md_bbcodes_update() {
        $bbcode_data = array(
            'video' => array(
                'bbcode_helpline' => 'Insert video: [video]http://youtube.com/url[/video]',
                'bbcode_match' => '[video]{URL}[/video]',
                'bbcode_tpl' => "<div class='bbvideo' data-url='{URL}' style='width: 60%; height: 100%; margin: 2px 0; display: inline-block; background: #000; color: #fff; overflow: hidden; vertical-align: bottom; '><div style='height: 100%;'><script>if (typeof bbmedia == 'undefined') { bbmedia = true; var e = document.createElement('script'); e.async = true; e.src = './ext/mindphp/m_bbcode_upload_link/styles/thaivi/template/js/bbmedia.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(e, s); }</script></div><div style='text-align: right; height: 14px; margin-top: -14px; padding-right: 2px; font: 10px/10px Verdana; color: #555;'><a style='color: #105289; text-decoration: none;' href='http://phpbbex.com/' target='_blank'>phpBB</a> &#91;video&#93;</div></div>",
            ),
        );

        global $request, $user;
        $acp_manager_bbcode = new \mindphp\ชื่อ Extension \core\acp_ชื่อ Extension ($this->db, $request, $user, $this->phpbb_root_path, $this->php_ext);
        $acp_manager_bbcode->install_md_bbcodes($bbcode_data);
    }

}


5.โดยในส่วนของการเพิ่ม bbcode คือส่วนนี้

Code: Select all

        $bbcode_data = array(
            'video' => array(
                'bbcode_helpline' => 'Insert video: [video]http://youtube.com/url[/video]',
                'bbcode_match' => '[video]{URL}[/video]',
                'bbcode_tpl' => "<div class='bbvideo' data-url='{URL}' style='width: 60%; height: 100%; margin: 2px 0; display: inline-block; background: #000; color: #fff; overflow: hidden; vertical-align: bottom; '><div style='height: 100%;'><script>if (typeof bbmedia == 'undefined') { bbmedia = true; var e = document.createElement('script'); e.async = true; e.src = './ext/mindphp/m_bbcode_upload_link/styles/thaivi/template/js/bbmedia.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(e, s); }</script></div><div style='text-align: right; height: 14px; margin-top: -14px; padding-right: 2px; font: 10px/10px Verdana; color: #555;'><a style='color: #105289; text-decoration: none;' href='http://phpbbex.com/' target='_blank'>phpBB</a> &#91;video&#93;</div></div>",
            ),
        );
** โดย จะสังเกตุว่า จะมีการแบ่งออกเป็น 3 ส่วน เช่นเดียวกับ การที่เรากรอง bbocde ลงในช่องกรอกที่อยู่ในหน้าเพิ่ม bbocde ดังรูปภาพ **
Selection_999(2064).png
Selection_999(2064).png (37.18 KiB) Viewed 147 times

ซึ่งจากโคด กับ รูป จะมีความสัมพันธ์ ดังนี้

หมายเลข 1 จากในรูป คือส่วนของ bbcode_match
หมายเลข 2 จากในรูป คือส่วนของ bbcode_tpl
หมายเลข 3 จากในรูป คือส่วนของ bbcode_helpline

6.ในส่วนของ bbcode_helpline จะมีส่วนที่เป็น ./ext/mindphp/m_bbcode_upload_link/styles/thaivi/template/js/bbmedia.js ซึ่งคือตำแหน่งของส่วนที่เก็บ javasript สำหรับจัดดการการแสดงผลของวิดีโอ โดยมีชื่อว่า bbmedia.js
bbmedia.js.zip
(7.57 KiB) Downloaded 10 times
7.ตัวอย่างของการใช้งาน bbocde นี้

- วิดีโอ Youtube
index (1).png
index (1).png (242.79 KiB) Viewed 147 times
- วิดีโอ Facebook
index.png
index.png (268.92 KiB) Viewed 147 times

Post Reply

Return to “PHP Knowledge”

Who is online

Users browsing this forum: No registered users and 33 guests