WordPress dazu bringen, mit reaktionsschnellen Bildern gut zu spielen

Autor: Louise Ward
Erstelldatum: 6 Februar 2021
Aktualisierungsdatum: 18 Kann 2024
Anonim
Darum musst du unbedingt eine Nische finden
Video: Darum musst du unbedingt eine Nische finden

Inhalt

  • Kenntnisse erforderlich: Grundlegendes PHP und CSS
  • Benötigt: WordPress installieren, Texteditor der Wahl
  • Projektzeit: 10 Minuten

Wenn Sie die gedruckte Version des .net-Magazins abonnieren (wenn nicht, warum nicht!?), Werden Sie feststellen, dass die Ausgabe dieses Monats einen hervorragenden Artikel zum Thema "Responsive Design with WordPress" enthält.

In dem Artikel skizziert der Autor Jesse Friedman eine Menge wirklich nützlicher Techniken, um die inhärente WordPress-Funktionalität optimal zu nutzen und zu überwinden, um eine wirklich effektive reaktionsfähige Website zu erstellen. Wenn Sie daran denken, eine reaktionsfähige Website mit WordPress zu erstellen, sollten Sie auf jeden Fall eine Kopie seines Artikels abholen. Es ist ein Muss.

Nachdem ich kürzlich mein persönliches Blog in WordPress mit einem reaktionsschnellen Mobile-First-Ansatz neu erstellt hatte, war ich mit einigen der im Artikel behandelten Techniken vertraut. Das einzige, was mir wirklich auffiel, war Jesses Ansatz, flüssige Bilder über jQuery zu ermöglichen.


Das Problem mit WordPress und "fließenden Bildern"

Wie Sie sicher alle wissen, erfordern flüssige Bilder, die eine maximale Breite von 100% verwenden, dass Bilder keine feste Breite oder Höhe haben, damit sie auf die Größe ihres Containers skaliert werden können. Leider berechnet WordPress automatisch die Abmessungen von Bildern, die aus der Medienbibliothek generiert wurden, und fügt allen img> -Tags die entsprechenden Attribute für Breite und Höhe hinzu.

Dies ist ideal für die Geschwindigkeit beim Rendern von Seiten, wirft jedoch eine fest Spanner in Arbeit, wenn es darum geht, reaktionsschnelle Layouts zu erstellen, da die Bildabmessungen nicht mehr auf die Größe ihres Containers beschränkt sind.

Das ist ein Problem.

Die Nicht-jQuery-Lösung

In seinem Artikel schlägt Jesse vor, jQuery zu verwenden, um die Attribute width und height aus allen img> -Tags auf der Seite zu entfernen, sobald diese geladen wurde. Dies funktioniert sicherlich, aber beim Erstellen meiner Website gefiel mir die Idee nicht, mich auf JavaScript zu verlassen, um dies zu erreichen, insbesondere wenn auf der betreffenden Seite viele Bilder vorhanden waren.


Hier kamen WordPress-Filter zum Einsatz.

Der WordPress-Codex definiert einen Filter als:

"... Hooks, die WordPress startet, um Text verschiedener Typen zu ändern, bevor er zur Datenbank hinzugefügt oder an den Browserbildschirm gesendet wird."

Wie sich herausstellt, ist dies genau das, was wir brauchen. Indem wir einen Filter einrichten, der für alle Bilder als letzte Aktion ausgeführt wird, bevor sie auf der Seite gerendert werden, können wir mithilfe von PHP die Attribute width und height entfernen, um die Notwendigkeit einer (möglicherweise) teuren DOM-Manipulation über JavaScript zu umgehen.

Der Code

  1. /**
  2. * ANTWORTBILDFUNKTIONEN
  3. */
  4. add_filter (’post_thumbnail_html’, ’remove_thumbnail_dimensions’, 10);
  5. add_filter (’image_send_to_editor’, ’remove_thumbnail_dimensions’, 10);
  6. Funktion remove_thumbnail_dimensions ($ html)
  7. $ html = preg_replace (’/ (width

Im obigen Code fügen wir zwei Filter mit der Funktion add_filter hinzu. Das erste Argument ist der Filter, in den wir uns einbinden möchten, und das zweite gibt die Funktion an, die ausgeführt werden soll, wenn der Filter aufgerufen wird.


In unserem Code verbinden wir uns mit zwei obskuren Funktionen:

  1. post_thumbnail_html - Bilder, die mit dem abgerufen wurden post_thumbnail ()
  2. image_send_to_editor - Bilder, die dem Editor hinzugefügt wurden

Wir verwenden dann einen regulären Ausdruck, um sowohl die Breiten- als auch die Höhenattribute aus den Bild-Tags zu entfernen. Wenn unsere Bilder jetzt an den Browser gesendet werden, können sie vollständig flüssig sein, so wie es uns Herr Marcotte gesagt hat.

Ein Geständnis

Ich muss gestehen, dass ich die Idee hatte, sie zu benutzen add_filter Um Attribute zu entfernen, konnte ich für mein ganzes Leben nicht die richtigen WordPress-Filter finden, in die ich mich einhaken konnte.

Nach langem Suchen stieß ich schließlich auf diesen äußerst hilfreichen Beitrag von Nathaniel Taintor zu Wordpress Stack Exchange, der die Informationen zu den beiden benötigten Filtern enthielt.

Vorsichtsmaßnahmen

Soweit ich weiß, besteht der einzige große Nachteil dieses Ansatzes darin, dass die Attribute "Breite" und "Höhe" nicht aus allen Bildern auf Ihrer Website entfernt werden. Ich fand, dass dies ein Problem ist, insbesondere bei den Gravatar-Bildern, die WordPress in Kommentaren verwendet.

Wenn jemand eine Lösung für dieses Problem hat, hinterlassen Sie bitte einen Kommentar, damit wir alle davon profitieren können.

Ich hoffe, dies war nützlich und hat eine Alternative zum Verlassen auf JavaScript gezeigt, um „flüssige Bilder“ auf WordPress-Websites zu implementieren.

Worte: David Smith

Dave Smith ist Front-End-Designer in der Nähe der wunderschönen Stadt Bath in Großbritannien. Wenn er nicht gerade an neuen und aufregenden Webprojekten arbeitet, spielt er Trompete in allen Bereichen, von Big Band-Jazzgruppen bis hin zu Sinfonieorchestern. Sie können Dave auf Twitter als @get_dave einholen.

Die Wahl Des Herausgebers
Können Sie diesen wesentlichen Aspekten des Webdesigns widerstehen?
Weiterlesen

Können Sie diesen wesentlichen Aspekten des Webdesigns widerstehen?

Ha t du ein bi chen Geld, da ein Loch in deiner Ta che brennt? Nach einem an trengenden Tag gegen Parallax- crolling und jQuery-Plugin i t e chön, ich da zu gönnen, um ein be erer Webde igne...
Betonpfosten als Vorbilder
Weiterlesen

Betonpfosten als Vorbilder

Hier bei Creative Bloq lieben wir e , wenn zwei kreative Welten kollidieren. In die er erie wird die Modebranche auf einen fa t architektoni chen A pekt angewendet. "Fa hion Concrete" i t da...
Warum Sie sicherstellen sollten, dass Ihre Website Rhythmus hat
Weiterlesen

Warum Sie sicherstellen sollten, dass Ihre Website Rhythmus hat

In letzter Zeit wurde in der Branche viel über die techni chen A pekte einer " chnellen" Web ite ge prochen. Die i t begründet: Die Ge chwindigkeit beim Laden von eiten i t unglaub...