web-dev-qa-db-fra.com

Puis-je ajouter des méta personnalisées pour chaque image téléchargée via media-upload.php?

J'appelle media-upload.php via une icône personnalisée, cliquez dans l'éditeur de contenu. J'aimerais ajouter une méta-valeur personnalisée à toutes les images téléchargées lorsque le fichier media-upload.php est appelé à partir de ma fonction personnalisée.

Par exemple, pour chacune des images téléchargées, je souhaite insérer une valeur dans wp_postmeta de _customAttachment = 1 comme suit:

update_post_meta($post['ID'], '_customAttachment', true);

Je sais comment je peux transmettre le post-id actuel au fichier media-upload.php (via les paramètres de chaîne de requête), mais je ne sais pas comment attacher mon filtre update_post_meta au déclencheur d'enregistrement/de téléchargement dans le fichier media-upload.php

Y a-t-il un filtre pour cela?

2
Scott B

Oui, vous pouvez ajouter des champs, un exemple

function rt_image_attachment_fields_to_save($post, $attachment) {
    // $attachment part of the form $_POST ($_POST[attachments][postID])
        // $post['post_type'] == 'attachment'
    if( isset($attachment['rt-image-link']) ){
        // update_post_meta(postID, meta_key, meta_value);
        update_post_meta($post['ID'], '_rt-image-link', $attachment['rt-image-link']);
    }
    return $post;
}
// now attach our function to the hook.
add_filter("attachment_fields_to_save", "rt_image_attachment_fields_to_save", null , 2);

voir plus sur ce post

5
bueltge