Blog de osCommerce

Experto osCommerce | Programador osCommerce | Diseño osCommerce | Contribuciones osCommerce

En esta sección se intentan recopilar todos los trucos de Diseño de tiendas Virtuales con osCommerce, sus contribuciones más importantes y relevantes, tutoriales de su manejo y utilización. Para aquellos que no conozcan oscommerce decir que es la aplicación web de código abierto, líder en internet por el momento.

Se intentará explicar todas las novedades respecto a su instalación, modificación, templates, plantillas y diseño gráfico de la misma.

»crosslinked«

jun 22

Crear un chat para web

Tag: Apps Web,osCommerceJordi Oller @ 17:55

Meebo gracias a sus chat rooms, nos permite crear salas personalizadas e inscrutarlas en web.

El sistema de administración de las mismas es un poco escaso, pero no le falta de nada tampoco, ya que con un Meeboo ID, se puede administrar, moderar, configurar.

Como ejemplo, hoy he creado un sistema de chat para los foros oficiales de oscommerce en español

chat meebo

LINK: Chat oscommerce
AYUDA: Tutorial crear sala de chat en meebo

jun 11

Acelerar y optimizar un osCommerce

Tag: osCommerceJordi Oller @ 02:40

Cuando nuestra tienda comienza a crecer, ya sea en número de productos (Miles) o en número de usuarios simultáneos, uno de los mayores problemas, es la velocidad de carga en nuestra tienda, ya que las filas afectadas en las querys se han multiplicado, y/o los usuarios simultáneos haciendo diferentes consultas disminuyen la capacidad de respuesta del server.

 

  1. Activar la compresión Gzip en el administrador -> configuración (Para aquellos que no la puedan activar vía administrador o usen otro tipo de comercios electrónicos bastaría con poner esta instrucción en sus cabeceras: justo debajo del <?php ob_start(“ob_gzhandler”);La que ya posee el oscommerce es la siguiente:
     
    [sourcecode=php]
    // if gzip_compression is enabled, start to buffer the output
    if ((GZIP_COMPRESSION == ‘true’) &amp;&amp; ($ext_zlib_loaded = extension_loaded(‘zlib’)) &amp;&amp;
    (PHP_VERSION >= ’4′)) {
    if (($ini_zlib_output_compression = (int)ini_get(‘zlib.output_compression’)) < 1) {
    if (PHP_VERSION >= ’4.0.4′) {
    ob_start(‘ob_gzhandler’);
    } else {
    include (DIR_WS_FUNCTIONS . ‘gzip_compression.php’);
    ob_start();
    ob_implicit_flush();
    }
    } else {
    ini_set(‘zlib.output_compression_level’, GZIP_LEVEL);
    }
    }
    [/sourcecode]
     
  2. Guardar las sesiones a disco, en vez de al mysql (aunque éste último sea más cómodo y dé menos problemas, es más lento si tenemos muchos usuarios conectados o muchas querys), para hacerlo en nuestros fichero de configuración deberemos dejar la linea store_sessions en blanco, y luego configurar en admin la ruta correcta y con permisos 777, que suele ser “tmp” sin barra, así la podremos alojar en el mismo directorio que la tienda.
     
  3.  Optimizar script para el box de categorias (el que más querys realiza) utilizando el cache de configuración (Solo usar si no se ha cambiado su diseño interno, sino no funcionará) y si es posible no mostrar el contador de productos, ya que es recursivo el script, con ésta contribución bastaría.
  4. Comprimir y redimensionar siempre la imágenes de producto, con el módulo de Smooth pictures
     
  5. Actualizar a MYSQL 5.x y PHP 5.x a sus últimas versiones.
     
      
  6. Si es posible, intentar separar la BBDD MySQL en otra máquina (Solo si sale rentable) y configurarlo en el configure.php el nuevo DB_SERVER
     
  7. Si es posible, intentar separar las imágenes en otra máquina y configurarlo en el .htaccess
  8. Instalar algún debug para ver lo que tardan las querys MySQL en realidad, y ver si se ha mejorado o no, con los cambios efectuados. Algunos módulos recomendados son:

    - http://addons.oscommerce.com/info/2575
    - http://addons.oscommerce.com/info/4689

Ya me comentareis si habéis notado cambio en unos días …

abr 28

Seguridad en nuestras Tiendas Virtuales

Tag: Apps Web,osCommerce,Tiendas onlineJordi Oller @ 23:59

Volviendo un poco a la seriedad y siendo hoy el Día internacional de la seguridad, me estaba planteando en crear una pequeña primera Guia de Seguridad para tiendas online, que básicamente se podría portar a casi cualquier aplicación PHP.

Principales archivos a modificar:

php.ini (Configuración general del PHP, si phpsuexec activado, tendremos que editarlo en la carpeta de la aplicación que vayamos a programar)

httpd.conf (configuración del apache)

.htaccess (sobreescribir las directivas del php.ini si nos lo permiten y no está activado phpsuexec)

 

Para tener una primera vision de la configuración general, y valorar si tenemos puntos comprometidos, deberemos crear un archivo php con el siguiente código y visitarlo con nuestro navegador:

<?php phpinfo() ?>

 

Pasos a seguir:

1) No mostrar errores a nuestros intrusos, para ello definiremos en el .htaccess 

[sourcecode=php]
php_flag display_errors Off
php_flag log_errors On
php_value error_log “Ruta completa al fichero de log”
[/sourcecode]

- Que no se muestren los errores en pantalla, y cambiarlo a que se guarden en la maquina en un fichero local solo accesible para el webmaster.

2) El famoso Register globals que por defecto ahora viene desactivado. En las tiendas oscommerce a partir de la RC1 ya no hace falta tenerla activada (en MS2 y anteriores si), por lo que ya no tendremos ese problema de configuración. Tenerlo activo no es un problema de seguridad en sí, si el código está bien implementado, pero si por defecto ya viene desactivado, estamos obligados a no jugar con “fuego” al poder pasar parámetros por GET y POST dentro de las variables globales de nuestra aplicación. Para desactivar esta directiva:

[sourcecode=php]
php_flag register_globals Off
[/sourcecode]

3) Usar SAFE_MODE o no… en mi opinión solo és útil para servidores compartidos, donde hay varios usuarios, y así evitar que unos accedan o incluyan los ficheros de los otros. El único y gran problema es que al tenerlo activo, tendremos incompatibilidades con otros módulos y funcionalidades. Habría que valorar si es realmente necesario tenerlo activo en nuestro servidor.

4) Doble protección de nuestros ficheros de administración. Por ejemplo… toda la carpeta administrador o backend de la aplicación implementar protección mediante formulario de login, y además añadir protección mediante apache desde nuestro panel de control de hosting o a mano.

5) Denegar el acceso a nuestros directorios y ficheros de configuración o “sensibles” con la siguiente instrucción en el .htaccess (dentro del directorio donde se encuentran los archivos a proteger)

Proteger ficheros php:

[sourcecode=php]

   Order Deny,Allow
Deny from all

[/sourcecode]

Proteger todos los ficheros del directorio que se especifique:

[sourcecode=php]

    Order Allow,Deny

[/sourcecode]

6) Sistemas de pago. El más sensible sin duda es la tarjeta de crédito. Los más seguros son los que usan webservices, y sin salir de la web, pero a día de hoy solo es viable con BBVA y algún otro banco.  Mi recomendación es usar el sistema TPV de servired, que podremos encontrar en casi todas las cajas y caixas (La caixa, Caixa catalunya, Caja madrid, etc) que através de una firma Sha1 completa ampliada y una clave personal se transmite la información de forma “segura” entre la página del banco (quien se encargará por nosotros de recoger los datos de la tarjeta y comprobar su veracidad) y nuestra tienda, que será la que reciba la confirmación y autorización del pago.

abr 20

Analytics para comercios electrónicos

Tag: Analytics,Comercio Electronico,osCommerceJordi Oller @ 17:22

Muchos me preguntan como controlar por analytics el flujo de datos de nuestras tiendas virtuales, y en especial de tiendas online desarrolladas bajo la plataforma osocmmerce.

Vista comercio electrónico en Analytics:

Pantalla de entrada de Analytics comercio electrónico

Pasos a Seguir:

1) Activar en Analytics la nueva pestaña de comercio electrónico, para ello iremos a la primera pantalla y sobre el dominio correspondiente haremos clic en editar, y luego en “Información del perfil del sitio web principal” volveremos a editar, para seleccionar el botón de radio de “Sí, es un sitio de comercio electrónico.”

2) Seguidamente hay que bajarse el siguiente módulo de analytics para oscommerce e instalarlo siguiendo las indidcaciones (Recomiendo el 2.1 beta)

3) Modificar el código “UA-xxxxxxx-x” en los scripts por el nuestro própio que obtendremos en la web de analytics.

 4) Observar al dia siguiente las estadísticas ampliadas de nuestras ventas en la nueva pestaña de comercio electrónico.

Analytics comercio electronico

5) En el caso de que no uséis oscommerce, podréis emplear el siguiente script rellenando las variables correspondientes en el código donde se confirme el pedido.

[sourcecode language='php']

[/sourcecode]

  

Ejemplos de Uso: 

Finalmente y como recomendación para consultar si las campañas de publicidad son rentables (Ejemplo: Adwords) … podemos cruzar los datos con otras pestañas en nuestro analytics, de manera que en cada sección se verá una nueva pestaña llamada Comercio Electrónico:

 Comercio Electronico

Y por ejemplo se pueden sacar resultados excelentes sobre:

- Que enlaces nos producen más ventas (Webs que nos referencian)
- Que campañas de Adwords o anuncios orientadas por palabra clave se convierten en transacciones.
- Ver que palabras de búsqueda son las que más dinero nos reportan en nuestra tienda…
- Y un largo etc…

Imágenes sacadas de Tripix un excelente blog de Informes y analítica web.

mar 20

Sistema de conversiones de adwords en oscommerce

Tag: Adwords,osCommerceJordi Oller @ 01:27

Son muchos o la mayoría de comercios online que optan por publicitarse en Adwords, para conseguir clientes rápidamente que generen pedidos y no tan solo visitas. Muchos también me preguntan como incluir el sistema de conversiones y “transacciones” (Importes de los pedidos) en sus tiendas osCommerce. Seguidamente os explicaré los pasos a seguir:

  1.  Entrar en Adwords -> Admin campañas -> Seguimiento de conversiones
  2. Dar de alta conversiones de compra venta y obtener el script a incluir en nuestros comercios
  3. Bajamos y editamos el checkout_success.php
  4. Buscar el string TEXT_THANKS_FOR_SHOPPING
  5. Debajo poner el siguiente código:

[sourcecode language='php']




[/sourcecode]

Donde ************ corresponderá a vuestro código sacado anteriormente.
Como podéis comprobar recogerá el total de los pedidos y los enviará al código de conversiones, por la cual cosa luego podremos hacer estadísticas con ellos a través de informes o en el analytics, para poder calcular el ROI y otras tantas variables.

« Página anteriorPágina siguiente »