mitsuzer0 Posted September 9, 2015 Share Posted September 9, 2015 hola buen dia, quisiera saber si existe alguna forma de llamar a la carpeta actual de trabajo, la raiz del modulo, para ser exactos, ya que si le pongo toda la ruta, necesitaria cambiarla cuando se instale en otro lado. espero que me ayuden gracias. Link to comment Share on other sites More sharing options...
Enrique Gómez Posted September 9, 2015 Share Posted September 9, 2015 Hay varias formas, una es usar la variable local_path dentro del módulo p.ej $output = $this->context->smarty->fetch($this->local_path.'views/templates/admin/configure.tpl'); otra usar _PS_MODULE_DIR_ p.ej include_once(_PS_MODULE_DIR_.'advancedslider/AdvancedSlide.php'); Link to comment Share on other sites More sharing options...
mitsuzer0 Posted September 10, 2015 Author Share Posted September 10, 2015 hola y se puede poner con smarty ... digo ya lo intente en un formulario action={php}echo _PS_MODULE_DIR_."payworks2/payworks2.php";{/php} pero imprime toda la ruta ... (como viene en formato de carpetas ...193/htdocs/storetest/modules/payworks2/payworks2.php y pues eso me da un 404 ... alguna forma ... gracias! lo otro ya lo resolvi pero esto es algo parecido pero con smarty.. Link to comment Share on other sites More sharing options...
elitu874 Posted September 10, 2015 Share Posted September 10, 2015 hola nose si lo que pregunto va en este hilo pero ya no puedo mas (ni servicio tecnico, ni google, ni programadores freelance me han resuelto) nesesito cambiar algo en un modulo Block Contact Infos (y no me digan que pulse configuracion y cambie los textos porque hay solo aparece 3 campos nesesito cambiar lo que viene por defecto el tipico texto Etiam lorem odio, varius sit ) me han dicho que los de servicio tecnico que entre en la guia de prestashop donde pone desoralladores alguien que me pueda ayudar esque ya estoy dos semanas con eso y no encuentro como gracias Link to comment Share on other sites More sharing options...
ReactionCode Posted September 10, 2015 Share Posted September 10, 2015 Tienes razón mitsuzer0 hay alguna constante que empieza con _PS_ y lo que hace es sacar toda la ruta del hosting. Yo lo que hago es es construir la ruta absoluta en PHP de la siguiente forma. $moduleDir = _PS_BASE_URL_._MODULE_DIR_.'mimodulo/'; De esta forma conseguimos la ruta absoluta esté donde esté la instalación. Ya me dices que tal. 2 Link to comment Share on other sites More sharing options...
Enrique Gómez Posted September 11, 2015 Share Posted September 11, 2015 hola y se puede poner con smarty ... digo ya lo intente en un formulario pero imprime toda la ruta ... (como viene en formato de carpetas y pues eso me da un 404 ... alguna forma ... gracias! lo otro ya lo resolvi pero esto es algo parecido pero con smarty.. una cosa es el tema de carpetas (tema interno de cargar ficheros) y otro el tema de urls (para el front) Para Urls con modulos puedes usar _MODULE_DIR_ P.ej <img src="{$link->getMediaLink("`$smarty.const._MODULE_DIR_`homeslider/images Todas estas constantes estan definidas en config/defines.inc.php y config/defines_uri.inc.php P.ej define('_MODULE_DIR_',__PS_BASE_URI__.'modules/'); Tienes razón mitsuzer0 hay alguna constante que empieza con _PS_ y lo que hace es sacar toda la ruta del hosting. Yo lo que hago es es construir la ruta absoluta en PHP de la siguiente forma. $moduleDir = _PS_BASE_URL_._MODULE_DIR_.'mimodulo/'; De esta forma conseguimos la ruta absoluta esté donde esté la instalación. Ya me dices que tal. Sobraria _PS_BASE_URL_ 2 Link to comment Share on other sites More sharing options...
ReactionCode Posted September 11, 2015 Share Posted September 11, 2015 (edited) Muchas gracias por tu explicación Enrique, no había chafardeado bien los defines, Lo que dices es correcto, pero sobre lo de que sobra el _PS_BASE_URL_. me gustaría aclarar un detalle. Ejemplo: $moduleUrl = _PS_BASE_URL_._MODULE_DIR_.'mimodulo/'; // Da una ruta absoluta. "http://www.miweb.com/direccionPS/modules/mimodulo/" $moduleUri = _MODULE_DIR_.'mimodulo/'; // Da una ruta relativa. "/direccionPS/modules/mimodulo/" Dependiendo de nuestras necesidades podemos utilizar uno u otro, pero no es lo mismo. Por ejemplo, que necesites indicar un endPoint a una api externa, habría que indicarle la ruta absoluta. En definitiva, las 2 son válidas, según gustos y necesidades. Edited September 11, 2015 by Presta-Lab (see edit history) 2 Link to comment Share on other sites More sharing options...
Enrique Gómez Posted September 11, 2015 Share Posted September 11, 2015 Muchas gracias por tu explicación Enrique, no había chafardeado bien los defines, Lo que dices es correcto, pero sobre lo de que sobra el _PS_BASE_URL_. me gustaría aclarar un detalle. Ejemplo: $moduleUrl = _PS_BASE_URL_._MODULE_DIR_.'mimodulo/'; // Da una ruta absoluta. "http://www.miweb.com/direccionPS/modules/mimodulo/" $moduleUri = _MODULE_DIR_.'mimodulo/'; // Da una ruta relativa. "/direccionPS/modules/mimodulo/" Dependiendo de nuestras necesidades podemos utilizar uno u otro, pero no es lo mismo. Por ejemplo, que necesites indicar un endPoint a una api externa, habría que indicarle la ruta absoluta. En definitiva, las 2 son válidas, según gustos y necesidades. Es cierto, había creído por un momento que habías puesto __PS_BASE_URI__ por lo que pensaba que sadría dos veces .... Pero no es el caso ya que con _PS_BASE_URL_ sadrá la url absoluta como bien dices... vaya lio de constantes.. Saludos Enrique 1 Link to comment Share on other sites More sharing options...
Recommended Posts