Par exemple...
add_action('init', 'reg_tax');
function reg_tax() {
register_taxonomy_for_object_type('category', 'attachment');
}
Ajoute un champ de saisie "Catégorie" au gestionnaire de médias et à l'éditeur de pièces jointes. Je voudrais savoir s'il est possible de modifier cette fonction pour capturer une URL "destination de lien" à la place. L'URL serait exécutée lorsque l'image est cliquée.
Vous devez également savoir comment récupérer la valeur de ce nouveau champ.
MISE À JOUR: Merci à Thomas Answer ci-dessous, voici ma solution finale ...
function my_image_attachment_fields_to_edit($form_fields, $post) {
$form_fields["custom1"] = array(
"label" => __("Image Links To"),
"input" => "text",
"value" => get_post_meta($post->ID, "_custom1", true)
);
return $form_fields;
}
function my_image_attachment_fields_to_save($post, $attachment) {
if( isset($attachment['custom1']) ){
update_post_meta($post['ID'], '_custom1', $attachment['custom1']);
}
return $post;
}
add_filter("attachment_fields_to_edit", "my_image_attachment_fields_to_edit", null, 2);
add_filter("attachment_fields_to_save", "my_image_attachment_fields_to_save", null, 2);
theme-development
Scott B
la source
la source
Réponses:
J'utilise un plugin très grossier pour ajouter des informations sur l'artiste et une URL vers des fichiers multimédias. Il a besoin de quelques ajustements (et j'ai besoin de temps), mais cela fonctionne et peut montrer comment ajouter les champs supplémentaires et comment les utiliser dans votre thème:
la source
En répondant à la question de Drew dans les commentaires, vous pouvez personnaliser le code HTML du champ en définissant le
input
sur une nouvelle chaîne, puis en ajoutant cette même chaîne comme clé au$form_fields
tableau.Par défaut, WordPress acceptera uniquement
text
ettextarea
pour leinput
type. Tout le reste devra être défini de manière personnalisée comme ci-dessous. Je n'ai pas essayé de persister réellement dans les champs de formulaire de cette façon, afin de créer un autre type d'entrée, comme un bouton radio, cela pourrait prendre un peu plus de finesse.la source