Ajouter des attributs de page Metabox et des modèles de page à la page d'édition des articles?
-
-
* @ Scott B *: Ehbien,j'ai écrittoutema réponse avant de voir que vous ytravailliez aussi,et il semble que vous ayezpris une direction quelquepeu différente de celle de votre questioninitiale avec vos options denon-suiviet d'index.J'espère que ce quej'aifait aencore de la valeurpour vous.Sinon,cela aiderapeut-être les autres.*@Scott B*: Well I wrote my whole answer before I saw that you were working on it too, and it seems you've taken it in a somewhat different direction that your original question with your no follow and no index options. Hopefully what I did still has value for you. If not, maybe it will help others.
- 0
- 2010-10-10
- MikeSchinkel
-
Oui,vous avez répondu à la question.J'aipris une approche unpeu différente unefois quej'ai réalisé queje n'avaispasbesoin d'analyser le répertoireet queje pouvais coderen dur les valeurs demesmodèles spécifiques.J'auraiprobablementencorebesoin d'emprunter unepartie de votre codepour que WP utilise lebonmodèle attribuépour lemessage.Yep, you've answered the question. I did take a bit different tack once I realized I didn't need to parse the directory and could hardcode the values for my specific templates. I'll still likely need to borrow some of your code for actually getting WP to use the correct assigned template for the post.
- 0
- 2010-10-11
- Scott B
-
1 réponses
- votes
-
- 2013-09-14
Wordpress vouspermet d'ajouter desméta aux catégories à l'aide d'unplugin:
Pour cefaire,vous devez ajouter l'une des différentesextensions qui ajoute desméta aux catégories (imitant lespages sortant de laboîte), Simple Term Meta faitbien letravail.
N.B. WordPress 3.xestnécessairepour étendre les catégories.
Après cela,vouspouvez utiliser:
- add_term_meta
- update_term_meta
- get_term_meta
Utilisez Functions.phppour ajouter desméthodespourfaire ce que vous voulez,parexemple
add_action('category_add_form_fields', 'category_metabox_add', 10, 1); function category_metabox_add($tag) { ?> <div class="form-field"> <label for="image-url"><?php _e('Image URL') ?></label> <input name="image-url" id="image-url" type="text" value="" size="40" aria-required="true" /> <p class="description"><?php _e('This image will be the thumbnail shown on the category page.'); ?></p> </div> <?php } add_action('created_category', 'save_category_metadata', 10, 1); function save_category_metadata($term_id) { if (isset($_POST['image-url'])) update_term_meta( $term_id, 'image-url', $_POST['image-url']); }
L'appel denouveaux champs dans lesthèmesest simple:
<?php echo get_term_meta(get_query_var('cat'), 'image-url', true); ?>
Plus de détailset d'exemples: http://www.wphub.com/adding-metadata-taxonomy-terms/
Wordpress allows you to add Meta to Categories using a plugin:
To do this you need to add one of the various extensions that adds meta to categories (mimicking what pages get out of the box), Simple Term Meta does the job nicely.
N.B. WordPress 3.x is needed for extending Categories.
After that you can use:
- add_term_meta
- update_term_meta
- get_term_meta
Use Functions.php to add methods to do what you want e.g.
add_action('category_add_form_fields', 'category_metabox_add', 10, 1); function category_metabox_add($tag) { ?> <div class="form-field"> <label for="image-url"><?php _e('Image URL') ?></label> <input name="image-url" id="image-url" type="text" value="" size="40" aria-required="true" /> <p class="description"><?php _e('This image will be the thumbnail shown on the category page.'); ?></p> </div> <?php } add_action('created_category', 'save_category_metadata', 10, 1); function save_category_metadata($term_id) { if (isset($_POST['image-url'])) update_term_meta( $term_id, 'image-url', $_POST['image-url']); }
Calling new fields in themes is easy:
<?php echo get_term_meta(get_query_var('cat'), 'image-url', true); ?>
More details and examples: http://www.wphub.com/adding-metadata-taxonomy-terms/
( Note desmodérateurs: Letitre était à l'origine "Commentpuis-je ajouter le sélecteur" Attributs depage "et/ou" Attributs depage> Modèle "à l'éditeur POSTS")
WPn'autorise actuellement que l'attribution d'un "modèle" auxpages (c'est-à-dire
post_type=='page'
.) Je voudrais également étendre cettefonctionnalité aux articles (c'est-à-direpost_type=='post'
.)Commentpuis-je ajouter laméta-boîte "Attributs depage" et plusprécisément,le sélecteur demodèles dans l'éditeur demessages?
Je suppose que c'est du code queje placerai dansmon
functions.php
pourmonthème.MISE À JOUR: J'ai réussi à ajouter lemenu déroulant desmodèles codésen dur àmon éditeur demessages,en ajoutant simplement laboîte de sélection html àmaboîte d'optionsmétapersonnaliséeexistante. Voici le code quej'utilisepour ça ...
Et voici lafonction qui écrit les optionset laboîte de sélection dumodèle ...
Etenfin,le codepour capturer les valeurs sélectionnées lors de la sauvegarde ...
Maintenant,je pense qu'ilne resteplus qu'à (1) capturer lemodèle sélectionnéet l'ajouter à laméta depublication de cemessageet (2)modifierindex.phpet single.php afin qu'il utilise lemodèle choisi.