คู่มือฉบับสมบูรณ์เกี่ยวกับประเภทโพสต์ที่กำหนดเองของ WordPress
เผยแพร่แล้ว: 2021-04-27WordPress ไม่ได้เกี่ยวกับ “โพสต์” และ “เพจ” เสมอไป บางครั้งคุณจำเป็นต้องมีประเภทเนื้อหาที่แตกต่างกัน เพราะไม่ใช่ทุกไซต์ WordPress ที่เกี่ยวกับบล็อก คุณต้องมีความสามารถในการเพิ่ม ประเภทโพสต์ที่กำหนดเอง ในไซต์ WordPress ของคุณ
หากคุณสามารถใช้ประเภทโพสต์ได้ คุณก็สามารถเปลี่ยนพื้นที่ผู้ดูแลระบบของคุณให้เป็นระเบียบ น่าตื่นเต้น และสวยงามได้ ท้ายที่สุด คุณต้องการให้ไซต์ WordPress ของคุณรู้สึกมีพลังเมื่อสร้างเนื้อหาใหม่
ประเภทโพสต์ที่กำหนดเองช่วยให้คุณเปลี่ยนไซต์บล็อกของคุณให้เป็นระบบจัดการเนื้อหาที่มีประสิทธิภาพยิ่งขึ้น เนื่องจากคุณสามารถสร้างเนื้อหาประเภทอื่นนอกเหนือจากโพสต์และเพจได้
ดังนั้น วันนี้เราจะพูดถึงความสามารถพิเศษของ WordPress และคำแนะนำในการสร้างโพสต์ของคุณเองสำหรับไซต์ของคุณ
แต่ก่อนอื่นเรามาทำความเข้าใจพื้นฐานกันก่อนดีไหม?
Custom Post Type ใน WordPress คืออะไร?
ประเภทโพสต์เป็นวิธีจัดหมวดหมู่เนื้อหาประเภทต่างๆ ใน WordPress
เราถือว่าคุณคุ้นเคยกับประเภทโพสต์ที่พบบ่อยที่สุด 2 ประเภทแล้ว: โพสต์และเพจ แต่สิ่งที่คุณอาจไม่ทราบว่า WordPress นั้นมาพร้อมกับโพสต์ประเภทอื่น ๆ อีกสองสามประเภทเช่นกัน
ตามค่าเริ่มต้น WordPress มาพร้อมกับประเภทโพสต์เหล่านี้:
- โพสต์
- หน้าหนังสือ
- ไฟล์แนบ
- การแก้ไข
- เมนูนำทาง
ดังนั้นคุณสามารถสร้างประเภทโพสต์ของคุณเองและเรียกสิ่งที่คุณต้องการ
ตัวอย่างเช่น หากคุณเปิดเว็บไซต์รีวิวหนังสือ คุณอาจต้องการสร้างประเภทโพสต์รีวิวหนังสือ โพสต์ประเภทนี้สามารถมีฟิลด์ที่กำหนดเองที่แตกต่างกันและแม้แต่โครงสร้างหมวดหมู่ที่กำหนดเอง
ตัวอย่างอื่นๆ ของประเภทโพสต์ ได้แก่ ภาพยนตร์ แฟ้มผลงาน ข้อความรับรอง ผลิตภัณฑ์ ฯลฯ
ดังนั้น หากคุณต้องการสร้างพอร์ตโฟลิโอของคุณเอง เราขอแนะนำให้คุณใช้ความช่วยเหลือจากประเภทโพสต์ที่กำหนดเอง มิฉะนั้นคุณจะหลงทางได้ง่าย การสร้างประเภทโพสต์ผลงานแยกต่างหากจะช่วยให้ผู้ใช้เรียกดูงานทั้งหมดของคุณได้อย่างง่ายดาย
ตอนนี้ เราจะแสดงวิธีการสร้างประเภทโพสต์ที่กำหนดเองของ WordPress วิธีการมี 2 ประเภท:
- การสร้างประเภทโพสต์ที่กำหนดเอง ( โดยใช้ปลั๊กอิน )
- การสร้างประเภทโพสต์แบบกำหนดเอง (ด้วยตนเอง )
เราจะแสดงให้คุณเห็นทั้งสองวิธี
วิธีเพิ่มประเภทโพสต์ที่กำหนดเองด้วยปลั๊กอิน WordPress
นี่คือส่วนที่คุณจะได้เรียนรู้วิธีสร้างประเภทโพสต์ที่กำหนดเองโดยใช้ปลั๊กอิน WordPress มีปลั๊กอินมากกว่า 65k+ ใน repo และมีปลั๊กอินมากมายที่จะช่วยให้คุณสร้างประเภทโพสต์ที่กำหนดเองสำหรับเว็บไซต์ของคุณได้อย่างง่ายดาย
หนึ่งในนั้นคือส่วนหน้าผู้ใช้ WP เป็นหนึ่งในปลั๊กอินสำหรับสมาชิกที่ขายดีที่สุด และทำให้การสร้างประเภทโพสต์แบบกำหนดเองเป็นเรื่องง่ายสุด ๆ
หลังจากติดตั้งปลั๊กอินแล้ว คุณต้องทำตามขั้นตอนง่ายๆ เหล่านี้เพื่อสร้างประเภทโพสต์ที่กำหนดเอง ไปเลย,
ขั้นตอนที่ 1: การสร้างแบบฟอร์ม
ไม่ต้องผ่าน WP User Frontend > โพสต์ฟอร์ม > เพิ่มใหม่ สร้างแบบฟอร์มของคุณ เพิ่มฟิลด์แบบฟอร์มที่จำเป็น บันทึกแบบฟอร์ม
ขั้นตอนที่ 2: การตั้งค่าสถานะโพสต์
หลังจากสร้างฟอร์มแล้ว คุณต้องไปที่ WP User Frontend > Post Forms อัปเดตแบบฟอร์มที่มีอยู่โดยเลือก การตั้งค่า > การตั้งค่าโพสต์ > สถานะโพสต์
ดังนั้น คุณจะสามารถเห็นประเภทโพสต์ที่กำหนดเองต่างๆ ได้ที่นั่น เลือกประเภทโพสต์ของคุณและบันทึกแบบฟอร์ม
ขั้นตอนที่ 3: การสร้างอนุกรมวิธาน
ถัดไป คุณต้องกลับไปที่ตัวแก้ไขฟอร์ม จากนั้นในส่วนการจัดหมวดหมู่ คุณสามารถดูการจัดหมวดหมู่แบบกำหนดเองได้
ขั้นตอนที่ 4: สร้างเพจ
อย่างไรก็ตาม หากต้องการสร้างหน้าใหม่ ให้คัดลอกรหัสย่อของแบบฟอร์มของคุณ หรือแก้ไขแบบฟอร์มที่มีอยู่ วางรหัสย่อ
ดูหน้าในเบราว์เซอร์ การส่งประเภทโพสต์ที่กำหนดเองของคุณเสร็จสมบูรณ์แล้ว
หากคุณต้องการดูถ่ายทอดสด นี่คือวิดีโอสั้นๆ สำหรับคุณ ผ่านมันไปและสร้างแบบฟอร์ม Custom Post Type ของคุณภายในเวลาไม่นาน
นั่นคือวิธีที่คุณสามารถสร้างประเภทโพสต์ที่กำหนดเองของ WordPress โดยใช้ปลั๊กอิน WordPress User Frontend
วิธีสร้างประเภทโพสต์แบบกำหนดเองด้วยตนเอง
คุณต้องคิดว่าเหตุใดเราจึงแสดงให้คุณสร้างประเภทโพสต์แบบกำหนดเองด้วยตนเอง เมื่อคุณสามารถสร้างได้โดยใช้ปลั๊กอิน WordPress ปัญหาในการสร้างประเภทโพสต์ที่กำหนดเองของ WordPress ด้วยปลั๊กอินคือเมื่อคุณปิดใช้งานปลั๊กอินนั้น คุณอาจสูญเสียข้อมูลทั้งหมดของคุณ
ข้อมูลอาจอยู่ในปลั๊กอิน แต่ประเภทโพสต์ของคุณจะไม่ลงทะเบียนและคุณจะไม่สามารถเข้าถึงได้จากส่วนผู้ดูแลระบบของคุณ
ดังนั้นจึงเป็นแนวทางปฏิบัติที่ดีในการสร้างโพสต์แบบกำหนดเองด้วยตนเอง และเราจะเริ่มต้นด้วยสิ่งนั้น
ลองดูที่รหัสนี้
// Our custom post type function function create_posttype() { register_post_type( 'movies', // CPT Options array( 'labels' => array( 'name' => __( 'Movies' ), 'singular_name' => __( 'Movie' ) ), 'public' => true, 'has_archive' => true, 'rewrite' => array('slug' => 'movies'), 'show_in_rest' => true, ) ); } // Hooking up our function to theme setup add_action( 'init', 'create_posttype' );
เมื่อคุณเพิ่มโค้ดนี้ลงในไฟล์ functions.php ของธีม คุณจะเห็นส่วนภาพยนตร์ในพื้นที่เมนู WordPress ของคุณ
ให้เราบอกคุณถึงการทำงานของรหัสนี้ สิ่งที่รหัสนี้ทำคือลงทะเบียนประเภทโพสต์ 'movies'
ด้วยอาร์เรย์ของอาร์กิวเมนต์ อาร์กิวเมนต์เหล่านี้เป็นตัวเลือกสำหรับประเภทโพสต์ที่กำหนดเองของเรา
อาร์เรย์นี้ประกอบด้วยสองส่วน ส่วนแรกมีป้ายกำกับ ซึ่งตัวมันเองเป็นอาร์เรย์ ส่วนที่สองประกอบด้วยอาร์กิวเมนต์อื่นๆ เช่น การเปิดเผยต่อสาธารณะ มีการเก็บถาวร slug และ show_in_rest เปิดใช้งานการสนับสนุนตัวแก้ไขบล็อก
นี่คือรหัสที่จะช่วยให้คุณเพิ่มตัวเลือกเพิ่มเติมให้กับประเภทโพสต์ที่กำหนดเองของ WordPress
/* * Creating a function to create our CPT */ function custom_post_type() { // Set UI labels for Custom Post Type $labels = array( 'name' => _x( 'Movies', 'Post Type General Name', 'twentytwenty' ), 'singular_name' => _x( 'Movie', 'Post Type Singular Name', 'twentytwenty' ), 'menu_name' => __( 'Movies', 'twentytwenty' ), 'parent_item_colon' => __( 'Parent Movie', 'twentytwenty' ), 'all_items' => __( 'All Movies', 'twentytwenty' ), 'view_item' => __( 'View Movie', 'twentytwenty' ), 'add_new_item' => __( 'Add New Movie', 'twentytwenty' ), 'add_new' => __( 'Add New', 'twentytwenty' ), 'edit_item' => __( 'Edit Movie', 'twentytwenty' ), 'update_item' => __( 'Update Movie', 'twentytwenty' ), 'search_items' => __( 'Search Movie', 'twentytwenty' ), 'not_found' => __( 'Not Found', 'twentytwenty' ), 'not_found_in_trash' => __( 'Not found in Trash', 'twentytwenty' ), ); // Set other options for Custom Post Type $args = array( 'label' => __( 'movies', 'twentytwenty' ), 'description' => __( 'Movie news and reviews', 'twentytwenty' ), 'labels' => $labels, // Features this CPT supports in Post Editor 'supports' => array( 'title', 'editor', 'excerpt', 'author', 'thumbnail', 'comments', 'revisions', 'custom-fields', ), // You can associate this CPT with a taxonomy or custom taxonomy. 'taxonomies' => array( 'genres' ), /* A hierarchical CPT is like Pages and can have * Parent and child items. A non-hierarchical CPT * is like Posts. */ 'hierarchical' => false, 'public' => true, 'show_ui' => true, 'show_in_menu' => true, 'show_in_nav_menus' => true, 'show_in_admin_bar' => true, 'menu_position' => 5, 'can_export' => true, 'has_archive' => true, 'exclude_from_search' => false, 'publicly_queryable' => true, 'capability_type' => 'post', 'show_in_rest' => true, ); // Registering your Custom Post Type register_post_type( 'movies', $args ); } /* Hook into the 'init' action so that the function * Containing our post type registration is not * unnecessarily executed. */ add_action( 'init', 'custom_post_type', 0 );
อย่างที่คุณเห็น เราได้เพิ่มตัวเลือกเพิ่มเติมให้กับประเภทโพสต์ที่กำหนดเองด้วยรหัสนี้ ตอนนี้ ประเภทโพสต์ของคุณจะมีคุณสมบัติมากขึ้น เช่น รองรับการแก้ไข ภาพเด่น ฟิลด์กำหนดเอง และอื่นๆ
เรายังเชื่อมโยงประเภทโพสต์ที่กำหนดเองนี้กับอนุกรมวิธานที่กำหนดเองซึ่งเรียกว่าประเภท
เคล็ดลับโบนัสสำหรับการสร้างประเภทโพสต์ที่กำหนดเองด้วยตนเอง
คุณอาจสังเกตเห็นว่ามีส่วนที่เราตั้งค่าลำดับชั้นเป็นเท็จ แต่ถ้าคุณต้องการให้ประเภทโพสต์ที่กำหนดเองทำงานเหมือนเพจ คุณสามารถตั้งค่านี้เป็นจริงได้
สิ่งที่ควรสังเกตอีกอย่างคือการใช้สตริงซ้ำ ๆ กัน 22 สตริง ซึ่งเรียกว่าโดเมนข้อความ ดังนั้น หากธีมของคุณพร้อมแปลแล้ว คุณจะต้องระบุโดเมนข้อความที่ใช้โดยธีมของคุณ
คุณสามารถค้นหาโดเมนข้อความของธีมของคุณได้ภายในไฟล์ style.css
ในไดเร็กทอรีธีมของคุณ โดเมนข้อความจะถูกกล่าวถึงในส่วนหัวของไฟล์
ตอนนี้คุณได้เรียนรู้วิธีสร้างประเภทโพสต์ที่กำหนดเองบนไซต์ WordPress ของคุณแล้ว คุณต้องดูวิธีแสดงโพสต์บนไซต์ของคุณ
การแสดงประเภทโพสต์ที่กำหนดเองบนเว็บไซต์ของคุณ
หากต้องการแสดงประเภทโพสต์ที่กำหนดเองที่สร้างขึ้นใหม่ คุณต้องทำตามขั้นตอนง่ายๆ
เพียงไปที่ ลักษณะที่ปรากฏ » เมนู และเพิ่มลิงก์ที่กำหนดเองไปยังเมนูของคุณ ลิงก์ที่กำหนดเองนี้เป็นลิงก์ไปยังประเภทโพสต์ที่คุณกำหนดเอง
คุณต้องเขียน URL ประเภทโพสต์ที่กำหนดเองตามด้านล่าง
http://example.com/?post_type=movies
หรือหากคุณใช้ลิงก์ถาวรที่เป็นมิตรกับ SEO ดังนั้น URL ของ CPT ของคุณจะเป็นดังนี้:
http://example.com/movies
อย่าลืมแทนที่ example.com ด้วยชื่อโดเมนและภาพยนตร์ของคุณเองด้วยชื่อประเภทโพสต์ที่คุณกำหนดเอง
หลังจากที่คุณบันทึกเมนูของคุณแล้ว คุณสามารถเยี่ยมชมเว็บไซต์ของคุณและคุณจะเห็นเมนูใหม่ที่คุณเพิ่มเข้าไป และเมื่อคุณคลิกที่เมนูนั้น มันจะแสดงหน้าเก็บถาวรประเภทโพสต์ที่คุณกำหนดเองโดยใช้ไฟล์เทมเพลต archive.php ในธีมของคุณ
การแสดงประเภทโพสต์ที่กำหนดเองในหน้าแรก
ข้อได้เปรียบหลักของการใช้ประเภทโพสต์แบบกำหนดเองของ WordPress คือทำให้เนื้อหาที่คุณกำหนดเองอยู่ห่างจากโพสต์ทั่วไป อย่างไรก็ตาม หากคุณต้องการ คุณสามารถเผยแพร่เนื้อหาที่คุณกำหนดเองบนหน้าแรก
สิ่งที่คุณต้องทำคือเพิ่มโค้ดชิ้นนี้
add_action( 'pre_get_posts', 'add_my_post_types_to_query' ); function add_my_post_types_to_query( $query ) { if ( is_home() && $query->is_main_query() ) $query->set( 'post_type', array( 'post', 'movies' ) ); return $query; }
เพียงแทนที่ "ภาพยนตร์" ด้วยโพสต์ที่คุณกำหนดเอง แค่นั้นแหละ!.
นี่คือวิธีที่คุณสามารถสร้างและแสดงประเภทโพสต์ที่กำหนดเองได้ด้วยตนเองบนเว็บไซต์ WordPress ของคุณ
สร้างโพสต์ที่กำหนดเองและเปลี่ยนไซต์บล็อกของคุณให้เป็นแพลตฟอร์ม CMS ที่สมบูรณ์แบบ
อย่างที่คุณเห็น การสร้างระบบ CMS ที่สมบูรณ์แบบนั้นค่อนข้างง่ายด้วย WordPress เนื่องจากให้อิสระ ฟังก์ชันการทำงาน และคุณลักษณะแก่คุณในการสร้างระบบผู้ดูแลระบบที่กำหนดเอง
และเนื่องจากการสร้างประเภทโพสต์ที่กำหนดเองของ WordPress นั้นอยู่ในมือของคุณอย่างสมบูรณ์ คุณจึงมีอำนาจในการสร้างคุณสมบัติเพิ่มเติมสำหรับการควบคุมของคุณ นอกจากนี้ คุณสามารถสร้างหน้าผู้ดูแลระบบที่กำหนดเองได้เช่นกัน แต่เราจะพูดถึงเรื่องนี้ในวันอื่น
ดังนั้น สร้างประเภทโพสต์ที่คุณกำหนดเองตามคำแนะนำนี้ และแจ้งให้เราทราบประสบการณ์ของคุณ!