Ancak, belirli rollere erişimi sınırlandırmak istediğim özel bir gönderi türüm var, ancak özel gönderi türünü kullanarak zaten içerik ekledim ve şimdi bunları kısıtlandırmam gerekiyor. Capability_type 'yayınlandı'
'capability_type' => 'post'
İçeriğin arka uçta göründüğü kadar sorun ne olursa olsun, içeriğin arka uçtan kaybolacağı herhangi bir yetenek eklediğimde şimdi ne olur?
Yetenek türünü kendim oluşturmak için çoğul tanımları içerecek şekilde özelleştirmeye çalıştım, ancak yetenek türlerini kaldırdığımda veya değiştirdiğimde bitti!
tam kod:
add_action( 'init', 'register_cpt_gallery' );
function register_cpt_gallery() {
$labels = array(
'name' => _x( 'Galleries', 'gallery' ),
'singular_name' => _x( 'Gallery', 'gallery' ),
'add_new' => _x( 'Add New', 'gallery' ),
'add_new_item' => _x( 'Add New Gallery', 'gallery' ),
'edit_item' => _x( 'Edit Gallery', 'gallery' ),
'new_item' => _x( 'New Gallery', 'gallery' ),
'view_item' => _x( 'View Gallery', 'gallery' ),
'search_items' => _x( 'Search Galleries', 'gallery' ),
'not_found' => _x( 'No galleries found', 'gallery' ),
'not_found_in_trash' => _x( 'No galleries found in Trash', 'gallery' ),
'parent_item_colon' => _x( 'Parent Gallery:', 'gallery' ),
'menu_name' => _x( 'Galleries', 'gallery' ),
);
$args = array(
'labels' => $labels,
'hierarchical' => true,
'description' => 'Image galleries for teachers classes',
'supports' => array( 'title', 'editor', 'author'),
'public' => true,
'show_ui' => true,
'show_in_menu' => true,
'menu_icon' => get_bloginfo('template_url') . '/images/imagegallery.png',
'show_in_nav_menus' => true,
'publicly_queryable' => true,
'exclude_from_search' => false,
'has_archive' => true,
'query_var' => true,
'can_export' => true,
'rewrite' => true,
'capability_type' => 'post',
'capabilities' => array(
'edit_post' => 'edit_gallery',
'edit_posts' => 'edit_galleries',
'edit_others_posts' => 'edit_other_galleries',
'publish_posts' => 'publish_galleries',
'read_post' => 'read_gallery',
'read_private_posts' => 'read_private_galleries',
'delete_post' => 'delete_gallery'
)
);
register_post_type( 'gallery', $args );
}
Bunu tamamen yeni bir özel yazı tipiyle de test ettim ve yetenek tipinden bağımsız olarak aynı sorunu yaşıyorum; örneğin, kaldırsam ve özel kodumu eklesem bile:
'capability_type' => array('movie','movies');
add_theme_caps()
bir yönetici sayfasının her yüklenişinde değil, yalnızca bir kez çağrılmalıdır.switch_theme
Tema aktivasyonu için veyaregister_activation_hook
eklenti aktivasyonunda kanca olarak kullanmak daha iyi olacaktır .