画像アップロード時にファイルのフルパスを取得したい
-
アップローダーを利用し画像をアップロードした際にその画像のファイル名を含めたパスを取得し処理を行いたいとと思っています。
色々調べてみたところ
wp_generate_attachment_metadata
wp_update_attachment_metadata上記にフックすれば取得できそうだと思い実装したのですが、いまいち正常に動作しません。
連続で複数枚アップロードした際に最初に1枚しか動作しておりません。
下記がテストで作成したソースになります。
function media_copy( $img_meta ) { /* 処理する内容 */ $file = get_template_directory() . '/pubdate.txt'; file_put_contents( $file, json_encode($img_meta, JSON_UNESCAPED_UNICODE)); return $img_meta; } add_filter( 'wp_generate_attachment_metadata', 'media_copy' ); add_filter( 'wp_update_attachment_metadata', 'media_copy' );
画像がアップロードされる度に処理を行うには、どのようなフックを行えばよろしいでしょうか?
また、関係あるか分かりませんが、アップロード先を投稿タイプ名+記事IDに変更する下記処理も行っております。
add_filter( 'upload_dir', 'change_upload' ); function change_upload( $upload ) { $id = intval( $_REQUEST[ 'post_id' ] ); $dir = get_post_type( $id ) ? : 'images'; if ( $dir == "images" ) { $upload[ 'subdir' ] = "/" . $dir; } else { $upload[ 'subdir' ] = "/" . $dir . "/" . $id; } $upload[ 'path' ] .= $upload[ 'subdir' ]; $upload[ 'url' ] .= $upload[ 'subdir' ]; return $upload; }
何卒宜しくお願い致します。
4件の返信を表示中 - 1 - 4件目 (全4件中)
4件の返信を表示中 - 1 - 4件目 (全4件中)
- トピック「画像アップロード時にファイルのフルパスを取得したい」には新たに返信することはできません。