Tenemos un módulo personalizado con el siguiente código
app/design/frontend/rwd/Theme1/layout/aitcg.xml
<action method="addJs"><script>aitoc/aitcg/Aitcg/View/Abstract.js</script></action>
Como no podemos usar el código php en este archivo .JS , ¿hay alguna forma de mover el código presente de un Abstract.js
archivo a otro .phtml
?
Editar
Seguí la respuesta de Raphael y cambié el código como aquí:
<block type="aitcg/template" name="aitcg_js_styles1" template="aitcg/js_styles1.phtml" />
pero aún así los resultados del archivo Abstract.Js no se muestran en js_styles1.phtml
archivo de diseño : http://pastebin.com/BZGRaiDH
js_styles1.phtml : http://pastebin.com/m85q9eMh
Estoy tratando de hacer clic en el botón = onclick="setproductlogin('<?php echo $_product->getEntityId()?>');setrequestlogin();"
pero esto no funciona en el archivo .JS, así que solo estoy tratando de copiar el código .js al código .php.
<script>
_getControlPanelHtml: function()
{
if (this.config.editorEnabled) {
return '<div id="aitcg-control-panel">' +
'<button id="submit-editorApply-{{rand}}" onclick="setproductlogin('<?php echo $_product->getEntityId()?>');setrequestlogin();">SAVE DESIGN</button>' +
'<button id="submit-editorReset-{{rand}}" >{{reset_text}}</button>' +
'</div>';
}
return '';
},
</script>
cuando verifiqué las sugerencias de ruta de la plantilla, cargaba el archivo phtml, pero el resultado del código JS no se muestra en la interfaz. pero se muestran otros resultados de código html, php, js .....
consola
¿es necesario cargar alguna biblioteca js externa si es así cómo encontrar eso?
Edit2
Intenté debajo del código en el archivo js_styles1.phtml, pero aún no funciona
<script type="text/javascript" src="http://sbdev2.kidsdial.com:81/js/aitoc/aitcg/Aitcg/View/Abstract.js"></script>
fuente
Respuestas:
Asegúrese de que
<?php echo $this->getChildHtml() ?>
se llama en suhead.phtml
.Si este código no existe, debe agregar este código en head.phtml
Actualizar
Tiene problemas debido a
Dependencia de Js de un archivo js a otro archivo js
Aquí aitoc / aitcg / Aitcg / View / Popup.js, aitoc / aitcg / Aitcg / View / Gallery.js , etc. depende del código js de aitcg / js_styles.phtml
Como ha puesto este Abstract.js en js_styles.phtml y esto
js file properly have calling after
Eso significa que todos los archivos js de aitoc no se obtienen
properly of js_styles.phtml
ya que este código js es después de todos los archivos aitoc js.Solución:
Eliminar todos los archivos js del controlador de diseño Aitoc
<catalog_product_view>
y llame a todos los js fils en js_styles.phtml codifique manualmente
fuente
<?php echo $this->getChildHtml() ?>
código está presente en el archivo head.phtml .....<?php echo $this->getChildHtml('aitcg_js_styles1'); ?>
Bueno, puedes usar un archivo phtml reemplazando:
Con:
Luego, simplemente mueva su JS en ese archivo phtml y modifíquelo con sus modificaciones de PHP.
fuente
action code
porblock code
aquí:<block type="aitcg/template" name="aitcg_js_styles1" template="aitcg/js_styles1.phtml" />
pero no muestra los resultados.js file - upload image & add text buttons are missing
como en el enlace 1 , antes de que esos enlaces se mostraran como enlace2 , código: `js_styles1. phtml: pastebin.com/YhgmvCMx . donde hice mal?como entiendo tu pregunta, quieres copiar tu código js en phtml
entonces, siga los pasos a continuación
ya que creó un archivo PHTML y su representación en la interfaz
Primero comente / elimine ese código XML para la representación JS.
Copie el código JS en el archivo PHTML dentro del script TAG
por ej.
fuente
Elimine el java real que pegó del archivo de cabecera.
Pegue uno de estos en la cabecera de su archivo phtml, dependiendo de dónde se encuentre su archivo js.
Si se encuentra en el archivo js base de Magento, use esto:
o si está en la carpeta js de tu skin usa esto:
fuente
Para lograr esto, puede pasar su variable de código PHP a su código JS usando la variable de configuración. Agregue la siguiente línea a su archivo de aplicación / diseño / frontend / rwd / Theme1 / template / aitcg / view / options / type / cgfile.phtml
después de la línea
Ahora puede usar esta variable
isUserLoggedIn
para verificar si el usuario ha iniciado sesión o no en su código JS.Actualice su función JS
initObservers
, desdea
Ahora, cuando un usuario invitado haga clic en el botón "Guardar diseño", el diseño no se guardará y abrirá la ventana emergente de inicio de sesión que utilizó en su código,
fuente