โพสต์ที่กำหนดเองประเภทหน้าถาวรไม่แสดง


11

ฉันมีหมวดหมู่บนเว็บไซต์ของฉันที่เรียกว่า 'โปรไฟล์' ฉันอยู่ในขั้นตอนการย้ายหมวดหมู่นี้ไปยังประเภทโพสต์ที่กำหนดเองที่เรียกว่า 'โปรไฟล์'

ปัญหาของฉันคือฉันไม่สามารถรับหน้าเก็บถาวรสำหรับประเภทโพสต์ที่กำหนดเองนี้ เมื่อฉันไปที่ URL mywebsite.com/profilesมันจะพาฉันไปยังหน้าโพสต์เดียวสำหรับโพสต์ในหมวดหมู่โปรไฟล์

ฉันรวมอยู่has_archive = true;ในfunctions.php

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

คำแนะนำใด ๆ ที่จะได้รับการชื่นชมมากที่สุด?

add_action( 'init', 'profile_custom_init' );

/* Here's how to create your customized labels */
function profile_custom_init() {
$labels = array(
    'name' => _x( 'Profiles', 'post type general name' ), // Tip: _x('') is used for localization
    'singular_name' => _x( 'Profile', 'post type singular name' ),
    'add_new' => _x( 'Add New', 'Profile' ),
    'add_new_item' => __( 'Add Profile' ),
    'edit_item' => __( 'Edit Profile' ),
    'new_item' => __( 'New Profile' ),
    'view_item' => __( 'View Profile' ),
    'search_items' => __( 'Search Profile' ),
    'not_found' =>  __( 'No Profile found' ),
    'not_found_in_trash' => __( 'No Profile found in Trash' ),
    'parent_item_colon' => ''
);

// Create an array for the $args
$args = array( 'labels' => $labels, /* NOTICE: the $labels variable is used here... */
    'public' => true,
    'publicly_queryable' => true,
    'has_archive' => true,
    'show_ui' => true,
    'query_var' => true,
    'rewrite' => true,
    'capability_type' => 'post',
    'hierarchical' => false,
    'menu_position' => 10,
    'supports' => array( 'title', 'editor','thumbnail', 'excerpt', 'custom-fields' ),
        'taxonomies' => array('category')
    ); 

    register_post_type( 'profile', $args ); /* Register it and move on */
}

ลองเปลี่ยนทากหมวดหมู่โปรไฟล์เป็นอย่างอื่นเช่น profiles-2
Vinod Dalvi

ดูเหมือนจะไม่ทำงาน นอกจากนี้ถ้าฉันไปที่ url mywebsite.com/his เช่นแทนที่จะพาฉันไปที่หน้า 404 (ฉันไม่มีหน้าหรือโพสต์ที่เรียกว่า 'เขา') มันจะพาฉันไปที่โพสต์ที่เริ่มต้นด้วยคำว่า 'เขา' มันดูแปลกมากเลยเหรอ?
stemie

คุณพยายามบันทึกโครงสร้างลิงก์อีกครั้งหรือไม่ สิ่งนี้ทำให้กฎการเขียนซ้ำถูกสร้างใหม่
Mike Madern

ลองบันทึกโครงสร้างลิงก์อีกครั้งโดยคลิกที่ปุ่มบันทึกการเปลี่ยนแปลงของการตั้งค่าลิงก์ถาวร
Vinod Dalvi

คำตอบ:


18
  1. นำทางไปยังการตั้งค่า -> ลิงก์ถาวร
  2. เปลี่ยนโครงสร้าง Permalink เป็นค่าเริ่มต้น
  3. บันทึกการตั้งค่า
  4. เปลี่ยนเป็นโครงสร้างที่กำหนดเองหรือชื่อโพสต์ (หรือโครงสร้างอื่น ๆ )
  5. บันทึกการตั้งค่า

นี่จะเขียนไฟล์ htaccess อีกครั้งจากนั้นการเขียนซ้ำควรทำงาน


หากวิธีการข้างต้นไม่ทำงาน - ควรเกี่ยวข้องกับการกำหนดค่าเซิร์ฟเวอร์

Aapache2

วิ่ง: a2enmod rewrite && service apache2 reload

Nginx

ติดตาม: https://do.co/2LjCF8r


ฉันหวังว่านี้จะประหยัดเวลาของคุณ


วิธีนี้แก้ไขได้สำหรับฉัน
user2924019

3

กำลังบันทึกโครงสร้าง Permalink อีกครั้งดูเหมือนจะแก้ไขปัญหา ขอบคุณสำหรับเคล็ดลับ Mike และ Vinod


1
ฉันตอบคำถามนี้ก่อน Nikhil และคิดว่ามันจะเป็นประโยชน์ ฉันไม่ได้ตรวจสอบย้อนกลับไปตั้งแต่เขาโพสต์คำตอบที่ดีกว่า ดังนั้นจึงไม่ยุติธรรมที่จะกล่าวโทษผมว่าไม่ให้เครดิตกับคนที่โพสต์คำตอบ
stemie

ฉันไม่ดีฉันเห็นการเดินขบวนหลังจากเดือนตุลาคมและคิดว่ามันเป็นปีหน้า .. คำตอบที่กระจัดกระจายของคุณรวมกับที่ดูเหมือนจะคว้าเครดิตได้อย่างรวดเร็ว .. ฉันควรจะดูอย่างใกล้ชิดมากขึ้น (เรียงตามจำนวนโหวตไม่ได้ช่วยอย่างรวดเร็ว ดูอย่างใดอย่างหนึ่ง) ให้คุณโหวตทั้งคำถามและคำตอบ
Kender

@Kender - ฉันไม่ได้มีความตั้งใจที่จะคว้าเครดิตของคนอื่นตอบหรือคัดลอกมัน ฉันตอบตามประสบการณ์ของฉันและฉันได้อธิบายคำตอบอย่างละเอียด มันอาจช่วยนักพัฒนาจำนวนมากในการแก้ไขปัญหาจากด้าน CMS เช่นเดียวกับเซิร์ฟเวอร์
Nikhil
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.