web-dev-qa-db-fra.com

Comment * désactiver * éditeur de contenu de publication

Des bonnes idées sur la façon de désactiver l'éditeur de contenu de publication? Je ne veux pas le cacher, le supprimer ou supprimer la page.

L'objectif est de permettre aux utilisateurs disposant de peu d'autorisations d'afficher l'écran de modification afin de pouvoir lire le contenu, sans pouvoir modifier le contenu. (Je dois également comprendre comment désactiver d'autres éléments de la page, mais une étape à la fois).

Je l'ai déjà fait avec Javascript en ciblant simplement la zone de texte et en ajoutant disabled, mais en recherchant une méthode moins fragile.

Pourquoi j'ai besoin de ceci: https://github.com/post-forking/post-forking/pull/105

2
developdaly

Je pense que le meilleur moyen est de le supprimer, puis d’imprimer le contenu de n’importe quel textarea, mais en HTML:

add_action('load-post.php', 'read_only_content');

function read_only_content() {
  if ( ! current_user_can('manage_options') ) { // change the cap with the wanted one
    $scr = get_current_screen();
    remove_post_type_support( $scr->post_type, 'editor' );
    add_action('edit_form_after_editor', 'print_the_content');
  }
}

function print_the_content( $post ) {
  echo '<h2>' . __('Post Content:') . '</h2>';
  echo '<div id="content" style="width=99%;margin:15px 0;padding:1%;border:1px solid #aaa">'; 
  echo apply_filters('the_content', $post->post_content);
  echo '</div>';
}
4
gmazzap

Peut-être que je suis blonde mais que la solution ci-dessus pourrait être résolue en modifiant simplement certaines options de rôle?

Je suis conscient que ma réponse ne renvoie pas à la question ci-dessus mais suit les intentions que vous indiquez vous-même telles que mentionnées dans github. (les questions/souhaits ne sont pas du tout égaux, voici la question faite ci-dessus que vous voulez désactiver l’édition et donc aussi les options de publication et dans github que vous voulez désactiver l’option de publication mais que vous pouvez toujours éditer!? (permettant à Billy de faire des corrections)

Billy semble en quelque sorte une sorte d’éditeur (ce n’est pas expliqué dans github qui est l’auteur, mais en supposant qu’il ne le soit pas).

Vous pouvez modifier les rôles (je créerais un nouveau rôle avec des restrictions, ce qui lui permettrait de faire des corrections dans le texte) et de limiter certaines options. (désactivez publish_posts/publish_pages)

Maintenant, il est capable de corriger le texte et ne peut que cliquer sur "soumettre pour révision". Vous, en tant que patron (supposez que vous êtes l'éditeur), pouvez vérifier et, le cas échéant, apporter des corrections et publier à tout moment.

Si mes arguments sont corrects, ce serait un moyen rapide et fiable de réaliser ce que vous voulez. Si je me trompe totalement, dites-le-moi et je supprimerai cette réponse.

0
Charles