J'essaie que WordPress enregistre automatiquement les métadonnées de «crédit» qui sont stockées dans les images que je télécharge. Je sais que cela serait entré comme un champ méta personnalisé à l'aide de update_post_meta()
.
Les informations de "crédit" sont collectées par wp_read_image_metadata()
, mais media_handle_upload()
ne les utilisent pas. Il utilise uniquement les informations "légende" et "titre" recueillies à partir de l'image pour post_content
et post_title
respectivement.
J'ai trouvé plusieurs exemples sur la façon d'ajouter des champs de métadonnées de pièce jointe personnalisés après le téléchargement lors de la modification de l'image, mais comme WP recueille déjà ces informations à partir des métadonnées de l'image, j'aimerais trouver un moyen de l'enregistrer en tant qu'image est téléchargé.
Je ne sais pas quelles étapes prendre pour se connecter media_handle_upload()
(il ne semble pas y avoir de crochet) afin que je puisse appeler update_post_meta
pour enregistrer la ligne de "crédit" pour la pièce jointe.
Réponses:
Vous pouvez utiliser
wp_generate_attachment_metadata
:Le deuxième argument du filtre est l'ID de pièce jointe, donc cela ne devrait pas être un problème pour ajouter la méta post:
En inspectant le contenu de
$metadata['image_meta']
FirePHP, voici les résultats:[Mise à jour]
Test complet ajoutant une colonne personnalisée dans l'écran de la bibliothèque multimédia (
/wp-admin/upload.php
) pour afficher les méta-informations du post:Questions et réponses quelque peu liées: créer une nouvelle catégorie lors de l'enregistrement en fonction des informations de publication
la source