Jump to content

[SOLUCIONADO] ¿Cómo añadir código JavaScript a archivos .tpl o páginas cms en PS 1.7?


davidddp

Recommended Posts

Me gustaría saber como puedo añadir código JavaScript a archivos .tpl o a páginas cms en PS 1.7.

 

He probado a añadir el siguiente código a product.tpl y simplemente añadiendolo, me da error (he probado con {literal} y sin ello):

<script language="JavaScript" type="text/javascript">
   {literal}
       $(document).ready(function() {
            $("a.fancybox").fancybox();
       });
   {/literal}
</script>

Y si lo añado a una página cms, resulta que automaticamente me lo borra.

 

He probado a cambiar la siguiente función en el archivo /classes/Validate.php

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; }

por:

public static function isCleanHtml($html, $allow_iframe = false) { return true; }

Y ahora resulta que ya no me lo borra, me lo sustituye por lo siguiente (que no se si estará bien o mal) pero el caso es que sigue sin ejecutar la instrucción JavaScript:

<script>// <![CDATA[
	$(document).ready(function() {
		$(".fancybox").fancybox();
	});
// ]]></script>
Link to comment
Share on other sites

  • 1 month later...
  • 3 years later...
hace 2 horas, ventura dijo:

Añadir el js directamente en los .tpl no esta considerado una buena practica.

Se añade el código en el archivo :


themes/classic/assets/js/custom.js

 

Muchísimas gracias por tu ayuda

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...