antoniofdez Posted January 12, 2016 Share Posted January 12, 2016 Buenos días a todos! Con el año nuevo me he propuesto seguir mejorando el proyecto que tengo en marcha en PrestaShop 1.4.8.3 y para ello, hay que trabajar el SEO. Tras hacer un análisis de la situación actual de la tienda con Google Webmaster Tools, me encuentro con que hay muchísimas etiquetas meta duplicadas. En concreto, me refiero a la paginación dentro de las categorías de productos, al ordenar el listado por nombre, precio, etc... Y lo mismo ocurre con los fabricantes. Tras buscar tanto en el foro español como en el inglés, encontré este enlace con el que se soluciona este problema, sin embargo, me crea otro diferente: http://www.presto-changeo.com/en/content/6-prestashopseotips Tras hacer los cambios en /classes/Tools.php me encuentro con que sí, funciona, se añade a las etiquetas title el número de página de la categoría en la que nos encontramos y, en caso de ordenar la lista de productos, también se añade el respectivo parámetro. De esta manera se soluciona el problema. Sin embargo y si entro dentro de un producto, veo que me cambia el orden de la etiqueta title. Y es que en vez de mostrar "Nombre producto - Nombre tienda" lo hace al revés, primero muestra el nombre de la tienda seguido del nombre del producto. Open /classes/Tools.php and replace the function completeMetaTags (around line #500) with the function below. static public function completeMetaTags($metaTags, $defaultValue) { global $cookie; $no_duplication = ""; if (self::getValue('p')) $no_duplication .= ($no_duplication != ""?" #":"#").self::getValue('p'); if ($no_duplication != "") $no_duplication = " (".$no_duplication.")"; if ($metaTags['meta_title'] == NULL) $metaTags['meta_title'] = Configuration::get('PS_SHOP_NAME').' - '.$defaultValue; $metaTags['meta_title'] .= $no_duplication; if ($metaTags['meta_description'] == NULL) $metaTags['meta_description'] = (Configuration::get('PS_META_DESCRIPTION', intval($cookie->id_lang)) ? Configuration::get('PS_META_DESCRIPTION', intval($cookie->id_lang)) : ''); $metaTags['meta_description'] .= $no_duplication; if ($metaTags['meta_keywords'] == NULL) $metaTags['meta_keywords'] = Configuration::get('PS_META_KEYWORDS', intval($cookie->id_lang)) ? Configuration::get('PS_META_KEYWORDS', intval($cookie->id_lang)) : ''; return $metaTags; } Open /classes/Tools.php and replace the function getHomeMetaTags (around line #490) with the function below. static public function getHomeMetaTags($id_lang) { global $cookie, $page_name; /* Metas-tags */ $metas = Meta::getMetaByPage($page_name, $id_lang); $ret['meta_title'] = (isset($metas['title']) AND $metas['title']) ? Configuration::get('PS_SHOP_NAME').' - '.$metas['title'] : Configuration::get('PS_SHOP_NAME'); $ret['meta_description'] = (isset($metas['description']) AND $metas['description']) ? $metas['description'] : ''; $ret['meta_keywords'] = (isset($metas['keywords']) AND $metas['keywords']) ? $metas['keywords'] : ''; $no_duplication = ""; if (self::getValue('p')) $no_duplication .= ($no_duplication != ""?" #":"#").self::getValue('p'); if ($no_duplication != "") { $ret['meta_title'] .= " (".$no_duplication.")"; $ret['meta_description'] .= " (".$no_duplication.")"; } return $ret; } Supongo que para evitar esto hay que hacer algún cambio en estas funciones que dejo a continuación pero hace muchos años que no programo y estoy muy oxidado . Por lo tanto, lo único que necesito es evitar que se cambie el orden de la etiqueta "title" y ya me valdría perfectamente este código... Link to comment Share on other sites More sharing options...
antoniofdez Posted January 13, 2016 Author Share Posted January 13, 2016 Una pequeña subidita a ver si alguien me ayuda con este código... Link to comment Share on other sites More sharing options...
antoniofdez Posted January 16, 2016 Author Share Posted January 16, 2016 Una última subida a ver si alguien me echa una mano ya que he seguido haciendo pruebas y nada :'( Link to comment Share on other sites More sharing options...
aLiJu Posted February 3, 2016 Share Posted February 3, 2016 Hu0la ! prueba a cambiar esto: if ($metaTags['meta_title'] == NULL) $metaTags['meta_title'] = Configuration::get('PS_SHOP_NAME').' - '.$defaultValue; por esto: if ($metaTags['meta_title'] == NULL) $metaTags['meta_title'] = $defaultValue.' - '.Configuration::get('PS_SHOP_NAME'); debería de funcionarte Link to comment Share on other sites More sharing options...
RogerWMM Posted February 4, 2016 Share Posted February 4, 2016 Buenas, ¿Tienes un PS 1.4 en funcionamiento? ¿y puedes cobrar por tarjeta? (el modulo de redsys para tarjetas con el nuevo codigo de seguirdad no estaba disponible para 1,4... como lo has solucionado?) SI quieres relanzar el proyecto no estaría de mas pasar a 1,6. Te dará mas opciones a nivel de instalación de nuevos modulos, SEO, responsive, una template mas actual... en definitiva, muy recomendable aunque el upgrade de 1,4 a 1,6 no es simple. Sobre el tema que preguntabas, además de la modificación de metas... no está de mas relanzar el sitemap y pedir reindex de las zonas modificadas puesto que es posible que google haya dejado de indexar areas duplicadas y no se entere de las modificaciones que has hecho. Link to comment Share on other sites More sharing options...
aLiJu Posted February 4, 2016 Share Posted February 4, 2016 Hay módulos de pago, y seguramente gratuitos tambien, que te aceptan lo del pago con TPV y SHA256, yo lo tengo funcionando en la 1.4 pero me costó bastante. Al final eran los de Redsys que tenian que cambiarme ellos las claves, y no las habian cambiado. Ya podia darle yo vueltas Link to comment Share on other sites More sharing options...
antoniofdez Posted February 5, 2016 Author Share Posted February 5, 2016 Buenas, ¿Tienes un PS 1.4 en funcionamiento? ¿y puedes cobrar por tarjeta? (el modulo de redsys para tarjetas con el nuevo codigo de seguirdad no estaba disponible para 1,4... como lo has solucionado?) SI quieres relanzar el proyecto no estaría de mas pasar a 1,6. Te dará mas opciones a nivel de instalación de nuevos modulos, SEO, responsive, una template mas actual... en definitiva, muy recomendable aunque el upgrade de 1,4 a 1,6 no es simple. Sobre el tema que preguntabas, además de la modificación de metas... no está de mas relanzar el sitemap y pedir reindex de las zonas modificadas puesto que es posible que google haya dejado de indexar areas duplicadas y no se entere de las modificaciones que has hecho. Sí, trabajamos con PS 1.4 y cobramos con tarjeta. Desde que se hizo el cambio en Redsys hubo buenos compañeros que adaptaron los módulos para haceros compatibles con esta versión de PS. El tema del SEO se puede tratar igual en cualquier versión siempre y cuando se hagan las cosas bien y se eviten duplicidades :-). Link to comment Share on other sites More sharing options...
antoniofdez Posted February 5, 2016 Author Share Posted February 5, 2016 (edited) Hu0la ! prueba a cambiar esto: if ($metaTags['meta_title'] == NULL) $metaTags['meta_title'] = Configuration::get('PS_SHOP_NAME').' - '.$defaultValue; por esto: if ($metaTags['meta_title'] == NULL) $metaTags['meta_title'] = $defaultValue.' - '.Configuration::get('PS_SHOP_NAME'); debería de funcionarte Muchas gracias por contestar!!! Voy a probarlo y si funciona edito el post . Un saludo! [EDITADO] Funciona!!! Muchas gracias :-) Edited February 5, 2016 by antoniofdez (see edit history) Link to comment Share on other sites More sharing options...
enrcarbo1983 Posted February 5, 2016 Share Posted February 5, 2016 Yo tengo un modulo de SEO y me funciona muy bien Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now