Wie kann ich Fähigkeiten (Beiträge von Mitwirkenden veröffentlichen) zur Autorenrolle hinzufügen?

Ich bin kein PHP-Programmierer, nur ein einfacher WordPress-Benutzer.

  • Wie kann ich zulassen, dass Autorenrollen die Veröffentlichung von Posts von Mitwirkenden erlauben?
  • Wie lautet der technische Name dafür?

Solutions Collecting From Web of "Wie kann ich Fähigkeiten (Beiträge von Mitwirkenden veröffentlichen) zur Autorenrolle hinzufügen?"

Ich denke, dass der beste Ansatz darin besteht, die function edit_other_posts Rolle “author” in der Aktivierung von Plugins / edit_other_posts hinzuzufügen und diese function bei der Deaktivierung von Plugins / edit_other_posts zu entfernen. Mit dieser Methode führen Sie die Aufgabe nur einmal aus und benötigen keine weitere Codierung.

Aktivierung / Deaktivierung von Plugins:

 register_activation_hook( __FILE__, 'cyb_activation_function' ); function cyb_activation_function() { $author = get_role( 'author' ); $author->add_cap( 'edit_others_posts' ); } register_deactivation_hook( __FILE__, 'cyb_deactivation_function'); function cyb_deactivation_function() { $author = get_role( 'author' ); $author->remove_cap( 'edit_others_posts' ); } 

Aktivierung / Deaktivierung des Themas:

 add_action('after_switch_theme', 'cyb_activation_function'); function cyb_activation_function() { $author = get_role( 'author' ); $author->add_cap( 'edit_others_posts' ); } add_action('switch_theme', 'cyb_deactivation_function'); function cyb_deactivation_function() { $author = get_role( 'author' ); $author->remove_cap( 'edit_others_posts' ); } 

Offensichtlich können die functionen einer Rolle programmgesteuert geändert werden, vorausgesetzt, dass Sie dies tun

kein PHP-Programmierer, nur ein einfacher WordPress-Benutzer

Sie müssen ein Plugin verwenden, das die Änderung von Benutzerrollen erlaubt.
Es gibt eine Menge da draußen, aber meine persönliche Empfehlung wäre das Mitglieder- Plugin von Justin Tadlock.

Wie lautet der technische Name dafür?

Jeder Rolle sind eine Reihe von functionen zugewiesen.
Das sind die Begriffe, nach denen Sie gesucht haben.

Wie kann ich zulassen, dass Autorenrollen die Veröffentlichung von Posts von Mitwirkenden erlauben?

Die Fähigkeit, die Sie hier benötigen, ist edit_others_posts .

Der Begriff, den Sie suchen, ist Editor . Wenn Sie sich auf einen Benutzer beziehen, der die Beiträge Ihrer Mitwirkenden bearbeiten / veröffentlichen kann.

Sie möchten über den Codex-Eintrag mehr über Rollen und functionen erfahren. Damit Ihre Benutzer mit der Benutzerrolle ” Author in der Lage sind, ausstehende Posts zu bearbeiten und zu veröffentlichen, müssen Sie dieser Rolle die function ” edit_others_posts zuweisen.

Fügen Sie Ihrer Datei functions.php Folgendes hinzu (mit add_cap , Code basierend auf der Antwort von kaiser ):

 function add_edit_others_posts_to_author_role() { if ( ! current_user_can( 'author' ) ) return; // here you should check if the role already has_cap already and if so, abort/return; if ( current_user_can( 'author' ) ) { $GLOBALS['wp_roles']->add_cap( 'author','edit_others_posts' ); } } add_action( 'admin_init', 'add_edit_others_posts_to_author_role', 10, 0 ); 

Oder alternativ könnten Sie ein Plugin wie den User Role Editor verwenden . Sie können auch in Betracht ziehen, dass dies Ihren Benutzern ermöglicht, die veröffentlichten Posts zu bearbeiten. Es gibt eine gute Lösung, mit der Redakteure ausstehende Beiträge bearbeiten können, aber keine Entwürfe .