WordPressをレスポンシブ画像でうまく再生させる

著者: Louise Ward
作成日: 6 2月 2021
更新日: 18 5月 2024
Anonim
【第72回】「カラム」機能でスマホ閲覧時のレスポンシブ対応も簡単「ワードプレス作成講座」画像の回り込みに苦しまなくなりますし、ブロックは入れ子で操作できます
ビデオ: 【第72回】「カラム」機能でスマホ閲覧時のレスポンシブ対応も簡単「ワードプレス作成講座」画像の回り込みに苦しまなくなりますし、ブロックは入れ子で操作できます

コンテンツ

  • 必要な知識:基本的なPHPとCSS
  • 必要です:WordPressのインストール、選択したテキストエディタ
  • プロジェクト時間: 10分

.netマガジンの印刷版を購読している場合(そうでない場合は、なぜですか!?)、今月号には「WordPressによるレスポンシブデザイン」に関する優れた記事が掲載されていることがわかります。

この記事では、著者のJesse Friedmanが、真に効果的なレスポンシブWebサイトを作成するために、固有のWordPress機能を最大限に活用し、克服するための非常に便利なテクニックの概要を説明しています。 WordPressでレスポンシブサイトを作成することを考えている場合は、間違いなく彼の記事のコピーを入手する必要があります。必読です。

最近、レスポンシブでモバイルファーストのアプローチを使用してWordPressで個人のブログを再構築したので、この記事で取り上げたテクニックのいくつかに精通していました。しかし、私にとって本当に目立ったのは、jQueryを介して流動的な画像を有効にするJesseのアプローチでした。


WordPressと「流体画像」の問題

max-width:100%を使用する「流動的な画像」をご存知だと思いますが、コンテナのサイズに合わせて拡大縮小するには、画像の幅や高さが固定されていない必要があります。残念ながら、WordPressはメディアライブラリから生成された画像のサイズを自動的に計算し、対応する幅と高さの属性をimg>タグに追加します。

これはページのレンダリング速度には最適ですが、 大規模 画像のサイズがコンテナのサイズに制限されなくなったため、レスポンシブレイアウトの作成に関してはスパナが機能しています。

それは問題だ。

非jQueryソリューション

Jesseの記事では、jQueryを使用して、ページが読み込まれた後、ページ上のすべてのimg>タグから幅と高さの属性を削除することを提案しています。これは確かに機能しますが、私のサイトを構築するとき、特に問題のページに多くの画像がある場合、これを実現するためにJavaScriptに依存するという考えは好きではありませんでした。


これがWordPressフィルターが助けになった場所です。

WordPressコーデックスはフィルターを次のように定義しています。

「... WordPressが起動するフックは、データベースに追加したりブラウザ画面に送信したりする前に、さまざまな種類のテキストを変更します。」

結局のところ、これはまさに私たちが必要としているものです。ページにレンダリングされる前の最終アクションとしてすべての画像で実行するフィルターを設定することで、PHPを使用して幅と高さの属性を削除し、JavaScriptを介した(潜在的に)高価なDOM操作の必要性を回避できます。

コード

  1. /**
  2. *レスポンシブ画像機能
  3. */
  4. add_filter( ’post_thumbnail_html’、 ’remove_thumbnail_dimensions’、10);
  5. add_filter( ’image_send_to_editor’、 ’remove_thumbnail_dimensions’、10);
  6. 関数remove_thumbnail_dimensions($ html)
  7. $ html = preg_replace( ’/(width

上記のコードでは、add_filter関数を使用して2つのフィルターを追加しています。最初の引数はフックするフィルターで、2番目の引数はフィルターが呼び出されたときに実行する関数を指定します。


私たちのコードでは、2つのあいまいな関数にフックします。

  1. post_thumbnail_html –で取得された画像 post_thumbnail()
  2. image_send_to_editor –エディターに追加された画像

次に、正規表現を使用して、画像タグから幅と高さの両方の属性を削除します。これで、画像がブラウザに送信されると、マルコット氏がそうすべきだと言ったように、完全に「流動的」になります。

告白

私は使用するという考えを持っていたことを告白しなければなりません add_filter 属性を削除するために、私は一生の間、フックする正しいWordPressフィルターを見つけることができませんでした。

たくさん検索した後、私はついにNathanielTaintorによるWordpressStack Exchangeに関するこの非常に役立つ投稿に出くわし、必要な2つのフィルターに関する情報を提供しました。

警告

私の知る限り、このアプローチの唯一の大きな欠点は、サイト上のすべての画像から幅と高さの属性が削除されないことです。特にWordPressがコメントで使用しているGravatar画像では、これが問題であることがわかりました。

誰かがこの問題の解決策を持っているなら、私たち全員が利益を得ることができるようにコメントを残してください。

これが有用であり、WordPressWebサイトに「流体画像」を実装するためにJavaScriptに依存する代わりの方法を示したことを願っています。

言葉:デビッド・スミス

Dave Smithは、英国バースの美しい街の近くに拠点を置くフロントエンドデザイナーです。彼が新しくてエキサイティングなウェブプロジェクトに取り組んでいないとき、彼はビッグバンドのジャズグループから交響楽団まであらゆるものでトランペットを演奏しているのを見つけることができます。 Twitterで@get_daveとしてDaveに追いつくことができます。

人気のある記事
問題解決に関するDivyaManian
さらに遠く

問題解決に関するDivyaManian

この記事は、ウェブデザイナーと開発者向けの世界で最も売れている雑誌である.netマガジンの239号に最初に掲載されました。誰かに直接面接する方がはるかに有益です。彼らと一緒に座っていると、顔の表情の微妙な変化、目のフリック、姿勢の変化を見ることができます。これは、さらなる調査に報いる可能性のある質問にぶつかったことを示唆しています。古いポーカーをプレイする決まり文句が行くように、誰もが言うことがあ...
視差スクロールウェブサイトを構築する:10のプロのヒント
さらに遠く

視差スクロールウェブサイトを構築する:10のプロのヒント

「視差」という用語は、さまざまな位置から見たときのオブジェクトの見かけの動きを指します。この手法は元々、背景画像が前景画像よりもゆっくりと移動し、奥行きのある錯覚を作り出す2Dビデオゲームで使用されていました。 1982年のアーケードゲームであるムーンパトロールで人気を博したものが、30年後にウェブデザインの主要なトレンドになると誰が思ったでしょう。視差ウェブサイトは、単純な2層サイト以来長い道の...
iPhone12とiPhone12 Pro:どちらがあなたにぴったりですか?
さらに遠く

iPhone12とiPhone12 Pro:どちらがあなたにぴったりですか?

2021年にiPhoneを購入していて、最新かつ最高のモデルが必要な場合は、iPhone12とiPhone12Proを比較します。この2つはほとんど同じように見え、多くの機能を共有していますが、特にカメラに関しては、いくつかの重要な違いがあります。もちろん、価格も別の要因です。iPhone12Proは、追加機能と引き換えに物事を押し上げますが、ほとんどの人にとって最高のカメラ付き携帯電話となるカメ...