この記事の内容は古く誤りがある可能性があります。
投稿タイプにより生成されるサムネイル画像を制御する方法については、以下の最新の投稿をご覧ください。(2019年5月23日)
WordPress 特定の投稿タイプのサムネイル画像を自動生成させない
以下は古い内容です。
アイキャッチ画像の設定や「メディアを追加」(本文に挿入するしないに関わらず)を行うと、「設定」→「メディア」ページで設定した基本サイズ(thumbnail,medium,large)、「set_post_thumbnail_size()」で指定したサイズ(post_thumbnail)、及び add_image_size() で指定したサイズのサムネイルが自動的に生成される。
カスタム投稿タイプごとに異なるサムネイルサイズが必要な場合、仮に下記のような設定を functions.php に記述した場合、下記で指定した6種類のサイズのサムネイル及び基本サイズのサムネイルが自動的に生成される。
add_theme_support('post-thumbnails'); set_post_thumbnail_size(160, 160); add_image_size('works_l', 360, 540); add_image_size('works_m', 300, 450); add_image_size('works_s', 80, 80, true); add_image_size('news_s', 120, 120); add_image_size('news_m', 280, 280);
これでは、アップロードフォルダに使用しない多数のサムネイルが存在してしまうので、カスタム投稿タイプごとにサムネイルのサイズを指定できないか、調べてみたが、現時点ではおそらく「できない」ということらしい。
理由:メディアライブラリにファイルをアップロードする場合、画像は投稿や投稿タイプに関連付けされていないため、その時点で投稿タイプに関連付けてサイズを変更することはできない。
To answer your question, currently (Version 3.4.1) it is not possible. And the reason is simple: If you upload a file to your media library your image is not related to any post nor even a post_type, so wordpress cannot know, that this file has to be resized into a different format.
http://stackoverflow.com/questions/
add_action などで is_singular(‘works’) を使ってできないか試してみたが、どれもうまくいかなかったのは上記の理由によるものだと思う。
現在考えられる対処:
add_theme_support('post-thumbnails'); set_post_thumbnail_size(160, 160); //add_image_size('works_l', 360, 540); //add_image_size('works_m', 300, 450); //add_image_size('works_recent', 220, 330); //add_image_size('works_s', 80, 80, true); add_image_size('news_s', 120, 120); add_image_size('news_m', 280, 280);
「メディアライブラリ」やそれぞれのページの編集画面から「メディアの追加」→「メディアを挿入」の画面で削除する画像を選択して「完全に削除する」をクリックすると画像を削除することができる。
まとまった画像を削除する場合は「メディアライブラリ」で、削除する画像にチェックをつけて「一括操作」で「完全に削除する」を選択し「適用」をクリックするとまとめて削除できる。但し確認のポップアップ等はないので慎重に。
また、それぞれのページの編集画面からの場合、プルダウンから「この投稿へのアップロード」を選択すると、そのページにアップロードした画像が表示されるので、そこから選択することも可能。
add_theme_support('post-thumbnails'); set_post_thumbnail_size(160, 160); add_image_size('works_l', 360, 540); add_image_size('works_m', 300, 450); add_image_size('works_s', 80, 80, true); add_image_size('news_s', 120, 120); add_image_size('news_m', 280, 280);
add_theme_support('post-thumbnails'); set_post_thumbnail_size(160, 160); //add_image_size('works_l', 360, 540); //add_image_size('works_m', 300, 450); //add_image_size('works_recent', 220, 330); //add_image_size('works_s', 80, 80, true); add_image_size('news_s', 120, 120); add_image_size('news_m', 280, 280);
コメントアウトしてある4つのサムネイルは削除されず、そのまま残ってしまう。
また、「公開日時」を何らかの理由で変更した場合、メディアを再設定(削除してアップロードなど)したりすると、年や月が異なっている場合、変更した日時の「年」と「月」に対応するアップロードフォルダに保存される。