วิธีลบหรือซ่อนความคิดเห็นจากประเภทโพสต์ที่กำหนดเอง » ปิดใช้งานความคิดเห็นในประเภทโพสต์ที่กำหนดเอง
เผยแพร่แล้ว: 2020-01-31คุณกำลังมองหาวิธีที่ดีที่สุดในการซ่อนความคิดเห็นจากประเภทโพสต์ที่กำหนดเองหรือลบความคิดเห็นออกจากประเภทโพสต์ที่กำหนดเองทั้งหมดหรือไม่ หากคุณทำเช่นนั้น วิธีแก้ไขจะอยู่ที่วิธีการลงทะเบียนประเภทโพสต์แบบกำหนดเอง ตามหลักการแล้วประเภทโพสต์ที่กำหนดเองนั้นเหมือนกับหน้าและโพสต์และจะสืบทอดคุณลักษณะทั้งหมดของหน้าและโพสต์หากคุณอนุญาตให้มีคุณสมบัติเหล่านี้
แม้ว่าคุณจะสามารถควบคุมวิธีที่ประเภทโพสต์แบบกำหนดเองสนับสนุนคุณลักษณะต่างๆ ได้ แต่อาจเป็นเรื่องยากที่จะควบคุมคุณลักษณะที่สนับสนุนโดยประเภทโพสต์ที่กำหนดเองในปลั๊กอินของบุคคลที่สามหรือธีมของคุณที่ใช้ประเภทโพสต์ที่กำหนดเอง
ด้วยเหตุนี้ จึงจำเป็นต้องเรียนรู้วิธีลบความคิดเห็นหรือคุณลักษณะอื่นๆ ที่ได้รับการสนับสนุนโดยประเภทโพสต์ที่กำหนดเองซึ่งคุณไม่ต้องการให้บนเว็บไซต์ของคุณ
นี่จะเป็นกระบวนการไม่กี่ขั้นตอนที่ตรงไปตรงมามาก เนื่องจากมีฟังก์ชันใน WordPress เพื่อช่วยคุณในการลบคุณลักษณะของประเภทโพสต์แบบกำหนดเองที่คุณไม่ต้องการ
ซ่อนความคิดเห็นเกี่ยวกับประเภทโพสต์ที่กำหนดเอง
ตามที่ระบุไว้ข้างต้น หากต้องการลบความคิดเห็นออกจากประเภทโพสต์ที่กำหนดเองได้สำเร็จ คุณต้องเข้าใจว่ามีการลงทะเบียนประเภทโพสต์แบบกำหนดเองอย่างไร และบทแนะนำเกี่ยวกับ วิธีลงทะเบียนประเภทโพสต์ที่กำหนดเองโดยไม่ต้องใช้ปลั๊กอิน เป็นจุดเริ่มต้นที่ดี
คุณยังสามารถคัดลอกโค้ดต่อไปนี้ไปยังไฟล์ functions.php ของธีมของคุณเพื่อลงทะเบียนประเภทโพสต์แบบกำหนดเองที่คุณสามารถใช้เพื่อทดสอบวิธีลบความคิดเห็นออกจากประเภทโพสต์ที่กำหนดเอง:
/** * ประเภทโพสต์ที่กำหนดเอง - register_post_type() * @description- Njengah Tutorial ตัวอย่างประเภทโพสต์ที่กำหนดเอง * @link -https://gist.github.com/Njengah/839466b773085ac2430772e081357cee * */ add_action('init', "njengah_tutorial_cpt"); ฟังก์ชัน njengah_tutorial_cpt(){ $labels = อาร์เรย์ ( 'name' => _x('Tutorials', 'ประเภทโพสต์ชื่อทั่วไป'), 'singular_name' => _x('Tutorial', 'โพสต์ชื่อเอกพจน์'), 'menu_name' => _x('บทแนะนำ', 'เมนูผู้ดูแลระบบ'), 'name_admin_bar' => _x('Tutorial', 'เพิ่มใหม่ในแถบผู้ดูแลระบบ'), 'add_new' => _x('เพิ่มใหม่', ''), 'add_new_item' => __('เพิ่มบทช่วยสอนใหม่'), 'edit_item' => __('แก้ไขบทช่วยสอน'), 'new_item' => __('บทแนะนำใหม่'), 'all_items' => __('บทแนะนำทั้งหมด'), 'view_item' => __('ดูบทช่วยสอน'), 'search_items' => __('Search Tutorials'), 'not_found' => __('ไม่พบบทช่วยสอน'), 'not_found_in_trash' => __('ไม่พบบทช่วยสอนในถังขยะ'), 'parent_item_colon' => __('บทแนะนำสำหรับผู้ปกครอง:'), ); $args = อาร์เรย์ ( 'ลำดับชั้น' => จริง 'labels' => $labels, 'สาธารณะ' => จริง 'publicly_queryable' => จริง 'คำอธิบาย' => __('คำอธิบาย.'), 'show_ui' => จริง 'show_in_menu' => จริง, 'show_in_nav_menus' => จริง 'query_var' => จริง 'เขียนใหม่' => จริง 'query_var' => จริง 'rewrite' => array('slug' => 'tutorial'), 'capability_type' => 'หน้า', 'has_archive' => จริง 'menu_position' => 22, "show_in_rest" => จริง 'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'comments', 'revisions', 'page-attributes', 'custom-fields' ) ); register_post_type('บทช่วยสอน', $args); }
หากคุณดูโค้ดนั้นอย่างระมัดระวัง จะมีบรรทัดสำคัญที่อยู่ในอาร์เรย์ $args ซึ่งมีคีย์ - 'supports' จะใช้อาร์เรย์ที่มีค่าหลายค่าที่แสดงคุณลักษณะที่สนับสนุนโดยประเภทโพสต์ที่กำหนดเองดังที่แสดงบนรูปภาพ ด้านล่าง :
เมื่อค่าความคิดเห็นนี้อยู่ในอาร์เรย์นั้น ก็หมายความว่าความคิดเห็นได้รับการสนับสนุนโดยประเภทโพสต์ที่กำหนดเอง และความคิดเห็นเหล่านั้นจะปรากฏในโปรแกรมแก้ไขโพสต์ที่กำหนดเองตามที่แสดงในประเภทโพสต์ที่กำหนดเองสำหรับบทช่วยสอนนี้:
คุณสามารถลบ 'ความคิดเห็น' นั้นออกจากรหัสการลงทะเบียนประเภทโพสต์ที่กำหนดเองได้ และคุณจะ ลงทะเบียนประเภทโพสต์ที่กำหนดเอง โดยไม่ได้รับการสนับสนุนจากความคิดเห็น
วิธีลบความคิดเห็นออกจากประเภทโพสต์ที่กำหนดเอง
เนื่องจากคุณไม่สามารถควบคุมประเภทโพสต์แบบกำหนดเองทั้งหมดที่ลงทะเบียนบนเว็บไซต์ของคุณโดยปลั๊กอินหรือธีมอื่น คุณจึงสามารถลบความคิดเห็นเกี่ยวกับประเภทโพสต์ที่กำหนดเองได้โดยใช้ตัวเลือกการลบที่ WordPress ให้ไว้
ฟังก์ชัน WP: remove_post_type_support()
ตัวเลือกนี้อยู่ในรูปของฟังก์ชัน – remove_post_type_support() ซึ่งจะลบการสนับสนุนคุณลักษณะต่างๆ สำหรับประเภทโพสต์ที่กำหนดเองบางประเภท
นิพจน์รหัสทั่วไปสำหรับฟังก์ชันนี้มีดังต่อไปนี้:
remove_post_type_support( string $post_type, string $feature )
ดังที่คุณเห็นแล้วว่าต้องใช้พารามิเตอร์สองตัวและเป็นทั้งสตริงและพารามิเตอร์มีดังนี้:
พารามิเตอร์ | คำอธิบาย |
$post_type | นี่คือประเภทโพสต์แบบกำหนดเองที่เราตั้งใจจะลบความคิดเห็นหรือคุณสมบัติอื่นใดที่ได้รับการสนับสนุนโดยประเภทโพสต์แบบกำหนดเองที่เราต้องการลบ |
$feature | นี่คือคุณลักษณะของประเภทโพสต์แบบกำหนดเองที่เราต้องการลบ ตัวอย่างเช่น ในกรณีนี้; เราต้องการลบคุณลักษณะ 'ความคิดเห็น' |
ในการลบความคิดเห็นเหล่านี้ออกจากประเภทโพสต์ที่กำหนดเอง เราสามารถเขียน action hook ที่เกี่ยวโยงกับ 'init' และในฟังก์ชัน callback เราเรียกใช้ฟังก์ชัน remove_post_type_support() ที่เราจะส่งพารามิเตอร์ที่เกี่ยวข้อง
ต่อไปนี้เป็นรหัสที่คุณสามารถใช้เพื่อลบความคิดเห็นจากประเภทโพสต์ที่กำหนดเองชื่อ 'กวดวิชา'
/** * ลบบทแนะนำประเภทโพสต์ที่กำหนดเอง ความคิดเห็น */ add_action( 'init', 'remove_custom_post_type_comments' ); ฟังก์ชั่น remove_custom_post_type_comments () { remove_post_type_support( 'บทช่วยสอน', 'ความคิดเห็น' ); }
ควรเพิ่มรหัสนี้ในไฟล์ functions.php และคุณจะลบความคิดเห็นประเภทโพสต์ที่กำหนดเองได้สำเร็จดังที่แสดงในภาพด้านล่าง:
บทสรุป
เมื่อคุณต้องการซ่อนความคิดเห็นประเภทโพสต์ที่กำหนดเอง คุณไม่จำเป็นต้องรวมการสนับสนุนความคิดเห็นเมื่อคุณลงทะเบียนประเภทโพสต์ที่กำหนดเอง
อีกทางหนึ่ง หากคุณกำลังจัดการกับประเภทโพสต์แบบกำหนดเองที่มีอยู่ และคุณต้องการลบความคิดเห็นออกจากประเภทโพสต์แบบกำหนดเองเหล่านี้ คุณควรใช้ remove_post_type_support() function
ซึ่งจะลบคุณลักษณะอื่นๆ ออกจากประเภทโพสต์ที่กำหนดเองด้วย
คุณยังสามารถใช้วิธีนี้เพื่อลบบทวิจารณ์ออกจากผลิตภัณฑ์ WooCommerce เนื่องจากผลิตภัณฑ์นั้นเป็นประเภทโพสต์ที่กำหนดเอง และบทวิจารณ์จะเทียบเท่ากับความคิดเห็นในโพสต์ WordPress เริ่มต้น