Saya telah menemukan tempat ini menjadi sumber informasi yang baik di masa lalu melalui banyak Googling untuk masalah yang saya hadapi. Pertanyaan saya berkaitan dengan aturan penulisan ulang verbose yang digunakan WordPress.
Saya telah menyiapkan jenis pos kustom yang disebut proyek , dan saya telah mendaftarkan taksonomi kustom yang disebut proyek . Semuanya berfungsi dengan baik kecuali untuk opsi penulisan ulang siput karena berakhir dengan konflik - kemungkinan besar karena aturan penulisan ulang.
Pada dasarnya ini adalah struktur yang ingin saya capai:
example.com/work/%taxonomy%/%post_name%/
(untuk posting)example.com/work/%taxonomy%/
(daftar posting milik istilah taksonomi tertentu)example.com/work/
(buka halaman-work.php yang mencakup taxonomy.php untuk mendaftar semua tulisan yang terkait dengan taksonomi itu)
Berikut adalah kode yang saya miliki sejauh ini, tetapi saya perlu bantuan menulis aturan WP_Rewrite karena ini adalah bit yang saya sedikit bingung.
$labels = array(
'name' => _x('Projects', 'post type general name'),
'singular_name' => _x('Project', 'post type singular name'),
'add_new' => _x('Add New', 'project item'),
'add_new_item' => __('Add New Project'),
'edit_item' => __('Edit Project'),
'new_item' => __('New Project'),
'view_item' => __('View Project'),
'search_items' => __('Search Projects'),
'not_found' => __('Nothing found'),
'not_found_in_trash' => __('Nothing found in Trash'),
'parent_item_colon' => ''
);
$args = array(
'labels' => $labels,
'public' => true,
'publicly_queryable' => true,
'hierarchical' => true,
'rewrite' => array('slug'=>'work', 'with_front'=>false),
'show_ui' => true,
'_builtin' => false, // It's a custom post type, not built in!
'capability_type' => 'post',
'query_var' => "project", // This goes to the WP_Query schema
'menu_position' => null,
'supports' => array('title','editor','thumbnail', 'comments', 'author', 'excerpt')
);
register_post_type('project' , $args);
// Showcase Taxonomy
register_taxonomy('projects', array('project'), array(
'public' => true,
'hierarchical' => true,
'label' => 'Project Categories',
'singular_label' => 'Project Category',
'query_var' => true,
'rewrite' => array('slug'=>'work', 'with_front'=>false, 'hierarchical'=>true)
)
);
Terima kasih banyak atas bantuanmu! :-)
Jawaban:
Semoga ini bisa menyelesaikan masalah Anda
yang perlu Anda buat adalah archive-work.php (arsip jenis posting Anda) dan taxonomy.php yang akan digunakan untuk menampilkan arsip taksonomi khusus Anda.
sumber
Saya memiliki masalah yang sama dan setelah banyak berjuang saya berakhir dengan solusi ini.
Cukup tambahkan ini ke kode Anda
sumber
functions.php
kasus itu. Kode untuk sebuah plugin dan sebuah tema persis sama, satu-satunya perbedaan adalah dalam tema itu selalu masukfunctions.php
atau file yang disertakan dalamfunctions.php
after_switch_theme
hook, ini baru 3.3 (IIRC).Penjelasan lebih rinci ada di pos lain , tetapi inilah bagian dasar yang perlu Anda tambahkan:
Daftarkan taksonomi dan cpt Anda seperti yang Anda lakukan. Pastikan siput penulisan ulang Anda untuk taksinya adalah "basename" dan siput penulisan ulang untuk cpt adalah "basename /% tax_name%".
Katakan pada wordpress apa yang harus dilakukan dengan "% tax_name%" seperti ini:
sumber