CMS de tiendas on line

17 de Febrero de 2009

En el mercado actual existen multitud de tiendas on-line para poder realizar venta on-line de nuestros productos.

La mayoría están escritas en PHP y utilizan MySQL como motor de base de datos. En este artículo veremos una breve comparación de las distintas que he visto.

osCommerce

La tienda on-line por excelencia, está disponible en casi toda la totalidad de los servidores compartidos para la autoinstalación, por su gran aceptación en el mercado de las tiendas on-line. Llevan varios años estancados en la versión 2.2, una pena, puesto que prometían que en la versión 3.0 iban a poner xhtml, temas y url amigables. Está un poco anticuada, pero la cantidad de plugins desarrollados nos permiten no saber programar y tener nuevas opcines, como pasarelas de pago de bancos, módulos para la gestión de la logística por compañías como UPS o FEDEC.

Personalmente a mi no me gusta mucho, he realizado ya varias tiendas on-line de forma privada y, por lo menos a mí, me parece muy complicado todo. Para tanta versatilidad como nos ofrece hay que dedicar mucho tiempo para insertar los productos de nuestra empresa. Programar sobre ella es muy tedioso, puesto que no hay chuletas, como las hay en otros CMS opensource, y hay que leer mucho código para hacer cualquier cosa.

osCMax

Esta en realialidad no es más que una extensión del osCommerce, de manera que nos permite hacer cosas que el osCommerce original no hace.

ZenCart

Bonita alternativa libre del osCommerce. Trae opciones que el osCommerce no posee, como temas montados sobre XHTML y url amigables (SEO URLs). Por lo que he ledido es muy sencilla de montar. La lástima es que no soporte plugins de terceros, o al menos como no la he trasteado bastante no los he encontrado.

PrestaShop

Esta nunca la había oido hasta que no me puse ha hacer este artículo, la verdad es que me ha sorprendido muchísimo. La demo se ve que es mucho más evolucionada que osCommerce, y que está muy trabajada en cuanto a usabilidad y diseño. Para aquellos que no sabéis programar es una gran opción, puesto que para que funcione vuestra tienda solo deberéis modificar un tema visual. Permite el uso de permalinks y urls amigables. Trae instalado un módulo para conectar directamente con google analitics, lo que nos permite tener un control de las búsquedas que se realizan sobre tu tienda y en qué lugar estás en dichas búsquedas, muy útil si quieres invertir en AdSense (se invierte en donde no estás arriba). La verdad es que si tengo tiempo hablaré en alguna otra ocasión de este CMS de venta on-line.

Magneto

Esta es una plataforma de venta on-line que nos permite poner varias tiendas en nuestro servidor. Por lo que he leído ha de estar instalada en un servidor dedicado, desconozco el por qué. Si entramos en la administración de la tienda de pruebas, podemos ver que además de tienda on-line trae su propio CMS que nos permite tener la web de nuestra empresa, sin tener que combinar productos como WordPress, Drupal o Joomla. Se ve muy usable, pero me hecha para atrás eso de que haya que instalarlo en un servidor dedicado y que no permita los plugins de terceros.

osCommerce osCMax ZenCart PrestaShop Magneto
Multi-idiomas

Multi-monedas

Diseño de la tienda

Ficheros php

temas

temas

temas

temas

URLs amigables

No

Control de Stock

Envío de correos a los clientes

Envíos masivos a los clientes para campañas de publicidad

Personalización de productos

Personalización de productos: Varias imágenes

No

Personalización de productos: Inserción de Links

No

-

-

Poder instalar un certificado de Seguridad SSL

Soporte de Plugins de terceros

No

Instalación en servidor compartido

No

Enlaces:

osCommerce: http://ww.oscommerce.com

ZenCart: http://www.zencart.com

osCMax: http://www.oscdox.com

PrestaShop: http://www.prestashop.com

Magneto: http://www.magentocommerce.com

Copias de seguridad

10 de Febrero de 2009

En realidad este es un apartado de administradores de sistemas, pero y sino tenemos a este gran profesional en nuestro trabajo, la mayoría de las veces al que más sabe le toca buscar un programa apañado y realizar dicha copia de seguridad.

Cuando estás trabajando con un servidor decicado Windows, cualsea la versión, éste apartado debe ser crítico, puesto que es posible que los cracker encuentren algún fallo de seguiridad de Windows y ataquen, con el daño que suele ocurrir con esto.

Si ese es tu caso, lo primero que debemos hacer es hacer una copia de seguridad de la MetaBase del IIS (Internet Information Server), para los que no sepáis qué es esto, la MetaBase del IIS es la información de todos los dominios que tienes instalado en el Servidor, así como la configuración de los FTPs (si es que usas el del IIS) y del correo (si es que usas el de IIS). Para hacer copia de seguridad de dicha metabase tendrás que ejecutar un programa o rutina en VisualBasic Script (lenguaje de consola de Windows por defecto). Yo utilizo estos ficheros.

Lo siguiente es buscar un software que haga las copias de seguridad por nosotros o programar una rutina en VisualBasic Script, que no es muy complicado, pero para este caso vamos a utilizar un software gratuito, pero no de código libre, Cobian Backup (al día de hoy en la versión 9, Amanit) [1]. Este programa nos permite hacer las copias de seguridad y subirlas a un FTP externo en un fichero ZIP y además nos permite ejecutar programas para hacer tareas que necesitemos. Además nos permite hacer copias de seguridad de directorios separados, por ejemplo la base de datos y una web por separado.

Una vez que se ha instalado el programa, podremos encontrar en el SystemTry el siguiente icono:

cobian-01

Hacemos doble click sobre él y podremos acceder al programa.

Para crear una nueva tarea de realización de copia de seguridad debemos pulsar sobre el botón de Nueva Tarea

cobian-02

Yo recomiendo hacer una tarea por cada sitio web que tengamos en el servidor, de manera que si queremos recupera una copia de un sitio web siempre será más fácil que hacer una restauración de todo el servidor. En cuanto a la metabase ahí sí que hay que hacerla completa, de lo contrario deberás de modificar el fichero de la tarea de extracción de la MetaBase.

Una vez que hemos pulsado sobre éste botón nos aparecerá la siguiente ventana

cobian-03

Podremos cambiar de configuración pinchando en las distinas opciones que están en la columna izquierda. En esta panalla lo que podemos hacer es dar un nombre a la tarea de seguridad y hacer la configuración de las copias de seguridad, como el tipo de copia de seguridad, en nuestro caso hemos seleccionado Completo.

En la zona de Ficheros lo que podemos hacer es seleccionar los ficheros o directorios sobre los que queremos hacer la copia de seguridad.

cobian-05cobian-06

En esta ventana también tenemos que seleccionar la salida de la copia de seguridad, en nuestro caso lo que queremos en mandarlo a otro servidor, para estas cosas, sino tienes otro servidor, lo suyo es contrartar un servicio de hosting que sea barato y con espacio iliminado y tráfico iliminato, como Powweb[2] o DreamHost[3].

cobian-08cobian-09

Tras configurar esto lo que hacemos es configurar la perioricidad con la que se van a realizar las copias de seguridad

cobian-10

En este caso está puesto a las 1:00 AM ya que a las 0:00 hago la copia de seguridad de la base de datos con el gestor de base de datos, en esta caso el MySQL Administrator que puedes encontrar en la web de MySQL [4]. Si utilizas Microfoft SQL-Server, en el cliente puede poner las copias de las bases de datos de forma automática. El dejar una hora entre la realización de la creación de la copia de la base de datos y la tarea es para tener tiempo de sobra, por si la base de datos ocupa mucho.

El siguiente apartado es el fichero que se genera en la copia de seguridad, lo normal es un único fichero ZIP que lo reconocen todos los sitemas operativos y que se puede descargar de una vez. Está la opción de trocear el ZIP en otros ZIPs más pequeños, pero yo no recomiendo esta opción, puesto que si se pierde un ZIP o se corrompe, pierdes la copia de seguridad.

cobian-11

También se le puede proteger con contraseña y encriptar el ZIP, pero yo no le pongo nada, puesto que con lo malo que soy para recordar las contraseñas llegue el día que hay que recuperar el fichero y no me acuerde o tenga a mano la contraseña, total yo lo voy a subir a mi FTP, para recuperar las copias hay que acceder al FTP y esa es la contraseña que nunca olvido, las tengo bien apuntadas.

En la siguiente ventana tenemos una herramienta que puede sernos muy útil, puesto que nos permite ejecutar programas, yo por ejemplo en uno de los proyectos de tareas, donde tengo un portal web donde se administran pequeñas web y que son más de 400 dominios, hago una copia de seguridad de la MetaBase aquí y se la asocio a uno de los directorios de la copia de seguridad, para ello utilizo la opción ejecutar y esperar.

cobian-12

Por último tenemos una pantalla donde podemos cambiar el usuario con el que queremos ejecutar dicha copia de seguridad, yo como la ejecuto con el usuario Administrador no tengo problemas de permisos, pero si la estuvieses ejecutando con un usuario sin todos los privilegios podrían generarse errores, con lo que desde aquí podríamos cambiar a que la tarea la ejecute el Administrador.

Bueno, pues esto ya se a acabado, pulsamos sobre el boton OK y listo, nos aparecerá la siguiente pantalla donde podremos ejecutar la tarea de copia sin tener que esperar a las 1:00 para ver si todo se ha configurado correctamente.

cobian-13

Bueno espero que esto haya sido de ayuda

Enlaces:

[1] Cobian Backup: http://www.cobian.se

[2] Powweb: http://www.powweb.com (es el hosting que tengo para estas cosas y donde está alojado este blog).

[3] DreamHost: http://www.dreamhost.com (es sensiblemetne más caro que Powweb pero ofrece otros servicios de valor añadido que a lo mejor te compensan, como CVS, SVG, acceso directo a MySQL, Ruby OnRails, JSP, …)

[4] MySQL: www.mysql.com

Crear un tema para Moodle (y II)

8 de Febrero de 2009

Bueno una vez que ya en la anterior entreta vimos los principales ficheros del tema, en este tema nos ponemos manos a la obra.

Hay que decir que hay que tener cierta destreza con los CSS, para aquellos que no sepan CSS les recomiendo este manual de CSS [1].

Básicamente, para empezar a manipular los ficheros header.html y footer.html para que vaya quedando el sitio web tal y como queremos, además deberemos y manipulando los estilos (styles_layout.css, styles_color.css y styles_fonts.css). Aquellos que tengan más experiencia con los CSS además deberán tocar los ficheros que tienen estilos específicos para Internet Explorer y Mozilla (si no los modificáis, eliminad dichos ficheros, que sino es posible que lo que estéis programando no se vea luego reflejado).

Si desear poner la imágnes de las carpetas, expandir o recoger de forma personalizada, verás que hay una carpeta llamada pix. Deberás poner ahí todas las imágens personalizadas, para ello debes copiarte la carpeta pix del raíz de moodle (donde están las imágenes por defecto), cambiar las que quieras (con el mismo nombre) y luego ir al fichero config.php del tema y cambiar $THEME->custompix = false (ponerlo a true).

Bueno lo que queda es ir probando colores y mirando bien las cosas que vas modificando. Si tengo tiempo intentaré hacer un pequeño esquema de los CSS, de manera que explique qué hay que cambiar para cada cosa, aunque la verdad está explicado en un inglés muy sencillo, y si no dominas inglés no creo que haya problemas en la traducción si utilizas google traductor.

Enlaces:

[1] Manual de CSS muy didáctico y con muchos ejemplos: http://www.librosweb.es/css/index.html. En esta web también puedes encontrar otros libros muy útiles de AJAX, XHTML, …

Referencia de funcines de Moodle: http://xref.moodle.org/nav.html?_functions/index.html

Crear un tema para Moodle (I)

1 de Febrero de 2009

Una vez que ya se ha instalado el LCMS Moodle lo que debemos hacer es crear un tema para personalizar el Moodle a nuestro sitio web.

Hay que decri que en la Web de Moodle hay un directorio con muchos temas que pueden ser modificados libremente [1]. En esta serie de artículos vamos a ver como hacer un tema utilizando como base otro ya existente. Para ello lo que debemos hacer duplicar el tema `standard` y ponerle el nombre que deseemos, en mi caso será `plf`. Utilizamos el tema standard puesto que nos aseguraremos que va a funcionar correctamente, puesto que tendrá todos los ficheros necesarios del tema.

Dentro de la carpeta nos encontramos una serie de archivos:

  • config.php: Fichero de configuración del tema.
  • docstyles.php: Fichero encargado de cargar los CSS, este fichero también puede contener sintaxis CSS.
  • favicon.ico: Icono que queremos que se vea en nuestro navegador. El que viene por defecto es el logotipo de Moodle. Si quieres crear un favicon a partir de una imagen te recomiendo que lo hagas desde Dynamic Drive [2].
  • footer.html: Fichero que contiene la platilla html del pie del sitio web.
  • gradient.jpg: Este fichero contiene el degradado del tema standar. En mi caso no lo voy a utilizar y lo borraré.
  • header.html: Fichero que contiene la plantilla html de la cabecera del sitio web.
  • meta.php:  Fichero en el que se pueden insertar tags metas para al cabecera.
  • README.html: Fichero de información del tema.
  • rtl.css: Fichero para estilo cuando la dirección del texto es de derecha a izquierda.
  • screenshot.jpg: Fichero con un pantallazo del tema (Este fichero se cambiará al final de terminar el tema).
  • styles.php: Fichero de configuración de los estilos.
  • styles_color.css: Fichero para poner los colores de los estilos.
  • styles_fonts.css: Ficheros para poner las fuentes de los estilos.
  • styles_ie6.css: Ficheros para las cosas específicas de Internet Explorer 6.0.
  • styles_ie7.css: Ficheros para las cosas específicas de Internet Explorer 7.0.
  • styles_layout.css: Fichero de definición de los estilos.
  • styles_moz.css: Fichero para las cosas específicas de Mozilla Fire Fox.

Manos a la obra

Lo perimero que tenemos que hacer es cambiar el fichero README.html, para poner el nombre de nuestro tema y la información que nos apetezca.

Lo segundo que haremos será modificar el favicon.ico (si es que querremos).

Bueno, ahora entramos en el Moodle y cambiamos el tema, para ello una vez que entramos como administrador de Moodle y nos dirigimos a Apariencia -> Temas -> Selector de Temas y seleccionamos nuestro tema. Como solo hemos cambiado el fichero README.html (para ver su contenido en el selector de temas podremos ver el enlace información) y favicon.ico, con lo que la apariencia será la misma que la del tema standard. Lo seleccionamos y empezaremos a cambiar las cosas.

En el siguiente artículo veremos cómo ir modificando los demás ficheros.

Enlaces.

[1] Temas de Moodle: http://moodle.org/mod/data/view.php?id=6552

[2] Dynamic Drive favicon generator: http://tools.dynamicdrive.com/favicon/

e-Learning

22 de Enero de 2009

Hace unos meses que me pidieron que realizase una plataforma de educación a distancia (e-Learning) para una de las empresas a las que les hago unos trabajos de vez en cuando.

Indudablemente le dije que iba a utilizar un sistema de software libre, puesto que desarrollar una era muy complicado y que una persona sola es imposible (en una empresa en la que trabajé, Neoinnova S.L., montamos un sistema e-Learning llamado Neoeduca, ya caido).

La verdad es que me he llevado navegando por ahí mucho tiempo y la verdad es que no me han gustado casi ninguno de los que he probado, si quieres hacer búsquedas en internet sobre sistemas de gestión de educación a distancia pon en google LCMS (Learning Content Management System).

Moodle [1]

Es posiblemente uno de los más expandidos LCMS que existen. Es muy fácil de instalar y no requiere un servidor muy potente, aunque en mi opinión es un poco lento.

Los temas son muy fáciles de crear, aunque se pueden complicar mucho, la ventaja es que hay cientos de temas gratuitos por internet, que son bastante buenos, y que solo necesitan hacer pequeños cambios para que se adecúen a nuestro gusto.

Como la mayoría de los sistemas LCMS admite el estándar SCROM para la importación y exportación de cursos.

Las mejores cosas que le veo es que está muy documentada y que los foros de moodle.org están muy bien, se actualizan rápido y siempre hay alguien que te puede sacar de un apuro.

Lo peor para mi es que es muy fea y la administración es muy poco usable, no es nada intuitiva, tienes que saber lo que estás haciendo para hacer lo que quieres.

ATutor [2]

Este LCMS es mucho más sencillo de manejar, más rápido y más intuitivo.

La creación de temas es bastante sencilla, además en la web de ATutor podemos encontrar temas gratuitos para la descarga.

Lo bueno, ya lo he dicho, que es muy sencilla de manejar, instalar, …

Lo malo, yo he encontrado poca documentación fuera de la web de ATutor, y toda la que he encontrado en Inglés.

Dokeos [3]

Este es un gran LCMS, tiene muchas cosas buenas, para empezar hay una empresa que está detrás del desarrollo, esto hace que haya posibilidad de soporte de calidad, aunque sea pagando. La creación de temas también es muy sencilla y no me causó ningún problema. El instalador es muy sencillo.

Lo malo de este LCMS es que necesita un servidor dedicado para instalarlo bien, puesto que lo suyo es que funcione en modo multi base de datos (una base de datos para cada curso), puesto que de lo contrario nos inserta 100 tablas por cada curso en la base de datos, si tenemos 5 cursos, tendremos cerca de 600 tablas en la base de datos.

Por otro lado al tener el servido dedicado podemos tener otros servicios añadidos de forma gratuita, como poder conectar el LCMS con OpenOffice y así poder subir documentos de texto y que los pase directamente a contenidos visibles como html que son muy parecidos al documento de texto (como por ejemplo un documento de Microsoft Word).

Este proyecto de LCMS es un producto derivado de otro LCMS (caroline [4]).

Conclusión

Al final me he decantado por Moodle, puesto que tengo más ayuda con el soporte técnico, pero voy a hacer un seguimiento bastante fuerte de ATutor, puesto que para mi gusto es mucho más fácil de gestionar y es más bonita.

Enlaces

[1] Moodle: http://www.moodle.org

[2] ATutor: http://www.atutor.ca

[3] Dokeos: http://www.dokeos.com

[4] Caroline: http://www.claroline.net/