performancesmäßig ist es besser, ein (kleines) Skript auf jeder Seite einzubinden oder zu testen, ob es benötigt wird?

Ich verwende das FitVids.js- Skript, damit YouTube- Videobetains mit einem responsiven Layout funktionieren. Das Skript ist <3 KB, aber nur etwa die Hälfte meiner Seiten enthält YouTube-Einbettungen.

strpos() es in Bezug auf die Gesamtladezeit für eine Seite, die kein YouTube-Video enthält, eine strpos() für den Inhalt strpos() oder für die Aufnahme des Skripts?

Ich kann mir vorstellen, dass dies viel mit der Verbindungsgeschwindigkeit des Endnutzers im Vergleich zu den Ressourcen des Servers zu tun hat, und ehrlich gesagt, es ist eine Website mit wenig Verkehr und anspruchslosen Benutzern, also ist es wirklich egal … Ich frage meistens, weil ich Ich habe kein gutes Verständnis von performancesoptimierung und möchte etwas lernen.

Solutions Collecting From Web of "performancesmäßig ist es besser, ein (kleines) Skript auf jeder Seite einzubinden oder zu testen, ob es benötigt wird?"

Was auf der Benutzerseite geschieht, ist Thema, wie @bungeshea bereits sagte. Sobald der Benutzer die Datei geladen hat, bleibt sie für eine Weile im Cache des Browsers, so dass Sie sich nicht um doppelt geladene Dateien kümmern müssen.

Aber schauen wir uns die Server-Seite an und wie WordPress damit umgeht.

Wenn Sie ein Skript auf jeder Seite laden möchten, die Sie gerade in wp_enqueue_scripts :

 add_action( 'wp_enqueue_scripts', 'load_fitvid' ); function load_fitvid() { wp_register_script( 'fitvid', plugins_url('/fitvid.js', __FILE__) ); wp_enqueue_script( 'fitvid' ); } 

Tot einfach.

Wenn Sie das Skript nur laden möchten, wenn ein YouTube-Video vorhanden ist, müssen Sie den the_content , nach URLs mit dem Hostnamen youtube.com oder youtu.be , prüfen, ob WP_Embed::autoembed aktiviert ist (dies konvertiert URLs in bettet ein und lädt das Skript, wenn alle diese Bedingungen zu TRUE ausgewertet werden.

Das ist langsamer. Es ist auch nicht sehr sicher: Der Standard-Handler für Videos wird möglicherweise überschrieben und später als Ihr Inhalts-Parser ausgeführt.

Also: Ja, es gibt einen Unterschied. Ich würde die einfache Methode in Ihrer Situation verwenden. Wenn nur 1% aller Beiträge ein Video hätten … nun, das wäre eine andere Situation. Ich würde dann in save_post und einen benutzerdefinierten Metawert load_fitvid . Am Front-End würde ich diesen Wert testen (viel schneller) und dann das Skript laden. Dies ist jedoch mit vorhandenen Posts ziemlich schwierig zu implementieren.