Comment ajouter des post-it dans WordPress Custom Post Type Archives

Comment ajouter des post-it dans WordPress Custom Post Type Archives / Tutoriels

Récemment, un de nos utilisateurs nous a demandé s’il était possible d’ajouter des posts collants à des archives de type posts personnalisé. Par défaut, WordPress dispose de la fonctionnalité rémanente disponible pour les publications, mais pas pour les autres types de publication. Dans cet article, nous allons vous montrer comment ajouter des articles post-it dans les archives de type article personnalisé de WordPress. Avant de poursuivre, vous voudrez probablement apprendre à créer des types de publication personnalisés dans WordPress..

Ajout de post-it dans les types de post personnalisés

La première chose à faire est d’installer et d’activer le plugin Sticky Custom Post Types. Après avoir activé le plugin, allez à Réglages »Lecture et faites défiler jusqu'à la section Types de post-it personnalisés. Ensuite, vous devez choisir les types de publication personnalisés où vous souhaitez que Stick Cette option soit activée..

Maintenant, ce que nous avons fait ici, c'est que nous avons ajouté une fonctionnalité de post-it à nos types de post personnalisés. Les posts collants dans les types de posts personnalisés seront affichés sur la page d'accueil, tout comme les posts normaux.

Le problème est que, par défaut, WordPress n’affiche que les posts collants sur la page d’accueil. Il ne montre pas les messages collants sur les pages d'archives.

Affichage de post-it dans les archives de type de post personnalisé

Supposons que vous avez un type de publication personnalisé pour les critiques de films avec les publications permanentes activées à l'aide du plug-in mentionné ci-dessus. Maintenant, vous voulez que vos articles collants dans les types d'articles de critiques de films soient affichés différemment et s'ajoutent aux commentaires de films ordinaires non collants. Comme ça:

Pour atteindre cet objectif, vous avez tout d’abord besoin d’un modèle d’archive pour votre type de publication personnalisé, comme suit: archive-post-type.php. Apprenez à créer une page d'archive de type publication personnalisée. Par exemple, si vous avez un type de publication personnalisé critiques de films alors votre modèle de page d'archive devrait être archive-movie-reviews.php. Si vous n'avez pas de modèle, créez-en un. Copiez simplement le contenu de archive.php dans le répertoire de votre thème et collez-le dans un nouveau fichier. archive-your-post-type.php.

La prochaine étape consiste à ajouter ce code dans le thème de votre thème. functions.php fichier:

 function wpb_cpt_sticky_at_top ($ posts) // ne l'applique aux archives que si (is_main_query () && is_post_type_archive ()) global $ wp_query; $ sticky_posts = get_option ('sticky_posts'); $ num_posts = count ($ posts); $ sticky_offset = 0; // Trouver les post-it pour ($ i = 0; $ i ID, $ sticky_posts)) $ sticky_post = $ posts [$ i]; // Supprimer le post-it de la position actuelle array_splice ($ posts, $ i, 1); // passe au premier plan, après d'autres stickies array_splice ($ posts, $ sticky_offset, 0, array ($ sticky_post)); $ sticky_offset ++; // Supprimer les messages des post-collants array $ offset = array_search ($ sticky_post-> ID, $ sticky_posts); unset ($ sticky_posts [$ offset]);  // Cherchez plus de posts collants si nécessaire si (! Empty ($ sticky_posts)) $ stickies = get_posts (array ('post__in' => $ sticky_posts, 'post_type' => $ wp_query-> query_vars ['post_type' ], 'post_status' => 'publier', 'nopaging' => true)); foreach ($ stickies en tant que $ sticky_post) array_splice ($ posts, $ sticky_offset, 0, array ($ sticky_post)); $ sticky_offset ++;  return $ posts;  add_filter ('the_posts', 'wpb_cpt_sticky_at_top'); // Ajoute une classe collante dans le titre de l'article afin de styler différemment les publications collantes function cpt_sticky_class ($ classes) if (is_sticky ()): $ classes [] = 'collant'; retourne $ classes; fin si; retourne $ classes;  add_filter ('post_class', 'cpt_sticky_class'); 

Le code ci-dessus déplacera vos posts collants vers le haut, et si votre thème utilise post_class () fonction, alors il ajouterait collant dans la classe post.

Vous pouvez styler vos posts collants en utilisant .gluant classe dans votre feuille de style. Exemple:

 .collant background-color: #edededed; background-image: url ('http://example.com/wp-content/uploads/featured.png'); répétition de fond: non répétée; position de fond: en haut à droite;  

Nous espérons que cet article vous a aidé à ajouter des publications persistantes dans des archives de type publication personnalisée. Pour des questions et des commentaires s'il vous plaît laissez un commentaire ci-dessous.

Source: Tareq Hasan