X

Comment forcer un type de publication personnalisé à être privé dans WordPress

Extraits par IsItWP

Vous cherchez un moyen de forcer votre type de publication personnalisé à être privé par défaut ? Bien qu'il existe probablement un plugin pour cela, nous avons créé un extrait de code rapide que vous pouvez utiliser pour forcer un type de publication personnalisé à être privé dans WordPress.

Instructions :

Il vous suffit d'ajouter ce code au fichier functions.php de votre thème ou dans un plugin spécifique au site :

function force_type_private($post)
{
    if ($post['post_type'] == 'my_post_type')
    $post['post_status'] = 'private';
    return $post;
}
add_filter('wp_insert_post_data', 'force_type_private');

N'oubliez pas de changer my_post_type par le nom de votre type de publication personnalisé. C'est un léger changement par rapport au code source et il n'inclut pas de mot de passe car il est privé et non protégé par mot de passe.

Remarque : Si c'est la première fois que vous ajoutez des extraits de code dans WordPress, veuillez consulter notre guide sur la manière d'ajouter correctement des extraits de code dans WordPress, afin de ne pas endommager accidentellement votre site.

Si vous avez aimé cet extrait de code, n'hésitez pas à consulter nos autres articles sur le site tels que : 28 meilleurs thèmes de CV WordPress et comment créer un formulaire de candidature dans WordPress.

Commentaires   Laisser une réponse

  1. Bonjour,

    Une idée de comment faire le même code mais pour 2 CPT différents au lieu d'un seul ?

    Merci d'avance

  2. Fabrizio Fabricatore July 25, 2013 at 8:33 am

    je sais que ce fil est un peu vieux mais... comment cibler un champ personnalisé dans ce type de publication personnalisé pour changer sa valeur ?

  3. Martin Storbeck April 5, 2012 at 7:11 am

    Je l'ai modifié, donc les liens sont définis sur le nom de la publication au lieu de "my_post_type/auto-draft" lorsqu'ils sont créés. De cette façon, vous pouvez également publier des articles protégés par mot de passe.

    function force_type_private($post)
    { if ($post[‘post_type’] == ‘my_post_type’) { if ($post[‘post_status’] == ‘publish’) $post[‘post_status’] = ‘private’; } return $post; } add_filter(‘wp_insert_post_data’, ‘force_type_private’);

  4. Cela fonctionne, mais j'ai constaté que cela rend impossible le déplacement de l'article vers la corbeille... avez-vous également rencontré ce problème ?

    1. Non, je n'ai pas eu ce problème, mais je vais essayer et voir si je peux reproduire le problème.

    2. Oui, j'ai exactement le même problème... Quelqu'un a des idées ?

  5. Pourquoi ne pas simplement faire : if ( post type = mon type de publication) { statut de la publication = privé ; retourner la publication ; }

    Il semble que vous ayez une ligne supplémentaire inutile.

    1. C'est vrai Adam, je l'ai corrigé.

  6. ce code est-il correct ?
    Je pense que vous avez oublié un « ELSE »

    1. Salut Jose,
      Non, c'est correct, créez simplement un nouveau type de publication personnalisé, puis ajoutez ceci à functions.php et vous remarquerez que lorsque vous sélectionnez ajouter une nouvelle publication pour ce type de publication personnalisé, elle sera par défaut sélectionnée comme privée.

      1. Bonjour Kevin,

        Toujours aucun moyen de supprimer mes publications avec ce code. Une idée ?

        Cordialement,

        1. J'ai utilisé un code comme celui-ci, qui vérifie s'ils sont dans la corbeille avant de les rendre privés :
          // Forcer les publications du type personnalisé « internt-arkiv » à être privées
          //… mais assurez-vous d'abord qu'elles ne sont pas « trash » sinon il est impossible de mettre une publication à la corbeille
          function force_type_private($post)
          {     if ($post[‘post_type’] == ‘my_post_type’) {         if ($post[‘post_status’] != ‘trash’) $post[‘post_status’] = ‘private’;     }     return $post; } add_filter(‘wp_insert_post_data’, ‘force_type_private’);

  7. Tweets that mention Wordpress Force custom post type to be private – wpsnipp.com Wordpress code snippets for your blog -- Topsy.com February 15, 2011 at 12:37 am

    […] Ce post a été mentionné sur Twitter par HTMLfrp, wp_freak. wp_freak a dit : #wordpress Forcer le type de publication personnalisé à être privé http://bit.ly/fHzJuW […]

Ajouter un commentaire

Nous sommes heureux que vous ayez choisi de laisser un commentaire. N'oubliez pas que tous les commentaires sont modérés conformément à notre politique de confidentialité, et tous les liens sont nofollow. N'utilisez PAS de mots-clés dans le champ nom. Ayons une conversation personnelle et significative.

Liste de contrôle de lancement WordPress

La checklist ultime pour lancer un WordPress

Nous avons compilé tous les éléments essentiels de la liste de contrôle pour le lancement de votre prochain site Web WordPress dans un ebook pratique.
Oui, envoyez-moi l'eBook gratuit !