Erstellen Sie benutzerdefinierte Post mit benutzerdefinierten Benutzerregeln

Ich erstelle einen benutzerdefinierten Benutzer-Beitragstyp Testimonial und möchte dem Benutzer erlauben, ihn zu bearbeiten und zu löschen, aber es zeigt einen Fehler.

1. Ich habe eine Benutzerregel erstellt.

function add_testimonial_management_role() { add_role('testimonial_manager', 'Testimonial Manager', array( 'read' => true, 'edit_posts' => false, 'delete_posts' => false, 'publish_posts' => false, 'upload_files' => true, ) ); } register_activation_hook( __FILE__, 'add_testimonial_management_role' ); 

2. Nächster hinzugefügter benutzerdefinierter Beitrag

 add_action( 'init', 'register_cpt_testimonials'); function register_cpt_testimonials() { $args = array( 'label' => __( 'testimonials', 'testimonials' ), 'description' => __( 'Testimonial', 'testimonials' ), 'labels' => $labels, 'supports' => array( 'title', 'comments', 'revisions', ), 'hierarchical' => false, 'public' => true, 'show_ui' => true, 'rewrite' => $rewrite, 'capability_type' => array('testimonial','testimonials'), 'map_meta_cap' => true, ); register_post_type( 'testimonials', $args ); } 

3. Zuletzt habe ich Regeln erstellt

 add_action('admin_init','add_role_caps',999); function add_role_caps() { // Add the roles you'd like to administer the custom post types $roles = array('testimonial_manager','editor','administrator'); // Loop through each role and assign capabilities foreach($roles as $the_role) { $role = get_role($the_role); $role->add_cap( 'read' ); $role->add_cap( 'read_testimonial'); $role->add_cap( 'read_private_testimonials' ); $role->add_cap( 'edit_testimonial' ); $role->add_cap( 'edit_testimonials' ); $role->add_cap( 'edit_others_testimonials' ); $role->add_cap( 'edit_published_testimonials' ); $role->add_cap( 'publish_testimonials' ); $role->add_cap( 'delete_others_testimonials' ); $role->add_cap( 'delete_private_testimonials' ); $role->add_cap( 'delete_published_testimonials' ); }} 

Aber es zeigt, dass Sie am Ende einen Fehler haben

 Notice: Undefined variable: labels in /home/mortgag1/public_html/wp-content/themes/mortgage/functions.php on line 21 Notice: Undefined variable: rewrite in /home/mortgag1/public_html/wp-content/themes/mortgage/functions.php on line 26 Fatal error: Call to a member function add_cap() on a non-object in /home/mortgag1/public_html/wp-content/themes/mortgage/functions.php on line 43 

Bitte hilf mir jemand. Vielen Dank

Solutions Collecting From Web of "Erstellen Sie benutzerdefinierte Post mit benutzerdefinierten Benutzerregeln"