chris_k Posted July 19, 2014 Share Posted July 19, 2014 Liebe Community, ich bräuchte euch nochmal. Ich möchte auf einer CMS seite gerne ein <script> einbinden. Jedoch klappt das leider nicht. In den Settings-General habe ich IFrames erlaubt. Jedoch ohne Erfolg, auch habe ich versucht, wie durch Google erfahren, verschiedene Dateien auf dem FTP zu bearbeiten, jedoch brachte dies auch nichts. Habe Ihr noch eine Idee?Vielen Dank im Voraus für eure Hilfe. Chris Link to comment Share on other sites More sharing options...
Whiley Posted July 20, 2014 Share Posted July 20, 2014 (edited) Hallo Chris, du solltest etwas genauer beschreiben was du machen willst und was dann letztendlich nicht funktioniert! Grundsätzlich schaltest du den TynyMCE auf HTML-Mode um und tippst deinen Code ein und speicherst ab. Bedenke allerdings, dass PRESTASHOP während des Speicherns bestimmte HTML-Befehle ausfiltert - du erkennst das daran, dass sich dein abgespeicherter Code vom ursprünglich eingetippten unterscheidet. Ist das dein Problem? Grüsse Whiley Edited July 20, 2014 by Whiley (see edit history) Link to comment Share on other sites More sharing options...
chris_k Posted July 20, 2014 Author Share Posted July 20, 2014 Hallo Whiley, Vielen Dank für deine Antwort, gerne beschreibe ich das Problem genauer. Folgenden Code möchte ich auf eine CMS-Seite einfügen: <SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript" SRC="https://smarticon.geotrust.com/si.js"></SCRIPT> Sobald ich dies jedoch tue, entfernt PrestaShop den Code wieder oder gibt eine Meldung aus, dass ein ungeültiger Content enthalten ist. Leider weiß ich nicht wie ich dieses Problem lösen kann. Mit hilfe von Google fand ich tipps bestimmt Daten auf dem FTP anzupassen, jedoch ohne erfolg. Ich hoffe du/Ihr könnt damit etwas anfangen und habe eine Lösung für mich . Gruß Chris Link to comment Share on other sites More sharing options...
Whiley Posted July 20, 2014 Share Posted July 20, 2014 Hallo Chris, die Datei Validate.php filtert vor dem Speichern deinen Code, um das zu verhindern öffnest du mit einem Editor die Datei: /classes/Validate.php bei ca Zeile 395 findest du: Quote public static function isCleanHtml($html, $allow_iframe = false) { $events = 'onmousedown|onmousemove|onmmouseup|onmouseover|onmouseout|onload|onunload|onfocus|onblur|onchange'; $events .= '|onsubmit|ondblclick|onclick|onkeydown|onkeyup|onkeypress|onmouseenter|onmouseleave|onerror|onselect|onreset|onabort|ondragdrop|onresize|onactivate|onafterprint|onmoveend'; $events .= '|onafterupdate|onbeforeactivate|onbeforecopy|onbeforecut|onbeforedeactivate|onbeforeeditfocus|onbeforepaste|onbeforeprint|onbeforeunload|onbeforeupdate|onmove'; $events .= '|onbounce|oncellchange|oncontextmenu|oncontrolselect|oncopy|oncut|ondataavailable|ondatasetchanged|ondatasetcomplete|ondeactivate|ondrag|ondragend|ondragenter|onmousewheel'; $events .= '|ondragleave|ondragover|ondragstart|ondrop|onerrorupdate|onfilterchange|onfinish|onfocusin|onfocusout|onhashchange|onhelp|oninput|onlosecapture|onmessage|onmouseup|onmovestart'; $events .= '|onoffline|ononline|onpaste|onpropertychange|onreadystatechange|onresizeend|onresizestart|onrowenter|onrowexit|onrowsdelete|onrowsinserted|onscroll|onsearch|onselectionchange'; $events .= '|onselectstart|onstart|onstop'; if (preg_match('/<[\s]*script/ims', $html) || preg_match('/('.$events.')[\s]*=/ims', $html) || preg_match('/.*script\:/ims', $html)) return false; if (!$allow_iframe && preg_match('/<[\s]*(i?frame|form|input|embed|object)/ims', $html)) return false; return true; } Den roten Teil löscht du - also sieht es dann so aus: Quote public static function isCleanHtml($html, $allow_iframe = false) { return true; } Speichern und und unbedingt den Smarty-Cache und den Browser-Cache löschen. Ich habe es gerade mal ausprobiert, auf http://prestashop.multimedia-bodensee.de/content/7-skript-test ist die Zeile eingebunden (wenn du ctrl u drückst bei Zeile 582) Viele Grüsse Whiley Link to comment Share on other sites More sharing options...
chris_k Posted July 20, 2014 Author Share Posted July 20, 2014 Hallo Whiley, Vielen Danke für deine Mühen! Ich habe dies einmal nach deiner Anleitung gemacht und den Code am Ende über den Editor und über den Quelltext-Button eingefügt. Er speichert diesen auch nun aber, allerdings entfernt er Ihn wieder. SCheint als würde er merken, dass es ein <script>-code ist. Hast du ggf. noch eine Idee? Als Info, ich nutze die aktuellste Version von PrestaShop. Beste Grüße Chris Link to comment Share on other sites More sharing options...
BluTiGeS Posted July 21, 2014 Share Posted July 21, 2014 Was heißt er entfernt ihn wieder? Hast du ihn noch in der Quelltext Ansicht? Grüße Link to comment Share on other sites More sharing options...
eleazar Posted July 21, 2014 Share Posted July 21, 2014 Grundsätzlich sollte das Skript in einer CMS-Seite immer eingeschlossen sein in die Befehle {literal} ,,,, {/literal} Bringt aber im Moment auch nicht wirklich weiter, weil der Bug, der den HTML-Strip verursacht, zwar erkannt aber noch nicht richtig behoben wurde. Diskussion hier: http://www.prestashop.com/forums/topic/315798-no-html-allowed-in-blockcmsinfo/ Link to comment Share on other sites More sharing options...
Whiley Posted July 23, 2014 Share Posted July 23, 2014 Hallo Chris, sorry, dass ich mich erst jetzt melde - aber das Problem Zeit..... Also die Änderungen die ich dir im post #4 vorgeschlagen habe sind zunächst notwendig - zusätzlich musst du allerdings noch (ab PS1.6.0.8) ins Backoffice gehen : -->Voreinstellungen -->Allgemein --> auf 3. Auswahlpunkt von oben "HTMLPurifier verwenden" auf NEIN stellen speichern, wie immer cache löschen etc... ich habe es gerade probiert und es funktioniert bei 1.6.0.8! Grüsse Whiley Link to comment Share on other sites More sharing options...
BoKr Posted July 26, 2014 Share Posted July 26, 2014 Würd mich interessieren, welche Nebenwirkungen es hat, den Reiniger auszuschalten. Wofür genau ist der denn gut Whiley? PS: Ich bin noch bei 1.6.0.6, da ich mich noch nicht traue auf 1.6.0.8 zu gehen, weil ich nicht weiß, ob die Version nun in Ordnung ist oder nicht. Im engl. Forum liest man so komische Sachen, wie WArenkorb bleibt leer und so Ist die Lösung bei 1.6.0.6 ebenfalls anwendbar (validator). Nicht, dass ich mir neuen Ärger sonst einbaue.... Link to comment Share on other sites More sharing options...
Whiley Posted July 27, 2014 Share Posted July 27, 2014 Ist die Lösung bei 1.6.0.6 ebenfalls anwendbar (validator). Ja, so wie in Post #4 beschrieben funktioniert das in der 1.6.0.6! (Die 1.6.0.8 ist mir auch suspekt - bei mir läuft da die Debug-Console nicht - ein absolutes NoGo) Wozu der Html-Cleaner gut sein soll (?) - nun ich meine auch, dass Html-Code im Text-Bereich eines CMS-Shop-Systems grundsätzlich nichts zu suchen hat und wirklich nur in Ausnahmefällen von demjenigen, der weiss was er tut, verwendet werden sollte. Es wird einfach eine Sicherhaitsmassnahme sein um zu verhindern das "Hobby-Programmierer" auf einfache Art Bugs in ihren Shop einbauen können. In die gleiche Richtung gehen ja auch die Beschränkungen des TinyMCE durch PS. Grüsse Whiley Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now