| [半角/全角]キーで入力タイプを切り替えるたびに出る通知がうざい【Windows10】ブログトップ | CMS関連 | includeしたものを変数に入れる【PHP】
wp_insert_attachmentだけではサムネイルが作られない
この記事は1年以上前の記事のため、内容が古い可能性があります。
フォームから送られてきたファイルをメディアに登録されるようにするプログラムを作っていたのですが、実際にメディアには登録されるけど一覧でサムネイルが表示されない・・・
で、Codexをよく見たら、wp_insert_attachmentのあとに下記2つの関数も実行しなくてはならないとのこと
wp_generate_attachment_metadata
wp_update_attachment_metadata
さらにこの関数を実行するには、
require_once( ABSPATH . 'wp-admin/includes/image.php' );
の必要があります。
つまりこんな感じ。
require_once( ABSPATH . 'wp-admin/includes/image.php' ); $attachment = array( 'guid' => "(ファイルのURL)", 'post_mime_type' => "(ファイルのタイプ)", 'post_title' => "(ファイルのタイトル)", 'post_content' => '', 'post_status' => 'inherit' ); $attach_id = wp_insert_attachment( $attachment, "(ファイル名)", 0); $attach_data = wp_generate_attachment_metadata( $attach_id, "(ファイルのパス)"); wp_update_attachment_metadata( $attach_id, $attach_data );
これで、メディアに登録される際にサムネイルも生成されるようになりました。
トラックバック
トラックバックURL
コメントする
※メールアドレスが公開されることはありません。