TinyMCE Editor macht aus & ein &

  • Hallo zusammen,


    ich habe im TinyMCE Editor ein iframe für ein YouTube Video im HTML Code eingesetzt. Das war erst möglich, nachdem ich in den Einstellungen des TinyMCE Editor Plugins den iframe zuließ. So weit so gut. Jetzt möchte ich dem Video im iframe aber noch die Parameter ?rel=0&vq=hd1080 anhängen. Leider macht der blöde TinyMCE Editor aus dem & ein & und so funktioniert der zweite Parameter &vq=hd1080 natürlich nicht.


    Hat einer von euch eine Idee, wie man dem TinyMCE Editor dieses Verhalten abgewöhnt? Die Möglichkeiten der Entity-Kodierung in den Einstellungen des TinyMCE Editor Plugins habe ich schon alle durchprobiert. Leider ergebnislos.hmm


    Code
    Eingabe im TinyMCE Editor (HTML-Modus):
    <div class="video-container"><iframe src="https://www.youtube.com/embed/AbAbAbAbcd?rel=0&vq=hd1080" width="640" height="352" frameborder="0" allowfullscreen="allowfullscreen"></iframe></div>
    
    Das macht der TinyMCE Editor draus, wenn man zurück in den WYSIWYG Modus schaltet und dann wieder in den HTML Modus wechselt:
    <div class="video-container"><iframe src="https://www.youtube.com/embed/AbAbAbAbcd?rel=0&amp;vq=hd1080" width="640" height="352" frameborder="0" allowfullscreen="allowfullscreen"></iframe></div>
  • Leider macht der blöde TinyMCE Editor aus dem & ein &amp; und so funktioniert der zweite Parameter &vq=hd1080 natürlich nicht.

    Es ist in URLs vollkommen richtig @@@WCF_LITERAL_AMP@@@ zum Trennen der Query-Parameter zu verwenden. Oder umgekehrt: Es ist falsch, nur ein & in URLs dafür zu verwenden. Und Youtube versteht das natürlich auch, wenn es @@@WCF_LITERAL_AMP@@@ ist.


    Da der vq-Parameter in keiner aktuellen Anleitung mehr genannt wird und auch in der Vergangenheit nicht immer verlässlich funktionierte, tät ich mal tapfer schätzen, dass das gar nicht mehr so funktioniert und man die Qualität nur unter Verwendung von JavaScript erzwingen kann (Youtube API).


    Youtube liefert das Video passend zur Videoplayer-Größe (und anderen Faktoren) aus. Stallt sich weiters die Frage, warum du bei einem Player 640x320 eine so hohe Auflösung willst. Besser wird da die Qualität dessen, was der Besucher sieht vermutlich nicht.

  • Erst einmal vielen Dank für die ausführliche Erklärung. Demnach versteht YouTube die Verkettung der Parameter in der URL auch über &amp;

    Das ist ja schon mal tröstlich. Ob der vq-Parameter nun funktioniert oder nicht kann ich noch gar nicht sagen, ich hatte nur drüber gelesen, dass es diesen Parameter gibt. Die Größenangaben für den Player 640x320 werden während der Ausgabe im Frontend von der Klasse "video-container" s. u. überschrieben, daher greifen diese Angaben im iframe Tag nur im TinyMCE Editor.


    Ich erhoffe mir über den vq-Parameter, dass 1080p YouTube Videos im Browser insbesondere auf einem Tablett (iPad) auch in dieser Auflösung starten. Leider ist das in der Praxis nicht der Fall. Einige eingebundene 1080p YouTube Videos beginnen bei mir auf dem iPad mit 360p und die Qualität lässt sich nicht mal erhöhen, es sei denn ich tippe auf den YouTube Link im Player, der die YouTube App startet. Dort sind dann 1080p problemlos möglich.


    Wie kann man denn die Qualität der YouTube Videos unter Verwendung von JavaScript im Browser erzwingen? Gibt es dazu Code-Beispiele?


  • Nachtrag: Wenn ich auf dem iPad im Browser länger auf das Refresh-Symbol tippe und darüber die Desktop-Site anfordere, werden die 1080p YouTube Videos anstandslos auch mit 1080p abgespielt. Ohne angeforderter Desktop-Site gingen nur 360p. Das Erscheinungsbild der Webseite auf dem iPad ändert sich über die angeforderte Desktop-Site übrigens überhaupt nicht. Das verstehe wer will, ich nicht!

  • Warum sieht mein Post #4 jetzt so komisch aus "@@@WCF_LITERAL_AMP@@@" soll natürlich das amp entity sein.

    Das Erscheinungsbild der Webseite auf dem iPad ändert sich über die angeforderte Desktop-Site übrigens überhaupt nicht. Das verstehe wer will, ich nicht!

    Es ändert sich die Info, die an Youtube geht, was, wie gesagt, das Video optimiert für das fragende Gerät auszuliefern versucht. Vielleicht hat auch das iPad und/oder Browser dann noch Krimskrams, das für die finale Videogröße und -qualität verantwortlich ist.

    Wie kann man denn die Qualität der YouTube Videos unter Verwendung von JavaScript im Browser erzwingen? Gibt es dazu Code-Beispiele?

    Wirst im Internet kramen müssen. Vermutlich wird man das irgendwie über die sog. Youtube-API machen müssen. Hauptproblem dabei ist, dass es dazu zu viel Kram im Internet gibt, was längst veraltet ist.