piribipipi Posted February 4, 2015 Share Posted February 4, 2015 Hola, tengo un problema que parece sencillo pero no se como solucionarlo... Quiero ordenar los campos en la pagina de direccion de un cliente. Quiero que tenga el orden siguiente: .... Estado Codigo Postal Pais .... Modifique el formato de la direccion para el pais, y tambien comprobe que a la plantila se le pasa un array con el orden de los campos, y ese orden esta correcto!!! Pero al mostrar la plantilla, me muestra el siguiente orden: ..... Estado Pais Codigo Postal ..... Hay algun js que este modificando esto????? No tiene sentido!!!!! Si cambio por ejemplo el orden de Nombre y Apellidos en el Formato de la Direccion, en la pagina se muestra correctamente ese cambio!! :S Gracias! ojala alguien pueda ayudar! Saludos Link to comment Share on other sites More sharing options...
UniArt Posted June 30, 2015 Share Posted June 30, 2015 Hola, al parecer estás intentando cambiar el orden de los campos para las nuevas direcciones. Cuando un cliente modifica algo en su dirección el tpl toma el orden do que se haya estipulado en el backoficce para el país del cliente, o mejor el país que está asignado a la dirección, pero si lo que quiere es añadir una nueva dirección, entonces las cosas cambian. El formato para una dirección que aun no tiene un país asignado es determinado por un campo en la base de datos referente a un país que no existe. Es un valor por defecto. He dado muchas vueltas pero he dado con la solución, para cambiar el orden de los campos y tener el control absoluto do que pasa en la pagina del formulario de dirección. Intentaré ser breve: Cambiar orden de los campos del formulario de dirección del cliente prestashop 1.6 Archivos a modificar: tutema/address.tpl controllers/front/AddressController.php (con override) controllers/admin/AdminCountriesController.php (con override) Cambios en el backoficce: ubicación >> paises >> tu país predeterminado >> Address format ubicación >> paises >> otros paises >> Address format 1) método sin tocar la BD: Paso 1: En backoficce>>ubicación >> países, elijas un país para ser el predeterminado y tome nota del numero del ID. Copiar el archivo controllers/front/AddressController.php en la carpeta override/controllers/front Abrir el archivo con un editor (Notpad++) y buscar esta linea: $id_country = is_null($this->_address)? 0 : (int)$this->_address->id_country; Cambiar el numero 0 por el numero del id de tu país predeterminado. Ejemplo: si el país tiene el ID = 6 la linea debe quedar así: $id_country = is_null($this->_address)? 6 : (int)$this->_address->id_country; Con esta modificación todos los cliente que aun no tienen un país asignado verán el formato de dirección de tu país predeterminado. Paso 2 (opcional): Copiar el archivo controllers/admin/AdminCountriesController.php en la carpeta override/ controllers/admin Abrir el archivo con un editor (Notpad++) y buscar estas lineas: $default_layout_tab = array( array('firstname', 'lastname'), array('company'), array('vat_number'), array('address1'), array('address2'), array('postcode', 'city'), array('Country:name'), array('phone'), array('phone_mobile')); Cambiar el orden de los arrays y poner en el orden que quieres que sea el orden predeterminado. Con esta modificación se creará un nuevo orden predeterminado para aplicar en el Address format en el backoficce. Paso 3: en el backoficce ir a ubicación >> paises >> tu país predeterminado >> Address format Modifique el orden de los campos de tu país predeterminado, de la manera que quieres que aparezca para los clientes que quieren modificar la dirección o añadir una dirección nueva o primera dirección. Hay que tener en cuenta que la modificación también afectará los formatos de dirección en el resume del pedido en el backoficce y en la pagina “mis direcciones” del front-oficce. El numero de ID del país que vas a utilizar como predeterminado es el numero que has utilizado en el archivo controllers/front/AddressController.php A continuación modifique los demás países (todos) según el orden y campos que quieres para cada uno o simplemente pinche en “Use the default format “ para aplicar el formato que has definido en AdminCountriesController.php. Hay que notar que cada país usa un formato de dirección diferente del otro, unos tienen estado otros no, unos el CP viene delante del nombre de la calle, otros el apellido está delante del nombre etc... conviene pesquisar un poco antes de hacer las modificaciones. Paso 4 (opcional): Modificar el archivo tutema/address.tpl Es posible que ni todos los campos que has predefinido en los pasos anteriores salga de la manera prevista, para terminar con la modificación es necesario modificar el archivo tutema/address.tpl. Si sabes como tocar los archivos tpl puedes hacer modificaciones para añadir instrucciones cerca de los campos o modificar los campos que no están en el Address format. Se podrá cambiar directamente en el tpl el orden de los campos que estén después de “{/foreach}”. No intente modificar el orden de los campos que están antes de esta linea porque no surtirá efecto. Como verás el orden de estos campos se cambian en el backoficce pero es necesario que estén antes de “{/foreach}” para que salgan en la orden correcta. Los demás campos solo serán visibles según el tpl si no están predefinidos en el backoffice. Quizá, según la configuración de tus preferencias para el registro de los clientes, quieras cambiar también el archivo authentication.tpl . 2) Método con cambios en la BD: Paso 1: Modificar en la base de datos el campo `format` de la tabla ps_address_format donde el ID es = 0. Con esta modificación todos los cliente que aun no tienen un país asignado verán el formato de dirección de tu has configurado en la base de datos. A continuación realizar los pasos 2, 3 y 4. A saber: El formato predeterminado del front-oficce está determinado en la base de datos con el ID 0, por eso o cambiamos la base de datos o cambiamos el 0 en el archivo address.tpl. El formato predeterminado del backoficce en la configuración de los países se determina en el archivo AdminCountriesController.php . Espero que la información sea de ayuda. Link to comment Share on other sites More sharing options...
maxcrist Posted September 27, 2015 Share Posted September 27, 2015 COmo puedo cambiar el orden al momento de registrar una direccion como nuevo usuario actualmente se encuentra de esta manera: ciudad, Pais, telefono fijo, telefono movil, estado y yo quiero que Pais, provincia y ciudad se encuentren juntos debajo de telefonos ? cual es la manera mas sencilla de hacerlo agradezco de antemano el apoyo . Muchas Gracias Link to comment Share on other sites More sharing options...
rayrodriguezg Posted May 5, 2017 Share Posted May 5, 2017 Entras desde el backoffice a, localizacion -> pais Entras a modificar el pais que quieres y vas a conseguirte un textarea de este tipo firstname lastname company vat_number address1 address2 postcode city Country:name State:name phone phone_mobile Mueves el orden de los campos y listo! Esto es texto plano, pero asi funciona. Saludos!! 1 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