การแจ้งเตือน WordPress ทำได้ง่าย
เผยแพร่แล้ว: 2022-03-10 WordPress ไม่มีระบบแจ้งเตือนใดๆ สิ่งที่คุณสามารถใช้ได้คือ wp_mail()
แต่การตั้งค่าทั้งหมดจะต้องได้รับการฮาร์ดโค้ด มิฉะนั้น คุณจะต้องสร้างหน้าจอการตั้งค่าแยกต่างหากเพื่อให้ผู้ใช้ปรับแต่งตัวเลือกต่างๆ ใช้เวลาหลายชั่วโมงในการเขียนระบบที่เชื่อถือได้ กำหนดค่าได้ และใช้งานง่าย แต่ไม่ใช่อีกต่อไป ฉันจะแสดงวิธีสร้างระบบการแจ้งเตือนของคุณเองภายในไม่กี่นาทีด้วยปลั๊กอินการแจ้งเตือนฟรี โดยการแจ้งเตือน ฉันหมายถึงการแจ้งเตือนทุกประเภท โดยส่วนใหญ่จะเป็นอีเมล แต่ด้วยปลั๊กอินที่เราจะใช้ คุณยังสามารถส่งเว็บฮุคและการแจ้งเตือนประเภทอื่นๆ ได้
ขณะสร้างโครงการให้กับลูกค้ารายหนึ่งของฉัน ฉันพบปัญหานี้ตามที่ได้อธิบายไว้ ข้อกำหนดคือการมีการแจ้งเตือนทางอีเมลที่กำหนดเองหลายรายการพร้อมเนื้อหาที่กำหนดค่าได้ แทนที่จะฮาร์ดโค้ดทุกการแจ้งเตือน ฉันตัดสินใจสร้างระบบ ฉันต้องการให้มันมีความยืดหยุ่นมาก และเป้าหมายก็คือเพื่อให้สามารถเขียนโค้ดสถานการณ์ใหม่ได้โดยเร็วที่สุด
รหัสที่ฉันเขียนคือจุดเริ่มต้นของเส้นทางการพัฒนาที่ยอดเยี่ยม ปรากฎว่าระบบที่ฉันสร้างนั้นยืดหยุ่นพอที่จะทำงานเป็นแพ็คเกจแยกต่างหากได้ นี่คือที่มาของปลั๊กอินการแจ้งเตือน
สมมติว่าคุณต้องการส่งอีเมลเกี่ยวกับโปรไฟล์ผู้ใช้ที่ได้รับการอัปเดตโดยสมาชิกเว็บไซต์ของคุณ WordPress ไม่มีฟังก์ชันดังกล่าว แต่ด้วยปลั๊กอินการแจ้งเตือน คุณสามารถสร้างอีเมลดังกล่าวได้ในเวลาไม่กี่นาที หรือสมมติว่าคุณต้องการซิงโครไนซ์ผลิตภัณฑ์ WooCommerce ของคุณกับซอฟต์แวร์ของบริษัทอื่นโดยส่งเว็บฮุคไปยัง URL แยกต่างหากทุกครั้งที่มีการเผยแพร่ผลิตภัณฑ์ใหม่ ที่ทำได้ง่ายกับปลั๊กอินเช่นกัน
บทเรียนที่ได้รับขณะพัฒนาปลั๊กอิน WordPress
การพัฒนาและการสนับสนุนปลั๊กอินที่ดีทำให้มีการดาวน์โหลดมากขึ้น ดาวน์โหลดมากขึ้นหมายถึงเงินมากขึ้นและชื่อเสียงที่ดีขึ้น เรียนรู้วิธีพัฒนาผลิตภัณฑ์คุณภาพดีด้วยกฎทองเจ็ดประการ อ่านบทความที่เกี่ยวข้อง →
ในบทความนี้ คุณจะได้เรียนรู้วิธีผสานรวมปลั๊กอินในแอปพลิเคชันของคุณเอง และวิธีการสร้างระบบการแจ้งเตือนขั้นสูงของ WordPress อย่างรวดเร็วและง่ายดายกว่าที่เคย
ในบทความนี้ เราจะพูดถึง:
- วิธีการติดตั้งปลั๊กอิน,
- แนวคิดเบื้องหลังปลั๊กอินและสถาปัตยกรรม
- การสร้างสถานการณ์ที่กำหนดเองสำหรับการแจ้งเตือน
- การสร้างการกระทำ (ขั้นตอนที่ 1 ของกระบวนการ)
- การสร้างทริกเกอร์ (ขั้นตอนที่ 2 ของกระบวนการ)
- การสร้างประเภทการแจ้งเตือนที่กำหนดเอง
- วิธีเปิดใช้งานโหมดไวท์เลเบลและรวมปลั๊กอินในแพ็คเกจของคุณ
การติดตั้งปลั๊กอิน
ในการสร้างสถานการณ์ของคุณเอง คุณจะต้องมีปลั๊กอินการแจ้งเตือน เพียงติดตั้งจากที่เก็บ WordPress.org ในแดชบอร์ด WordPress ของคุณ หรือดาวน์โหลดจากที่เก็บ GitHub

ต่อมาในบทความ คุณจะได้เรียนรู้วิธีซ่อนปลั๊กอินนี้จากลูกค้าของคุณ และทำให้ปลั๊กอินทำงานเป็นส่วนหนึ่งของปลั๊กอินหรือธีมของคุณ
แนวคิดของปลั๊กอิน
ก่อนเข้าสู่โปรแกรมแก้ไขโค้ด คุณจะต้องรู้ว่าสถาปัตยกรรมของปลั๊กอินเป็นอย่างไร ปลั๊กอินประกอบด้วยส่วนประกอบต่างๆ มากมาย แต่แกนหลักของมันคือคลาสนามธรรมเพียงไม่กี่คลาส
ส่วนประกอบหลักคือ:
- การแจ้งเตือน
ซึ่งอาจเป็นอีเมล เว็บฮุค การแจ้งเตือนแบบพุชหรือ SMS - ทริกเกอร์
นี่คือสิ่งที่ส่งการแจ้งเตือน เป็นการกระทำของ WordPress อย่างมีประสิทธิภาพ - แท็กการรวม
นี่เป็นส่วนเล็กๆ ของเนื้อหาแบบไดนามิก เช่น{post_title}
เพื่อให้คุณมีความคิดที่ดีขึ้นเกี่ยวกับวิธีการเล่นร่วมกัน คุณสามารถดูวิดีโอสั้นๆ นี้:
แกนหลักของปลั๊กอินการแจ้งเตือนเป็นเพียง API เท่านั้น ทริกเกอร์เริ่มต้นทั้งหมด เช่น โพสต์ที่เผยแพร่ และ ผู้ใช้ที่ลงทะเบียน เป็นสิ่งที่สร้างขึ้นจาก API นั้น
เนื่องจากปลั๊กอินถูกสร้างขึ้นสำหรับนักพัฒนา การเพิ่มทริกเกอร์ของคุณเองจึงง่ายมาก สิ่งที่ต้องมีคือการดำเนินการของ WordPress ซึ่งเป็นเพียงโค้ดบรรทัดเดียวและการประกาศคลาส
สถานการณ์ที่กำหนดเอง
มาสร้างสถานการณ์ง่ายๆ กัน เราจะเพิ่มพื้นที่ข้อความและปุ่มที่ด้านล่างของแต่ละโพสต์ เพื่อให้สามารถรายงานจุดบกพร่องในบทความได้ จากนั้น เราจะเรียกใช้การแจ้งเตือนเมื่อส่งแบบฟอร์ม

สถานการณ์นี้ครอบคลุมในบทความอื่น "การส่งแบบฟอร์มโดยไม่ต้องโหลดหน้าซ้ำ: การติดตั้ง AJAX ใน WordPress"
เพื่อความง่าย เรามาทำให้มันเป็นรูปแบบคงที่ แต่ไม่มีปัญหาในการวางการดำเนินการในตัวจัดการ AJAX แทนที่จะเป็นใน wp_mail()
มาสร้างแบบฟอร์มกันเถอะ
แบบฟอร์ม
add_filter( 'the_content', 'report_a_bug_form' ); function report_a_bug_form( $content ) { // Display the form only on posts. if ( ! is_single() ) { return $content; } // Add the form to the bottom of the content. $content .= '<form action="' . admin_url( 'admin-post.php' ) . '" method="POST"> <input type="hidden" name="post_id" value="' . get_ID() . '"> <input type="hidden" name="action" value="report_a_bug"> <textarea name="message" placeholder="' . __( 'Describe what\'s wrong...', 'reportabug' ) . '"></textarea> <button>' . __( 'Report a bug', 'reportabug' ) . '</button> </div>'; return $content; }
โปรดทราบว่าองค์ประกอบหลายอย่างขาดหายไป เช่น WordPress nonce การจัดการข้อผิดพลาด และการแสดงผลลัพธ์ของการดำเนินการ แต่สิ่งเหล่านี้ไม่ใช่หัวข้อของบทความนี้ เพื่อให้เข้าใจวิธีจัดการกับการกระทำเหล่านี้ได้ดีขึ้น โปรดอ่านบทความที่กล่าวถึงข้างต้น
เตรียมปฏิบัติการ
ในการทริกเกอร์การแจ้งเตือน เราจำเป็นต้องดำเนินการเพียงครั้งเดียว ไม่จำเป็นต้องเป็นการดำเนินการที่กำหนดเองเหมือนด้านล่าง คุณสามารถใช้การดำเนินการใด ๆ ที่ลงทะเบียนแล้วใน WordPress core หรือปลั๊กอินอื่น
ตัวจัดการแบบฟอร์มและการดำเนินการ
add_action( 'admin_post_report_a_bug', 'report_a_bug_handler' ); add_action( 'admin_post_nopriv_report_a_bug', 'report_a_bug_handler' ); function report_a_bug_handler() { do_action( 'report_a_bug', $_POST['post_id'], $_POST['message'] ); // Redirect back to the article. wp_safe_redirect( get_permalink( $_POST['post_id'] ) ); exit; }
คุณสามารถอ่านเพิ่มเติมเกี่ยวกับวิธีใช้ไฟล์ admin-post.php
ใน WordPress Codex
นี่คือทั้งหมดที่เราต้องการเพื่อสร้างการแจ้งเตือนที่กำหนดเองและกำหนดค่าได้ มาสร้างทริกเกอร์กันเถอะ
การลงทะเบียน Custom Trigger
ทริกเกอร์เป็นเพียงคลาสธรรมดาที่ขยายทริกเกอร์นามธรรม ชั้นเรียนนามธรรมทำทุกอย่างให้คุณ มันทำให้ทริกเกอร์ในรายการ และจัดการการแจ้งเตือนและรวมแท็ก
เริ่มต้นด้วยการประกาศทริกเกอร์
คำจำกัดความทริกเกอร์ขั้นต่ำ
class ReportBug extends \BracketSpace\Notification\Abstracts\Trigger { public function __construct() { // Add slug and the title. parent::__construct( 'reportabug', __( 'Bug report sent', 'reportabug' ) ); // Hook to the action. $this->add_action( 'report_a_bug', 10, 2 ); } public function merge_tags() {} }
สิ่งที่คุณต้องทำคือเรียกตัวสร้างพาเรนต์และส่งตัวบุ้งทริกเกอร์และชื่อที่ดี
จากนั้น เราสามารถเชื่อมต่อกับการกระทำที่เรากำหนดเองได้ วิธีการ add_action
นั้นคล้ายกับ add_action()
มาก; ดังนั้น พารามิเตอร์ที่สองคือลำดับความสำคัญ และพารามิเตอร์สุดท้ายคือจำนวนอาร์กิวเมนต์ มีเพียงพารามิเตอร์การเรียกกลับเท่านั้นที่หายไปเนื่องจากคลาสนามธรรมทำเพื่อเรา
เมื่อมีคลาส เราก็สามารถลงทะเบียนเป็นทริกเกอร์ใหม่ของเราได้
register_trigger( new ReportBug() );
นี่เป็นทริกเกอร์ที่ทำงานได้อย่างสมบูรณ์ คุณสามารถเลือกจากรายการเมื่อเขียนการแจ้งเตือนใหม่

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

ในการทำเช่นนี้ เราสามารถเพิ่มวิธีอื่นในคลาสทริกเกอร์ได้ นี่คือการเรียกกลับการดำเนินการ ซึ่งเราสามารถตรวจจับอาร์กิวเมนต์ของการดำเนินการได้
การจัดการข้อโต้แย้งการดำเนินการ
public function action( $post_ID, $message ) { // If the message is empty, don't send any notifications. if ( empty( $message ) ) { return false; } // Set the trigger properties. $this->post = get_post( $post_ID ); $this->message = $message; }
สังเกตการ return false;
คำแถลง. หากคุณคืนค่า false
จากวิธีนี้ ทริกเกอร์จะหยุดและจะไม่มีการส่งการแจ้งเตือน ในกรณีของเรา เราไม่ต้องการให้ส่งการแจ้งเตือนด้วยข้อความเปล่า ในโลกแห่งความเป็นจริง คุณต้องการตรวจสอบก่อนที่จะส่งแบบฟอร์ม
จากนั้น เราก็แค่ตั้งค่าคุณสมบัติของคลาสทริกเกอร์ ออบเจ็กต์การโพสต์ที่สมบูรณ์ และข้อความ ตอนนี้ เราสามารถใช้แท็กเหล่านี้เพื่อเพิ่มแท็กผสานไปยังทริกเกอร์ของเราได้ เราสามารถเติมเนื้อหาของเมธอด merge_tags
ที่เราประกาศไว้ก่อนหน้านี้ได้
การกำหนด Merge Tags
public function merge_tags() { $this->add_merge_tag( new \BracketSpace\Notification\Defaults\MergeTag\UrlTag( array( 'slug' => 'post_url', 'name' => __( 'Post URL', 'reportabug' ), 'resolver' => function( $trigger ) { return get_permalink( $trigger->post->ID ); }, ) ) ); $this->add_merge_tag( new \BracketSpace\Notification\Defaults\MergeTag\StringTag( array( 'slug' => 'post_title', 'name' => __( 'Post title', 'reportabug' ), 'resolver' => function( $trigger ) { return $trigger->post->post_title; }, ) ) ); $this->add_merge_tag( new \BracketSpace\Notification\Defaults\MergeTag\HtmlTag( array( 'slug' => 'message', 'name' => __( 'Message', 'reportabug' ), 'resolver' => function( $trigger ) { return nl2br( $trigger->message ); }, ) ) ); $this->add_merge_tag( new \BracketSpace\Notification\Defaults\MergeTag\EmailTag( array( 'slug' => 'post_author_email', 'name' => __( 'Post author email', 'reportabug' ), 'resolver' => function( $trigger ) { $author = get_userdata( $trigger->post->post_author ); return $author->user_email; }, ) ) ); }
การดำเนินการนี้จะเพิ่มแท็กการรวมสี่แท็ก ซึ่งทั้งหมดพร้อมใช้งานในขณะที่กำลังสร้างการแจ้งเตือน
แท็กการผสานเป็นตัวอย่างของคลาสพิเศษ คุณจะเห็นว่ามีแท็กเหล่านี้หลายประเภท และเรากำลังใช้แท็กเหล่านี้โดยขึ้นอยู่กับค่าที่ส่งคืนจากตัวแก้ไข คุณสามารถดูแท็กผสานทั้งหมดในที่เก็บ GitHub
แท็กการผสานทั้งหมดจะถูกเพิ่มโดยใช้เมธอด add_merge_tag
และต้องใช้อาร์เรย์การกำหนดค่าที่มีสามคีย์:
- กระสุน
ค่าคงที่ที่จะใช้ในการแจ้งเตือน (เช่น{post_url}
) - ชื่อ
ป้ายกำกับที่แปลแล้วสำหรับแท็กการผสาน - ตัวแก้ไข
ฟังก์ชันที่แทนที่แท็กผสานด้วยค่าจริง
ตัวแก้ไขไม่จำเป็นต้องเป็นตัวปิดเหมือนในกรณีของเรา แต่ใช้งานสะดวก คุณสามารถส่งชื่อฟังก์ชันเป็นสตริงหรืออาร์เรย์ได้หากเป็นเมธอดในคลาสอื่น
ในฟังก์ชันตัวแก้ไข มีอาร์กิวเมนต์เดียวเท่านั้น: อินสแตนซ์คลาสทริกเกอร์ ดังนั้นเราจึงสามารถเข้าถึงคุณสมบัติที่เราเพิ่งตั้งค่าในวิธี action
การและคืนค่าที่เราต้องการ
และนั่นคือทั้งหมด! แท็กการรวมไม่สามารถใช้กับทริกเกอร์ของเราได้ และเราสามารถตั้งค่าการแจ้งเตือนรายงานจุดบกพร่องได้มากเท่าที่ต้องการ

การสร้างประเภทการแจ้งเตือนที่กำหนดเอง
ปลั๊กอินการแจ้งเตือนไม่เพียงแต่ให้ทริกเกอร์ที่กำหนดเองเท่านั้น แต่ยังมีประเภทการแจ้งเตือนที่กำหนดเองอีกด้วย ปลั๊กอินมาพร้อมกับสองประเภท ได้แก่ อีเมลและเว็บฮุค แต่มี API แบบง่ายในการลงทะเบียนการแจ้งเตือนของคุณเอง
มันทำงานคล้ายกันมากกับทริกเกอร์ที่กำหนดเอง: คุณต้องมีคลาสและการเรียกใช้ฟังก์ชันง่ายๆ เพียงฟังก์ชันเดียวเพื่อลงทะเบียน
ฉันกำลังแสดงตัวอย่างเท่านั้น การใช้งานจะแตกต่างกันไปตามระบบที่คุณต้องการรวมเข้าด้วยกัน คุณอาจต้องรวมไลบรารีของบุคคลที่สามและเรียกใช้ API หรือดำเนินการในระบบไฟล์ของ WordPress แต่คำแนะนำด้านล่างนี้จะตั้งค่าขั้นตอนพื้นฐานให้คุณ
เริ่มต้นด้วยการประกาศคลาส:
class CustomNotification extends \BracketSpace\Notification\Abstracts\Notification { public function __construct() { // Add slug and the title. parent::__construct( 'custom_notification', __( 'Custom Notification', 'textdomain' ) ); } public function form_fields() {} public function send( \BracketSpace\Notification\Interfaces\Triggerable $trigger ) {} }
ในตัวสร้าง คุณต้องเรียกตัวสร้างคลาสของพาเรนต์ และส่งตัวทากและชื่อที่ดีของการแจ้งเตือน
ใช้เมธอด form_fields
เพื่อสร้างฟอร์มการกำหนดค่าสำหรับการแจ้งเตือน (เช่น การแจ้งเตือนทางอีเมลจะมีหัวเรื่อง เนื้อหา ฯลฯ)
วิธีการ send
ถูกเรียกโดยทริกเกอร์ และเป็นที่ที่คุณสามารถเรียกใช้ API บุคคลที่สามที่คุณต้องการรวมเข้าด้วยกัน
ถัดไป คุณต้องลงทะเบียนด้วยฟังก์ชัน register_notification
register_trigger( new CustomNotification() );
แบบแจ้งความจำนง
อาจมีบางกรณีที่คุณได้รับการแจ้งเตือนโดยไม่มีฟิลด์การกำหนดค่า ไม่เป็นไร แต่เป็นไปได้มากว่าคุณต้องการให้ผู้ดูแลระบบ WordPress สามารถกำหนดค่าเนื้อหาการแจ้งเตือนด้วยแท็กผสาน
นั่นเป็นเหตุผลที่เราจะลงทะเบียนสองฟิลด์ ชื่อและข้อความ ในเมธอด form_fields
ดูเหมือนว่านี้:
public function form_fields() { $this->add_form_field( new \BracketSpace\Notification\Defaults\Field\InputField( array( 'label' => __( 'Title', 'textdomain' ), 'name' => 'title', 'resolvable' => true, 'description' => __( 'You can use merge tags', 'textdomain' ), ) ) ); $this->add_form_field( new \BracketSpace\Notification\Defaults\Field\TextareaField( array( 'label' => __( 'Message', 'textdomain' ), 'name' => 'message', 'resolvable' => true, 'description' => __( 'You can use merge tags', 'textdomain' ), ) ) ); }
อย่างที่คุณเห็น แต่ละฟิลด์เป็นอ็อบเจ็กต์และลงทะเบียนด้วยเมธอด add_form_field
สำหรับรายการประเภทฟิลด์ที่มีอยู่ทั้งหมด โปรดไปที่ที่เก็บ GitHub
แต่ละฟิลด์มีป้ายกำกับที่แปลได้ ชื่อที่ไม่ซ้ำ และชุดคุณสมบัติอื่นๆ คุณสามารถกำหนดได้ว่าควรแก้ไขฟิลด์ด้วยแท็กผสานด้วยคีย์ที่ resolvable
ได้หรือไม่ ซึ่งหมายความว่าเมื่อมีคนใช้แท็กการรวม {post_title}
ในช่องนี้ แท็กจะถูกเปลี่ยนชื่อตามชื่อจริงของโพสต์ คุณยังสามารถระบุฟิลด์ description
เพื่อประสบการณ์การใช้งานที่ดียิ่งขึ้น
ณ จุดนี้ คุณสามารถใช้ประเภทการแจ้งเตือนที่กำหนดเองในอินเทอร์เฟซของปลั๊กอินที่มีประเภททริกเกอร์ใดก็ได้

กำลังส่งการแจ้งเตือนที่กำหนดเอง
เพื่อให้ใช้งานได้จริง เราต้องใช้เมธอด send
ในการประกาศคลาสการแจ้งเตือน นี่คือที่ที่คุณสามารถเขียนการเรียก API หรือใช้ระบบไฟล์ของ WordPress หรือ WordPress API และทำทุกอย่างที่คุณต้องการด้วยข้อมูลการแจ้งเตือน
นี่คือวิธีที่คุณสามารถเข้าถึงได้:
public function send( \BracketSpace\Notification\Interfaces\Triggerable $trigger ) { $title = $this->data['title']; $message = $this->data['message']; // @todo Write the integration here. }
ณ จุดนี้ ฟิลด์ทั้งหมดได้รับการแก้ไขด้วยแท็กการรวม ซึ่งหมายความว่าตัวแปรพร้อมที่จะจัดส่ง
ที่มอบความเป็นไปได้ไม่รู้จบในการรวม WordPress เข้ากับบริการใดๆ ไม่ว่าจะเป็นผู้ให้บริการ SMS ในพื้นที่ของคุณ การติดตั้ง WordPress อื่น หรือ API ภายนอกใดๆ ที่คุณต้องการจะสื่อสารด้วย
การติดฉลากสีขาวและการรวมกลุ่มปลั๊กอิน
ไม่เหมาะที่จะสร้างการพึ่งพาปลั๊กอินที่สามารถปิดใช้งานและถอนการติดตั้งได้ง่าย หากคุณกำลังสร้างระบบที่จำเป็นต้องมีปลั๊กอินการแจ้งเตือนอยู่เสมอ คุณสามารถรวมปลั๊กอินไว้ในโค้ดของคุณเองได้
หากคุณเคยใช้ปลั๊กอิน Advanced Custom Fields มาก่อน คุณอาจคุ้นเคยกับขั้นตอนการรวมกลุ่ม เพียงคัดลอกไฟล์ของปลั๊กอินไปยังปลั๊กอินหรือธีมของคุณ แล้วเรียกใช้ปลั๊กอินด้วยตนเอง
ปลั๊กอินการแจ้งเตือนทำงานคล้ายกันมาก แต่การเรียกใช้ปลั๊กอินนั้นง่ายกว่าการใช้ฟิลด์กำหนดเองขั้นสูงมาก
เพียงคัดลอกไฟล์ของปลั๊กอิน และต้องมีไฟล์เดียวจึงจะใช้งานได้
require_once( 'path/to/plugin/notification/load.php' );
ปลั๊กอินจะค้นหาตำแหน่งและ URL
แต่การรวมปลั๊กอินอาจไม่เพียงพอ บางทีคุณอาจต้องซ่อนอย่างสมบูรณ์ว่าคุณกำลังใช้โซลูชันของบุคคลที่สามนี้ นี่คือเหตุผลที่ปลั๊กอินการแจ้งเตือนมาพร้อมกับโหมดไวท์เลเบล ซึ่งคุณสามารถเปิดใช้งานได้ตลอดเวลา
นอกจากนี้ยังเปิดใช้งานเป็นการเรียกใช้ฟังก์ชันครั้งเดียว:
notification_whitelabel( array( // Admin page hook under which the Notifications will be displayed. 'page_hook' => 'edit.php?post_type=page', // If display extensions page. 'extensions' => false, // If display settings page. 'settings' => false, // Limit settings access to user IDs. // This works only if settings are enabled. 'settings_access' => array( 123, 456 ), ) );
ตามค่าเริ่มต้น การเรียกใช้ฟังก์ชันนี้จะซ่อนทริกเกอร์เริ่มต้นทั้งหมด
การใช้ทั้งสองเทคนิค การติดฉลากสีขาวและการรวมกลุ่ม จะซ่อนการอ้างอิงถึงที่มาของปลั๊กอินโดยสมบูรณ์ และโซลูชันจะทำงานเป็นส่วนหนึ่งของระบบของคุณอย่างสมบูรณ์
บทสรุป
ปลั๊กอินการแจ้งเตือนเป็นโซลูชันแบบครบวงจรสำหรับระบบการแจ้งเตือน WordPress ที่กำหนดเอง กำหนดค่าได้ง่ายมาก และใช้งานได้ทันที ทริกเกอร์ทั้งหมดที่ลงทะเบียนไว้จะทำงานกับการแจ้งเตือนประเภทใดก็ได้ และหากคุณมีข้อกำหนดขั้นสูง คุณสามารถประหยัดเวลาได้โดยใช้ส่วนขยายที่มีอยู่
หากคุณต้องการเรียนรู้รายละเอียดเพิ่มเติมและเทคนิคขั้นสูง ไปที่เว็บไซต์เอกสารประกอบ
ฉันเปิดรับแนวคิดใหม่ๆ เสมอ ดังนั้นหากคุณมี คุณสามารถติดต่อเราได้ที่นี่ในความคิดเห็น ผ่านปัญหา GitHub หรือทาง Twitter
ดาวน์โหลดปลั๊กอินจากที่เก็บแล้วลองดู!