Desarrollando un carrito de la compra bajo linux (multiidioma y multietiqueta)

{ Fecha del post 12:17 by Sinoriel }
Por fin me ha lelgado un encargo mas serio, he tenido que aparcar demomento mis proyectos personales (la web 'Sinoriel Freekick Web Manager', la portada en flash para Tiendas Ninfa, y mi propia web personal). Lo primero que me propuse fue desarrollarlo todo bajo linux y con software libre. Me ha sorprendido lo poco que he echado de menos al photoshop, el
Dreamweaver,etc..

En la parte técnica hay varios aspectos destacables. El primero es el soporte multiidioma, pero como me sentia inquieto no quise ceñirme a lo que se propuso inicialmente (Español/Ingles), estoy desarollando un sistema que soporte n Idiomas. A priori para los textos de la web no es nada complicado, pero lo interesante se me planteo a la hora de hacer los formularios de administracion de contenidos. Todos los formularios (Desarrollados en PHP) se generan dinamicamente en tiempo real segun los idiomas que esten activos en ese momento en el sistema. Esto quiere decir que si existen en un momento dado el idioma Español e Ingles, al dar de alta un articulo me aparecera un campo de texto para el nombre por cada idioma (al igual que descripciones, etc..), pero si hay tambien frances, en vez de dos campos me aparecerán tres. La principal complicacion en esto ha sido a la hora de almacenar en la base de datos (MySQL) ya que también tenia que generar dinamicamente las n sentencias para cada campo segun los n idiomas presentes. La ventaja que hay al hacerlo asi es qeu si en un momento dado añado un idioma mas, al dar de alta un nuevo articulo el formulario de alta seguirá siendo el mismo pero tendra un cuadro de texto nuevo por cada idioma añadido y sin tener que tocar ninguna linea de código. Tambien de esta forma resolvemos la problematica siguiente, si queremos modificar un articulo y cuando se dio de alta solo teniamos dos idiomas y ahora hay tres, el formulario de modificacion mostrara los tres idiomas y sabra identificar de los n idiomas actuales cuales se pudieron completar al dar el alta y rellenarlos con la informacion del articulo, dejando libres los nuevos campos para los nuevos idiomas.

Lo siguiente interesante fue la clasificacion de articulos. Quise implementar un sistema similar a la clasificacion por etiquetas de GMAIL, al igual que con los idiomas, en los formularios de alta y modificacion se muestran dinamicamente todas las etiquetas identificativas (por idioma actual del administrador) y de igual forma se generan todas las sentencias necesarias para introducir la informacion o modificarla). Como ocurria anteriormente con los idiomas es mas que probable que haya nuevas etiquetas al entrar a modificar un articulo, que apareceran al entrar sin marcar por si se le quiere aplicar alguna al articulo que antes no estaba disponible.

Por el momento eso es lo que llevo desarollado, todo bajo linux,las herramientas que he utilizado hasta ahora son:

S.O. : Linux
Graficos : GIMP, Inkscape
Desarrollo Web: PHP en Quanta +
Base de datos : MySQL, MySQL Administrator, MySQL Query Browser

Pronto ire añadiento capturas de como va quedando el desarrollo, aunque la parte de administración será bastante plana demomento , ya que prefiero dejarla funcional y terminar a continuacion la funcionalidad y diseño del portal, para ya finalmente dejar mas 'bonita' si se precisa la administración.

2 Response to "Desarrollando un carrito de la compra bajo linux (multiidioma y multietiqueta)"

Me parece un proyecto interesante sobre todo teniendo en cuenta que parece que te han dejado elegir tanto la arquitectura como las herramientas de desarrollo. ¿Por qué PHP y no alguna de las nuevas arquitecturas web que están ahora tan en boga?

Me alegra saber que sigues vivo pese a tu mutismo....

Un saludo.

Bueno, hay ams libertad cuando la persona no es una entendidilla del mundo y se deja aconsejar. El motivo de usar php es que ahora mismo es la tecnología que estoy usando en el trabajo (junto con ajax) asi que decidi usar PHP para no tener que cambiar el chip cada dia dos veces :) ) aunque algun dia quiero mirar ruby, el actionscript no lo use por no usar Flash, y Ajax seguramente acabare usandolo en alguna parte.