viernes, 27 de diciembre de 2013

Mejora tu indexación utilizando rel="nofollow"

Cuando queremos conseguir enlaces externos hacia nuestra web siempre nos han aconsejado que esos enlaces no tengan el rel="nofollow" para que nos puedan pasan "link juice" eso está bien, aunque de hecho es aconsejable tener enlaces con rel="nofollow" para tener un linkbuilding más natural.

Para explicar el link juice de una forma muy sencilla imaginemos que la pagina tiene cierta autoridad y la representamos con un valor imaginario 100, en esta página existen 12 enlaces y 4 de ellos son rel="nofollow", bien cuando entre el robot de google, verá todos los enlaces y valorará cada uno con su algoritmo, el robot accederá a dentro de cada enlace que no tienen el rel="nofollow", lo analizará y hará un traspaso de link juice, dividirá las 100 unidades de autoridad entre 8 enlaces, repartiéndolo bajo el criterio de su algoritmo.

Es algo más complejo pero espero que se haya entendido el concepto, ¿Ahora te preguntarás y eso que tiene que ver con mi indexación?

Bien una de las cosas que hace el robot es acceder al enlace y lo analiza, si te pones a pensar en tu web verás que hay demasiadas formas para acceder al mismo contenido desde distintos lugares de la web.

Un mismo producto te lo puedes encontrar en la home, en el apartado de accesorios de otro producto, en el apartado de otros clientes también compraron, o en cualquier otro hook de la web. Como te podrás imaginar el robot de google no está todo el día mirando tu web, y puede pasar 2 o 4 veces por semana y examina únicamente una pequeña cantidad de páginas de tu web, así que lo mejor será allanar el terreno al robot.

¿Cómo hacemos eso?

Si generamos un camino único para que los robots tengan menos url's "duplicadas" que investigar, estos accederán más rápidamente a todos los rincones de la web y transferiremos mucho mejor el linkjuice a las páginas interiores.

Será tan sencillo como incluir rel="nofollow" en cada <a href... que aparece en cada acceso "duplicado" del producto.



Por ejemplo, en la home podemos hacer rel="nofollow" en todos los productos destacados ya que estos mismos artículos estarán en su categoría por defecto.

Teniendo en cuenta el concepto nos armamos de paciencia y en una tarde lo tenemos todo hecho.

Otros enlaces susceptibles de hacer un rel="nofollow" los encontraremos en los siguientes lugares.


Categorías laterales, si ya están en el menú de arriba no es necesario hacer que los robots se mareen con otro menú duplicado.


En el pie nos encontramos lo mismo, las categorías repetidas por 3a vez, y los enlaces a cualquier zona del backoffice del usuario no tienen ningún sentido que un robot se meta por ahí, y las redes sociales tampoco son necesarias.

Como depende de cómo está diseñada cada página lo mejor es pensar que accesos alternativos tenemos a un mismo contenido y limitarlos, quedándonos con un único acceso para los robots.

martes, 3 de diciembre de 2013

Cantidad de productos por páginas

En este post quiero comentar la posibilidad de cambiar la cantidad de productos que podemos seleccionar desde el selector de paginación del product list.



No sé por qué PS no pone solución a esto pero lo que está claro es que tal cual viene por defecto (10, 20, 50) no ayuda a la usabilidad de nuestra tienda, ya que para una correcta visualización con esas opciones implicaría tener configurado una visualización de 2 o 5 productos por línea, si en tu caso usas una cantidad diferente de productos por línea verás que con las configuración de (10,20,50) irás dejando espacios finales en tu lista de productos.

Cualquiera que vea la siguiente imagen pensará que ya no existen más productos en esa categoría y puede dejar de seguir viendo o buscando productos, cuando en realizad hay muchas más páginas.



Lo primero que podemos hacer es cambiar la configuración desde el backoffice, pero esta configuración únicamente afecta a la visualización principal, pero se mantendrán las opciones de ver 10, 20, o 50 productos por página.



La solución es bien sencilla, un override que cambie esos valores por los que nosotros queramos.

Realizaremos un sencillo override a la función "public function pagination($nbProducts = 10)" de la clase "mitienda.com/classes/controller/FrontController.php"

Una vez tengamos preparado nuestro override donde toca "mitienda.com/override/classes/controller/FrontController.php" editaremos la función "public function pagination($nbProducts = 10)" que hemos copiado.

Es muy fácil ya que solo hemos de editar una sola línea

Bien buscamos la siguiente línea

$nArray = (int)Configuration::get('PS_PRODUCTS_PER_PAGE') != 10 ? array((int)Configuration::get('PS_PRODUCTS_PER_PAGE'), 10, 20, 50) : array(10, 20, 50);

Lo cambiaremos por

$nArray = (int)Configuration::get('PS_PRODUCTS_PER_PAGE') != 10 ? array((int)Configuration::get('PS_PRODUCTS_PER_PAGE'), (int)Configuration::get('PS_PRODUCTS_PER_PAGE')*2, (int)Configuration::get('PS_PRODUCTS_PER_PAGE')*3) : array(10, 20, 50);

¿Qué hemos hecho?
Para que PS calcule la cantidad que aparecerá en las opciones de productos por página hemos hecho que coja la variable "PS_PRODUCT_PER_PAGE" (Que configuramos en el backoffice) y la multiplique por "X" en este caso 2 y 3 ya está bien, de esta forma siempre tendremos en todas las opciones una cantidad acorde y nunca tendremos huecos vacíos.

Podéis descargaros el Override desde este enlace. Descargar