Simplicityの特徴 › フォーラム › Simplicity2に関する話題何でも › 不要なサムネイルを生成させず、かつ「srcset」を適用させたい。
- このトピックには7件の返信、2人の参加者があり、最後に
kenにより10年、 6ヶ月前に更新されました。
-
投稿者投稿
-
-
2016年3月24日 2:34 PM #37954
ken
ゲスト現在、子テーマにて不要なサムネイルを生成しないコードをfunctions.phpに記述しているのですが、
Wordpress4.4でサポートされたレスポンシブイメージの「srcset」が適用されず困っています。
不要なサイズのサムネイルを生成させず、「srcset」を効かせるためにはどうしたらよいでしょうか?//不要なサイズを生成しない function remove_image_sizes( $sizes) { unset( $sizes['thumb100']); unset( $sizes['thumb150']); unset( $sizes['thumb320']); unset( $sizes['thumb320_raw']); return $sizes; } add_filter('intermediate_image_sizes_advanced', 'remove_image_sizes'); //新たにサムネイルを生成 add_image_size('thumb_300x150',300,150,true);ご教授の程宜しくお願いいたします。
-
2016年3月24日 7:58 PM #37970
わいひらキーマスターサイトのURLを掲載していただいでよろしいでしょうか。
作者的観点からすれば、Simplicityを使うのであれば、コードに書いてあるサムネイルは不要ではないと思います。
(※設定によっては、320関係のものは不要な場合もありますが)
あと、不要なサムネイルを生成させないのと、srcsetがうまく動作しないのは、あまり関係がないのかなと思います。 -
2016年3月24日 9:12 PM #37976
ken
ゲストご返事ありがとうございます。
質問していながら失礼だと思いますが、
URLなしでご回答いただくことはできないでしょうか?作者的観点からすれば、Simplicityを使うのであれば、コードに書いてあるサムネイルは不要ではないと思います。
なるべく、そままの形でSimplicityを使っていきたいなとは思ったのですが、それぞれのthumbXXXのサイズを変更をしたデザインにしたいが為に、それぞれの生成をunsetして新たに追加という方法を渋々とっております。(実際もっと上記コードにadd_image_sizeでunset分をもっと追加してます)
thumbXXXで自動で追加される部分を子テーマにて自由に変更する方法はあったりするのでしょうか?
あと、不要なサムネイルを生成させないのと、srcsetがうまく動作しないのは、あまり関係がないのかなと思います。
上記のコードを記入しない場合はsrcsetの方の動作はしております。
プラグイン等はすべてOFFで試しております。(記事内でsrcsetの動作をしたいです)上記コードを記入する前にアップロードしてある写真はすべてsrcsetが動作しております。
コードを記入の状態でアップした画像のみがsrcsetが動作しない状態であります。
なので、画像をアップロードする際に原因があったりするのかなとは思ったのですがどうなんでしょうか?お忙しいとは思いますが、お時間あるときにでもご返事していただけたら幸いです。
-
2016年3月24日 10:05 PM #37977
Hidekichi
ゲストadd_image_size( ‘thumb150’, 0, 0, true );
関数を作らず、上記のようにサイズ0にしたらサムネイル作らないんじゃないですかね?
何かしらにフックしてるのが問題だったりして。試してないのでわかりませんけど(笑) -
2016年3月24日 10:35 PM #37979
ken
ゲストHidekichiさんありがとうございます。
add_image_size( ‘thumb150’, 0, 0, true );
子テーマに上記コードをやってみたのですが画像が生成されてしまいました。ただ、srcsetの方は動作いたしました。
子テーマにてサイズをそれぞれ0に指定して、上書き?させるにはどうしたらいいんでしょう? -
2016年3月24日 11:08 PM #37981
ken
ゲストごめんなさい、はじめにご質問を投稿した環境の場合でも「srcset」が動作することが判明しました。
ただ、すべての画像というわけではなく、動作したりしなかったり。やっぱり、不要なサムネイルサイズを生成させないのと関係ないかもしれません。
もう、自分でもいつ実行されないのか、よくわかんなくなってきましたw(質問しておきながらごめんなさい。)出来るとき
できない時
srcsetが出力されない感じです。画像サイズがサムネイル以上であればsrcsetが表示されるというわけでもなく、
かなりサイズがデカめの画像でもsrcsetが出力されなかったり。どういう条件でsrcsetは実行される仕組みなのでしょうか。 -
2016年3月25日 5:26 AM #37987
Hidekichi
ゲスト> 子テーマに上記コードをやってみたのですが画像が生成されてしまいました。
どんな画像でした?サイズが縦横0で、クロップされているということは、サイズのない画像かと思うんですけど、サイズがなければファイルサイズは無いも同じかと思うんですが、普通のサイズがあるサムネイルなんでしょうか?
サムネイル自体はアップロードされて登録された時に作られると思いますが、srcsetは、htmlが作られる時ですかね?
srcsetが作られたり作られなかったりは、CDNとかのキャッシュに影響されているんじゃなかろうかと思うんですがどうでしょう?
例えばcloud flareとかjetpackのphotonとか。わいひらさんが言うサイトを見せて欲しいというのはこういうのが使われているかどうかのチェックかと思います。内部で処理されていることは外からは見えませんから、どういったプラグインが使われていて、どういったサーバーかというのを見てみたいと言うんだろうと思います。photonを利用されている場合は、著作権侵害で訴えられているぐらいの事がないといちいち運営に連絡するのは面倒ですし、個人的にはキャッシュを操作できませんから、使わないようにするしか無いです。キャッシュがどれぐらいで切れるのかは知りませんが、切れたら画像サイズの設定が終わっていればその状態でキャッシュれるかと思います。
srcsetがないとレスポンシブにできないかというとそういうわけではないので、無ければない、できたら無い方が楽と個人的には思います。
普通にサイズ設定をunsetすれば、問題ないはずですが、質問の文章から答えられるのはこれぐらいですかね。 -
2016年3月25日 12:46 PM #37994
ken
ゲストご返事ありがとうございます。
max_srcset_image_widthというものが原因でした。デフォルトの仕様でsrcsetを動作させる上限が1600pxに設定されていたみたいです。
function new_srcset_max($max_width) { return 2000; } add_filter('max_srcset_image_width', 'new_srcset_max');で変更し、一応解決いたしました。
ご迷惑いろいろとおかけいたしました。
-
-
投稿者投稿
- トピック「不要なサムネイルを生成させず、かつ「srcset」を適用させたい。」には新しい返信をつけることはできません。