Comment obtenir le menu déroulant du modèle dans les attributs de page du type de publication personnalisé?
4 réponses
- votes
-
- 2011-12-01
Vousne pouvezpas appliquer demodèles à destypes depublicationpersonnalisés de cettemanière.Celan'apparaîtra que si letype depublicationest «page» (Vérifiez la ligne 568 wp-admin/includes/meta-boxes.php).Cependant,si vous souhaitez stylisertous vostypes depublicationpersonnalisés de lamêmemanièremais différents des autrestypes depublication,vouspouvez utiliser le seul- [posttype] .php -> http://codex.wordpress.org/images/1/18/Template_Hierarchy.png
You can't apply templates to custom post types in this manner. That will show up only if the post type is 'page' ( Check the wp-admin/includes/meta-boxes.php line 568 ). However if you want to style all your single custom post types in the same manner but different from other post types you could use the single-[posttype].php -> http://codex.wordpress.org/images/1/18/Template_Hierarchy.png
-
Ouimerci.C'est dommage qu'ilsn'aientpasencore cettefonctionnalité.Yeah, thanks. It's too bad they don't have this feature yet.
- 0
- 2012-02-06
- rpeg
-
La liste déroulante desmodèlesn'est-elletoujourspaspriseen charge dans lestypes depublicationpersonnalisés àpartir de la version 4.1?Is the template dropdown still not supported in custom post types as of 4.1?
- 0
- 2015-02-12
- supertrue
-
Avez-vous/quelqu'un atrouvé la solutionpour afficher la sélection d'attribut/modèle depagepour le TYPE DE POSTE PERSONNALISÉ??did u / anyone found the solution to show the page attribute / template selection for CUSTOM POST TYPE??
- 0
- 2015-03-27
- Riffaz Starr
-
- 2017-05-04
Ehbien,àpartir de Wordpress 4.7,lesmodèlespersonnalisés sont également disponiblespour lestypes depublicationpersonnalisés,lors de la définition d'unmodèle,sous lenom dumodèle,ajoutez une autre ligne comme (où «produit»est votretype depublicationpersonnalisé):
<?php /* Template Name: My custom layout Template Post Type: post, page, product */ // your code here
et n'oubliezpas d'ajouter des "attributs depage" lors de l'enregistrement de votretype depublicationpersonnalisé:
'supports' => array('title', 'page-attributes'),
pour afficher laboîte "Attributs depublication".
Well, as of Wordpress 4.7 custom templates are also available to custom post types, when defining a template, below the name of the template add another line like (where 'product' is your custom post type):
<?php /* Template Name: My custom layout Template Post Type: post, page, product */ // your code here
and remember to add 'page-attributes' when registering your custom post type:
'supports' => array('title', 'page-attributes'),
to display the "Post attributes" box.
-
j'y suis arrivé!exactement ce dontj'avaisbesoin.nailed it! exactly what I needed.
- 0
- 2018-12-10
- Marty McGee
-
Plus d'informations à ce sujetici: [https://make.wordpress.org/core/2016/11/03/post-type-templates-in-4-7/[https://make.wordpress.org/core/2016/11/03/post-type-templates-in-4-7/)More info on this here: [https://make.wordpress.org/core/2016/11/03/post-type-templates-in-4-7/](https://make.wordpress.org/core/2016/11/03/post-type-templates-in-4-7/)
- 0
- 2020-05-26
- Dvaeer
-
Jen'avais aucuneidée à ce sujet.Merci!Had no idea about this. Thanks!
- 0
- 2020-07-06
- Keith Donegan
-
- 2017-08-30
Avecmonthème,je propose desmodèles "virtuels". Iln'y apas defichiers
{template}.php
spécifiques dansmonthème,j'ai doncfiltré lesmodèles de PAGE comme ceci:function my_virtual_templates( $templates ) { $my_virtual_templates = array( 'virtual_template_id_1' => 'Template 1', 'virtual_template_id_2' => 'Template 2', 'virtual_template_id_3' => 'Template 3' ); // Merge with any templates already available $templates = array_merge( $templates, $my_virtual_templates ); return $templates; } add_filter( 'theme_page_templates', 'my_virtual_templates' );
Je cherchais unmoyen "simple" d'ajouter laméta-boîte de l'article sur untype demessagepersonnalisé (CPT) lorsqueje suistombé sur cemessage. Étant donné quemonnouveau CPT utilisera cemêmetableau demodèles "virtuels",j'avaisjustebesoin demettreen place uneméta-boîte depublication.
Utilisation du theme _ {$post_type} _templates Il crée automatiquement cetteméta demessage zone deboîtepourmoi. Donc,là oùmon CPT s'appelle
my_cpt
,j'ai ajouté lefiltre comme ceci:add_filter( 'theme_my_cpt_templates', 'my_virtual_templates');
Maintenant,laméta-boîteet le sélecteur apparaissent,et jepeuxmême changer sur l'écran demodificationen blocpuisquetoutestintégré. Trèspratique!
With my theme, I provide "virtual" templates. There are no specific
{template}.php
files in my theme, so I filtered the PAGE templates like so:function my_virtual_templates( $templates ) { $my_virtual_templates = array( 'virtual_template_id_1' => 'Template 1', 'virtual_template_id_2' => 'Template 2', 'virtual_template_id_3' => 'Template 3' ); // Merge with any templates already available $templates = array_merge( $templates, $my_virtual_templates ); return $templates; } add_filter( 'theme_page_templates', 'my_virtual_templates' );
I was looking for a "simple" way to add the actual post meta box on a Custom Post Type (CPT) when I came across this post. Since my new CPT will use this same array of "virtual" templates, I just needed to get a post meta box in place.
Using the theme_{$post_type}_templates It automatically creates this post meta box area for me. So where my CPT is called
my_cpt
I added the filter like so:add_filter( 'theme_my_cpt_templates', 'my_virtual_templates');
Now, the meta box and selector shows up, and I can even change on the bulk edit screen since this is all built in. Very handy!
-
- 2018-10-23
créez simplementn'importe quelfichier demodèleet définissez-le dans l'en-tête dumodèle:
/* Template Name: Some Name Template Post Type: your_type, page */
puis le sélecteur demodèle apparaît dans "Attributs depublication"
just create any template file and set in header of template this:
/* Template Name: Some Name Template Post Type: your_type, page */
then template selector appears in 'Post Attributes'
Lorsquej'enregistremontype depublicationpersonnalisé,je règle ceci:
Donc,je suis supposé voir "ordre","modèles","parents" dans la zone Attributs lors de la création d'unnouveaumessage.Mais,je ne voispas la liste déroulante des «modèles» apparaître. Que dois-jefaire d'autrepour activer le choix des «modèles»?