Prestashop es uno de los CMS de comercio electrónico que más auge está teniendo últimamente. La documentación es bastante buena pero hay algunas cosas que sólo tratan de pasada y creo que son muy importantes para mejorar el funcionamiento de Prestashop.
Concretamente os quería enseñar la forma de mejorar el rendimiento de prestashop utilizando Amazon CloudFront para servir contenidos estáticos.
Amazon CloudFront es el servicio de Amazon AWS que permite distribuir contenidos más rápido y con menor latencia que si lo hicieras desde tu propio servidor. Amazon CloudFront tiene distribuidos a través del mundo varios puntos de salida de forma que entrega los archivos al usuario desde el punto más cercano a su ubicación. Otra ventaja de Amazon CloudFront es que liberas a tu servidor de la entrega de esos ficheros con lo que consigues liberar recursos que podrás utilizar para otras cosas.
Para crear tu distribución lo único que tienes que hacer es ir a tu consola de Amazon y en la pestaña de CloudFront pulsar en “Create Distribution”.
Debes de seleccionar la opción de Custom Origin y en Origin DNS Name poner la página de tu tienda
En la siguiente pantalla debes de indicar un subdominio del dominio de tu tienda, aunque no es obligatorio. En mi caso lo suelo poner siempre por estética ya que si no cuando carga la página los clientes podrían ver que se cargan contenidos de otros sitios con nombres tan extraños como dlskfhxxxis3dhflk23shf.cloudfront.net. En el ejemplo he utilizado ccc1.mitiendac.com
En el último paso podréis ver como queda la distribución que acabáis de crear.
Una vez creada la distribución podréis ver en el panel de control que hay una nueva distribución y que su estado es “InProgress”. En mi caso permaneció en ese estado unos 10 minutos hasta que pasó al estado “Deployed” que es cuando ya se puedo empezar a utilizar.
En esta imagen tenéis un ejemplo de como quedaría.

Si habéis decidido utilizar un subdominio de vuestra tienda, mientras que finaliza la creación, podeís ir al servidor dns de vuestro dominio y añadir el subdominio a los dns. Para ello hay que crear una entrada cname con el nombre ccc1.mitienda.com. que apunte al nombre de la distribución que acabamos de crear, por ejemplo xxxxxxxx.cloudfront.net
El último paso es ir al administrador de prestashop y configurar el apartado de CCC (). Para eso hay que ir a Preferencias -> Rendimiento. y activar CCC. añadiendo la distribución. Si habéis utilizado el subdominio hay que poner ccc1.mitienda.com y si no, introducir directamente la distribución, p.e. xxxxxxxx.cloudfront.net en el apartado Servidores de media.
Como veis en la imagen se pueden añadir hasta 3 servidores de media. Para poner otros dos sólo hay que repetir lo anterior otras dos veces.
Por último os quería comentar algo sobre el coste de este servicio pero es difícil ya que es muy variable por que se factura en función del uso así que lo mejor es que vosotros mismos echéis mano de la calculadora y revisando los precios de la página de amazon lo calculéis o que utilicéis la calculadora de Amazon.
Si no os aclaráis con los precios lo que os recomiendo es que lo hagáis y que diariamente reviséis lo que lleváis gastado. Probablemente con el gasto de un par de días “normales” os será mas que suficiente para poder calcular el coste mensual.
Enviar correos desde WordPress es muy sencillo utilizando la función wp_mail.
Lo mejor es que veáis un ejemplo.
$email="usuario@dominio.com"; $titulo="Subject del Email de prueba"; $mensaje="Email de prueba. bla bla bla"; $headers = 'From: Remitente ' . "\r\n"; wp_mail($email, $titulo, $mensaje, $headers);
En este ejemplo podemos ver los cuatro campos principales. Lo que hace es enviar un email en modo texto, si queremos enviarlo en html debemos añadir un filtro para indicar que el contenido se enviará en html.
add_filter('wp_mail_content_type',create_function('', 'return "text/html"; '));
En el ejemplo:
$email="usuario@dominio.com";
$titulo="Subject del Email de prueba";
$mensaje="Email de prueba. bla bla bla";
$headers = 'From: Remitente ' . "\r\n";
add_filter('wp_mail_content_type',create_function('', 'return "text/html"; '));
wp_mail($email, $titulo, $mensaje, $headers);
Si además queremos enviar un fichero adjunto al mensaje sólo tenemos que añadir un parámetro más a la función wp_mail.
$email="usuario@dominio.com";
$titulo="Subject del Email de prueba";
$mensaje="Email de prueba. bla bla bla";
$headers = 'From: Remitente ' . "\r\n";
$fichero="/home/rastreador/mi_fichero";
$atach= array($fichero);
add_filter('wp_mail_content_type',create_function('', 'return "text/html"; '));
wp_mail($email, $titulo, $mensaje, $headers,$atach);
WordPress muestra en las cabeceras de todos los blogs la versión que estás ejecutando. Si quieres añadir una pequeña capa más de seguridad a tu instalación de WordPress lo mejor es eliminar esa información.
Una forma sencilla y rápida de hacer esto es añadir al final de tu fichero functions.php del tema este código:
remove_action('wp_head', 'wp_generator');
Para el que no lo sepa es BIN de una tarjeta son las 6 primeras cifras de la tarjeta que identifica el tipo de tarjeta, entindad emisora, si es de crédito o débito y el país. Si tienes una tienda online y cruzas este dato con la ip de la compra, la dirección de envío y alguna otra cosa, te puede ayudar a decidir si una operación es buena o mala, p.e. si te pagan con una tarjeta de EEUU, una ip de Marruecos y una dirección de envío de Madrid el resultado es: lagarto, lagarto, esto huele mal.
Para saber el BIN de una tarjeta yo utilizo Binbase, un sitio donde puedes consultar el bin de una tarjeta. Está limitado a 10 consultas diarias, pero es suficiente para alguien que comienza, si no siempre puedes comprar la base de datos de bines.
En la wikipedia tienes una lista de bines, aunque no se si será muy completa y el algoritmo de Luhn, utilizado para calcular el dígito de control de la tarjeta.

Se espera que este mes salga a la luz la última versión de WordPress. Para mi va a ser también la versión de salida de mi nuevo proyecto, del que os hablaré en breve, por lo que es especialmente importante.
La lista de novedades de esta versión es bastante grande así que sólo os voy a comentar algunas de las que más me han llamado la atención.
Si quieres ver la lista completa puedes ir a codex.wordpress.org
Ya está disponible la versión 2.9 de WordPress y en Ayuda WordPress han publicado un lista con las novedades de esta versión.
rel=canonical para mejorar el SEO.wp-config.php solo con añadir define('WP_ALLOW_REPAIR', true);.Los temas pueden tener “miniaturas de entrada” para tener una imagen asociada a la entrada.
commentmeta.
Hoy he estado mirando varios sitios para comprar fruta de temporada por internet directamente a los productores y la verdad es que me he quedado bastante decepcionado con la experiencia en varias de las tiendas ya que no muestran el precio en ningún momento o por lo menos no lo he podido ver sin necesidad de registrarme y la verdad es que soy bastante reacio a registrarme si no tengo claro si voy a comprar o no.
Las tiendas online no son muy diferentes de las tiendas físicas en muchos aspectos. Imagínate una frutería donde en el escaparate sólo hubiera fotografías de la fruta. Lógicamente lo más probable es que ni entraras o como mucho lo hicieras por curiosidad, pero después de entrar encima antes de ver el producto ni saber el precio te obligaran a decir cuantos kilos quieres de cada cosa. No tiene lógica.
Por muy bonito que sea el producto si no se el precio o me pones muchas trabas para poder saber cuanto cuesta probablemente me iría a otro sitio donde pensaran más en lo que yo quiero.
Saludos.
P.D.: del tema de los precios y/o gastos de envío ya hablaremos más adelante.
Ayer me dediqué a actualizar todos los blogs con wordpress que administro ya que tenía desde la versión 2.7 a la 2.8.1 y la verdad es que con todos los problemas de seguridad que están saliendo merecía la pena dedicarle un rato a la tarea.
Al intentar actualizar directamente desde el enlace que te aparece en el blog en alguno de ellos me dio el error: “Datos de conexión: Para realizar la acción solicitada se necesitan los datos de la conexión.”

La verdad es que como error me pareció bastante raro ya que nunca había tenido problemas para actualizar hasta hoy y no suelo utilizar servidor ftp ya que accedo directamente por ssh a la máquina y trabajo directamente en ella por shell. Curiosamente en esos blogs tampoco me dejaba actualizar los plugins.
Después de buscar información en foros especializados la mayor parte de los sitios comentaban que podría ser por la traducción, pero tampoco me cuadraba ya que me pasaba lo mismo en alguno que tenía sin la traducción al español.
Al final me puse a actualizarlo “a mano” y me di cuenta de que en todos los que fallaban no tenía correctamente puestos los permisos de algunos ficheros y directorios, por lo que con un simple sudo chown -R www-data.www-data * en cada home de la instalación de los blogs y problema solucionado. A veces las cosas mas sencillas y estupidas te parecen cosa de magia.
Espero que si alguno de vosotros le pasa esto mismo se acuerde de este pequeño post.
Saludos.

Guy Kawassaki es uno de los mayores especialistas mundiales en el ámbito de las nuevas tecnologías y el marketing online. Uno de sus libros, El arte de empezar, es uno de los libros que cualquier emprendedor debería de leer.
La gente de alt1040 ha publicado una traducción de una entrevista que le hicieron acerca de twitter. En esta entrevista nos aclara su forma de trabajar en twitter y como lo utiliza para sus campañas de marketing. La verdad es que merece la pena.
La verdad es que cada día me parece más útil Twitter. Había abierto una cuenta (@rastreador) cuando empezó pero después de escribir unos pocos tweeds dejó de interesarme, pero hace unos meses empecé otra vez a utilizarlo, primero como herramienta para estar al día en ciertos temas, luego por que varios amigos solían utilizarlo y después como herramienta de comunicación y de marketing online y la verdad es que no me ha decepcionado. Dentro de poco os comentaré un pequeño experimento que estoy realizando con twitter.
Como os indicaba ayer en el post acerca de la migración de correo, para sincronizar el correo utilizo la herramienta imapsync.
Imapsync es una de las herramientas mas versátiles que he encontrado para realizar este tipo de tareas, permite realizar combinaciones de todo tipo y como esta escrito en perl funciona en prácticamente cualquier sistema operativo.
En mi caso para la migración he preparado un script que me recogía el correo en el servidor origen y me lo guardaba en el destino eliminándolo del origen y autentificandose de forma diferente en cada uno de los servidores. Algó así:
/usr/bin/imapsync –host1 pop.dominio-origen.com –user1 manuel@dominio-origen.com –password1 clave1 –host2 imap.dominio-destino.com –user2 manuel@dominio-destino.com –password2 clave2 –noauthmd5 –ssl2 –delete –expunge1