我正在尝试创建一个函数,自动为附件元数据添加一个值(如果重要的话,在音频上传时)。
例如,我想添加一个值“artist”,并将其作为我自己的特定性输出(为了示例,只需简单地“test”)
我尝试了很多方法,但到目前为止,每种方法都没有奏效(并且在上传媒体时输出了一个未指明的错误)。
以下是我尝试过的几件事:
function auto_update_audio_meta($post_ID) {
add_post_meta( $post_ID, \'artist\', \'test\');
}
add_action(\'add_post_meta\', \'auto_update_audio_meta\');
我也试过
update_post_metadata
, 以及变化,如
function auto_update_audio_meta() {
wp_update_post_meta( $post->ID, \'artist\', \'test\');
}
add_action(\'update_post_metadata\', \'auto_update_audio_meta\', 10, 5);
我做错了什么?
最合适的回答,由SO网友:cowgill 整理而成
你接近了!尝试使用这些挂钩。
// Add post meta to new audio uploads.
function auto_update_audio_meta( $post_ID ) {
if ( wp_attachment_is( \'audio\', $post_ID ) ) {
add_post_meta( $post_ID, \'artist\', \'test\' );
}
}
add_action( \'add_attachment\', \'auto_update_audio_meta\' );
用于附件更新
// Update post meta to updated audio uploads.
function auto_update_audio_meta( $post_ID, $post_after, $post_before ) {
if ( wp_attachment_is( \'audio\', $post_ID ) ) {
update_post_meta( $post_ID, \'artist\', \'test\' );
}
}
add_action( \'attachment_updated\', \'auto_update_audio_meta\', 10, 3 );