web-dev-qa-db-fra.com

Masquer l'éditeur de contenu pour les publications postérieures à la date appropriée

Je suis en train d’ajuster mon nouveau site et de désactiver l’éditeur de contenu pour les publications créées après la date X, mais pour les publications créées avant cette date, l’éditeur de contenu doit être à sa place.

2
Beer Brother
function disable_editor_for_old_posts_wpse_101106($post) {
  if (strtotime('-2 months') > strtotime($post->post_date)) {
    remove_post_type_support('post','editor');
  }
}
add_action('add_meta_boxes_post', 'disable_editor_for_old_posts_wpse_101106');

Je ne pouvais pas trouver un bon point d'ancrage pour cela, mais add_post_meta_boxes_* est suffisamment tôt et passe l'objet $post au rappel.

Fondamentalement, le filtre vérifie la publication sur l'écran de modification et supprime la prise en charge du type de publication en fonction de la publication. J'ai utilisé deux mois comme seuil mais cela est facilement modifié.

Je ne vois pas l'intérêt de se soucier de l'éditeur sauf sur le backend, à moins que vous n'ayez un mécanisme de publication frontale.

La suppression de l'éditeur rend la page un peu moche, mais je pense que l'ajout d'une sorte de boîte de méta de message via edit_form_after_title permettrait de trier cela - comme ceci: https: //wordpress.stackexchange. com/a/100495/21376

Référence

http://codex.wordpress.org/Function_Reference/remove_post_type_support

1
s_ha_dum