Die Verwaltung einer WordPress-Website mit mehreren Autoren kann manchmal kompliziert sein. Es gibt Plugins, um den redaktionellen Workflow zu verwalten, aber Sie können auf Situationen stoßen, in denen Sie spezielle Lösungen für eine bessere Kontrolle Ihrer WordPress-Site benötigen. Vor kurzem haben wir einem Benutzer geholfen, eine solche Lösung zu finden. Sie wollten WordPress-Post-Updates und das Löschen nach einem festgelegten Zeitraum für alle Benutzer (einschließlich Redakteure) nach einem festgelegten Zeitraum blockieren. Wenn ein veröffentlichter Beitrag beispielsweise 30 Tage oder älter ist, kann er von Redakteuren nicht bearbeitet oder gelöscht werden. Nur Administratoren können diesen Beitrag ändern. In diesem Artikel zeigen wir Ihnen, wie Sie die Bearbeitung von Posts, Updates und das Löschen nach einem festgelegten Zeitraum in WordPress blockieren.
Sie müssen lediglich den folgenden Code in die Datei functions.php Ihres Themes oder in ein Site-spezifisches Plugin einfügen.
function wpbeginner_restrict_editing( $allcaps, $cap, $args ) { // Bail out if we're not asking to edit or delete a post ... if( 'edit_post' != $args[0] && 'delete_post' != $args[0] // ... or user is admin || !empty( $allcaps['manage_options'] ) // ... or user already cannot edit the post || empty( $allcaps['edit_posts'] ) ) return $allcaps; // Load the post data: $post = get_post( $args[2] ); // Bail out if the post isn't published: if( 'publish' != $post->post_status ) return $allcaps; //if post is older than 30 days. Change it to meet your needs if( strtotime( $post->post_date ) < strtotime( '-30 day' ) ) { //Then disallow editing. $allcaps[$cap[0]] = FALSE; } return $allcaps; } add_filter( 'user_has_cap', 'wpbeginner_restrict_editing', 10, 3 );
Diese Funktion prüft, ob der Benutzer die Möglichkeit hat, Beiträge zu bearbeiten oder zu löschen. Danach prüft es den Poststatus. Wenn ein Beitrag veröffentlicht wird und älter als 30 Tage ist, wird dem Benutzer die Möglichkeit genommen, den Beitrag zu bearbeiten und zu löschen. Wenn ein Beitrag veröffentlicht wurde, aber nicht älter als 30 Tage ist, können die Benutzer mit der Möglichkeit, Beiträge zu bearbeiten, ihn noch bearbeiten. Hinweis: Administratoren können Beiträge jederzeit bearbeiten und löschen.
Wir hoffen, dass dieser Artikel jedem geholfen hat, der das Bearbeiten, Aktualisieren und Löschen von Beiträgen in WordPress nach einem festgelegten Zeitraum blockieren möchte. Würden Sie dies jemals auf Ihrer Website tun? Welche Anwendungsfälle können Sie für so etwas sehen? Lass es uns in den Kommentaren unten wissen.
Quelle:
Smhm