Como vimos en la parte I instalamos la versión de WordPress 3.5.1 dentro de una carpeta /blog/ de PrestaShop, con esto conseguíamos que nos funcionase los dos programas, PrestaShop y WordPress cada uno con un a dirección diferente, el problema esta en que la página de WordPress no tiene el mismo aspecto que nuestra tienda.
En esta parte vamos a intentar que nuestro blog tenga el mismo aspecto que nuestra tienda. Para trabajar con PrestaShop utilizaremos la plantilla que viene por defecto (default) y para trabajar con WordPress utilizaremos la plantilla twentytwelve, si queremos podemos utilizar otras, en este caso vamos a usar estar porque son las que vienen instaladas con nuestras versiones.
Lo primero que vamos a realizar es la modificación del header.php de nuestra plantilla de WordPress, dicho archivo lo encontraremos en la carpeta: blog/wp-contentthemes/twentytwelve primero haremos una copia por si necesitáramos volver a la versión original, a continuación sustituiremos lo que tiene dentro por lo siguiente:
<?php require_once(dirname(__FILE__).'/../../../../config/config.inc.php'); require_once(dirname(__FILE__).'/../../../../header.php'); ?>
Con estas líneas lo que hacemos es cargar la configuración principal de PrestaShop además del archivo cabecera de PrestaShop, con lo que tendremos media página configurada.
A continuación realizaremos una copia del archivo footer.php de nuestra plantilla de WordPress que se encuentra en la misma carpeta que el header.php, una vez realizada la copia lo que haremos sera borrar todo lo que contiene dentro y sustituirlo por lo siguiente:
<?php require_once(dirname(__FILE__).'/../../../../config/config.inc.php'); require_once(dirname(__FILE__).'/../../../../footer.php'); ?>
Con esto prácticamente esta todo realizado, salvo porque nos quedara todo descolocado y con otra configuración que no sera la de nuestra web, este problema es debido a que cuando entramos en el blog PrestaShop no reconoce la página y le identifica cono «pagenotfound» entonces lo que tenemos que hacer es indicar que cuando entremos en el blog el body de la página la identificaremos como «blog» y cargaremos las hojas de estilo para que de esa manera se quede todo con el mismo aspecto.
Para realizar esto debemos modificar el header.tpl de PrestaShop que se encuentra en la carpeta: themes/default, primero realizaremos una copia por si en un momento determinado queremos volver a la versión de antes de instalar WordPress y a continuación modificaremos dicho archivo, en este archivo buscamos una línea larga que pone algo como:
<body {if isset($page_name)}id="{$page_name|escape:'htmlall':'UTF-8'}"{/if} class="{if $hide_left_column}hide-left-column{/if} {if $hide_right_column}hide-right-column{/if} {if $content_only} content_only {/if}">
y sustituiremos dicha línea por lo siguiente:
{$dir=$smarty.server.PHP_SELF} {if strpos($dir,"/blog/")!==false} <link rel='stylesheet' href='/blog/wp-content/themes/twentytwelve/style.css' type='text/css' media='all' /> <link href="/themes/default/css/global.css" rel="stylesheet" type="text/css" media="all" /> <body id="blog"> {else} <body {if isset($page_name)}id="{$page_name|escape:'htmlall':'UTF-8'}"{/if} class="{if $hide_left_column}hide-left-column{/if} {if $hide_right_column}hide-right-column{/if} {if $content_only} content_only {/if}"> {/if}
Con esto lo que le estamos indicando es que si estamos dentro del blog no cargue las hojas de estilo de WordPress y PrestaShop además de llamar al cuerpo «blog» y si no estamos dentro del blog que nos cargue el cuerpo de PrestaShop normal.
Por ultimo si queremos adaptar las columnas del blog o modificarlas deberemos modificar la hoja de estilos style.css que se encuentra en la plantilla de WordPress, dicho archivo se encuentra en la carpeta: /blog/wp-content/themes/twentytwelve/
En primer lugar agradecerte el artículo, muy interesante, además no hay demasiada documentación sobre el tema, he logrado que funcione en local correctamente, pero a la hora de subirlo al servidor no funciona, por que puede ser? muchas gracias de antemano!
Buenos dias. Dicha web, decir que todavia no está activa pero trabajo en prestashop 1.6 y tengo metido en una carpeta /BLOG dentro para que esté integrado. He seguido todos los pasos uno a uno de las tres partes que ponéis pero el footer del blog se descuadra….me estoy volviendo loco….Si me dan una dirección de correo les podría enviar fotos. He hecho de todo incluso cambiando los enlaces porque en 1.6 la carpeta del tema por defecto no es DEFAULT/GLOBAL.CSS sino DEFAULT-BOOTSTRAP/GLOBAL.CSS pero nada….todo perfecto pero el bloque de newsletter y social (facebook y twitter) se descuadran.
Si podrían ayudarme porque ya estoy loco….Muchas gracias
Buenos dias, las entradas estan realizadas para integrar prestashop 1.5 pero con la 1.6 los pasos son los mismos lo unico que, como bien indicas, la carpeta del tema es distona en esta version, pero en esa carpeta encontraras tanto el header.tpl cono el footer.tpl y hay puedes hacer los cambios. Comprueba que cuando estas en el blog en el codigo fuente pone «body id=blog» sino es asi esta mal la integracion. Con fotos poco se puede hacer sin ver el codigo fuente. En la pagina de prestashop en su foro hay varias entradas en las que hemos colaborado para solucionar problemas de integracion.
Hola!!
Estoy intentando replicar este tutorial, con la versión 1.6.0.6 de Prestashop y la 3.9.1 de WordPress, y el tema twentytwelve actualizado… Cuando termino los pasos de esta parte del tutorial e intento entrar al blog, me dice que hay un bucle de redireccionamiento, y no puedo acceder ¿Alguna pista de a qué se puede deber?
Muchas gracias!!
Lo del bucle de redireccionamiento suele ser a que en prestashop le tienes puesto que la direccion es con www y en wordpress no, o al reves. Asegurate de que en ambos paneles de control tienes puesta la dirección con o sin www.
Un saludo.
Integré mi header y footer de la forma que indicas pero en Prestashop 1.6. En un principio funcionaba OK, pero hoy me he dado cuenta de que al hacerlo así se duplican todos los enlaces a scripts que pudiera tener el Prestashop, apareciendo por vez primera debajo de <div id="center_column"> y otra vez justo antes de que se acabe el </body>.
Estoy haciendo algo mal? Alguna solución? Muchas gracias de antemano.
Estas seguro que no has duplicado ninguna de las lineas que vienen en el codigo. Ten en cuenta tambien que el body de 1.6 es diferente del que aparece aqui y tienes que poner el que tienes en la version 1.6
Un saludo.
He mirado el codigo fuente del blog y pone “body id=blog” pero el cuadro inferior de las newsletters y el cartel de SIGANOS de facebook y twitter sale descuadrado…..un lío, vamos….no se qué le pasa…
Si se descuadro solo en el blog puede ser porque, a lo mejor, esta cogiendo el codigo css de WP en lugar del de PS y por eso se descuadre, habria que quitar el codigo css de WP que interfiera. Si es en toda la web habria que mirar mas a fondo si esta correctamente cerrado todos los div, article, section, etc.. si es asi habria que volverlo a posicionar modificando los estilos css.
Hola me gustaría saber cómo se edita el archivo style.css para que los widgets aparezcan en el lado derecho del wordpress, saludos.
Hola. A como se edita te refieres al programa o a que debes modificar?? si no sale a la derecha es como si no tubieses la hoja style.css en ver codigo fuente comprueba primero que esta la hoja de estilo.
Hola a todos, y gracias por la ayuda en este tutorial, yo tambien estoy integrando WordPress en Prestashop 1.6 y tambien me falla el bloque de pie de pagina, Llevo 2 horas intentando exponer lo que me a pareido que falla y hay manera xDDDD.
Ire por pasos, Prestashop trata el pie de pagina en 3 pasos.
El primero es con un "footer-container" que ocupa el 100% del ancho de la pagina que es una de las cosas que nos esta fallando con la integracion
El segundo es una etiqueta dentro de <div class="footer-container"> llamada "<footer id="footer" class="container"> que es la que se carga con el codigo que teneis arriba indicado.
La terceza es otro div "<div class="row"> que es el que cuadra el contenido del pie de pagina
Teniendo encuenta que es la primera vez que me pongo a hacer algo un poco serio con prestashop y con wordpress creo que no estoy muy desencaminado xD.
¿Seria posible mirar de tratar el pie de pagina en wordpress igual que lo hace prestashop para no tener este descuadre?
Saludos y MUCHAS gracias
Hola, has creado el modulo y le tienes activo? has comprobado que ponga en el codigo del blog < body id="blog" >
Un saludo
Si, el modulo esta activo y el
body div esta bien, perdon por el doble post, fallo del navedgador
Si has modificado bien el header.php y footer.php de wordpress entonces deberia de salir corectamente tanto el pie como la cabecera de la pagina, comprueba que esten bien incluidos el style.css y global.css, sin ver la web poco mas se me ocurre.
Un saludo.
Hola amigo tengo un problema con la integración, he probado los pasos que has dado y me salio todo bien en mi servidor local, pero cuando pase los cambios en línea ahi surgió un problema del cual me encuentro atascado, resulta que mi columna izquierda de prestashop no carga en el blog, no se a que se debe eso, pienso que no estoy modificando bien el header, te envío la dirección del blog que qiero integrar: pichirilorepuestos.com.ec/blog/
Hola, en principio en el blog no sale la columna de la izquierda de prestashop pues el blog lo identifica como «Pagenotfound» para que salga la columna de la izquierda lo mas sencillo es poner que se muestre en el «pagenotfound» por ejemplo en prestashop 1.5.x vas a modulos->posiciones buscar displayleftcolumn y en cada modulo le editas para quitarle el pagenotfound y que asi se muestre en el blog.
Un saludo.
Hola amigo gracias por tu ayuda, pero no mismo funciona, no le encuentro solucion, y es raro esto, por que probe que funciona en mi servidor local, pero no entiendo por que no aparece la barra izquierda..
Ahora tienes la web en mantenimiento, prueba a ver si te salen en la direccion pichirilorepuestos.com.ec/asdfsa que es una direccion de pagina no encontrada o pagenotfound si no te salen en esa web no te saldran en el blog, tendras que quitarle el pagenotfound a los modulos como te indicamos en la anterior respuesta. Si no puedes probar a borrar la cache de prestashop.
Un saludo.
Hola, siento e estado muy liado y no e podido ponerme antes con esto, te adjunto la dirección web del blog para que lo puedas mirar en un plis, seguro que es una tonteria, pero que no soy capaz de localizar.
Saludos
Hola, no se como pero te falta un
delante del footer-container, no se si poniendole en el footer.php de wordpress a mano funcionaria dejandolo asi:
Ole OLe y OLE, ya funciona Muchisimas gracias
Hola, he probado a seguir el tutorial al pié de la letra junto a los comentarios, pero no consigo integrar el wordpres 4.0 en el prestashop 1.6. Ni siquiera logro mostrar algo en el header, he probado toda clase de rutas (absolutas y relativas), depuraciones para ver por si importa bien los documentos, pero no muestra nada por pantalla (pág en blanco).
Si alguien me pudiera ayudar, me sería de gran utilidad ya que me encuentro atascado ahora mismo y no sé por donde tirar :S
Un saludo. gracias de antemano
Hola, prueba por partes, primero modifical el header y footer de wordpress y mira a ver que pasa, con esto deberia de salir, aunque en blanco pero deberia salir. Si sale la pantalla en blanco entonces habilita los errores de prestashop para ver que error sale y asi poder hacer algo, la pantalla en blanco puede ser por muchas cosas, lo mejor es ir paso a paso.
Un saludo
Instalé prestasho 1.6 y wordpress 4.0 y se integró pefectamente bien sólo cambié los códigos para la cabecera y el footer y se muestra perfecto; pero a la hora de querer poner una imagen de fondo al blog no pasa nada y si quiero poner un formulario sale descuadrado, que podrá ser o cómo podría solucionarlo, si alguien puede darme una manito pues bienvenido y gracias por adelantado
Para modificar los estilos del blog tendria que modificar el style.css que hay en wordpress y asi poder cambiar el fondo, o el tamaño y posicion del formulario.
Un saludo
Buenas tardes eh modificado el headert.tpl y despues de modificarlos hasta arriba de la tienda aparece lang_es"> por que sera que hice mal, uso prestashop 1.6
si te aparece lang_es»> es porque algo del codigo has cerrado mal, revisa bien las ordenes.
Un saludo.
Hola, primero gracias por el tutorial.
La cabecera y el pie de página se integran correctamente, pero al realizar los cambios en el header.tpl se me queda la página del blog en blanco. Al activar el log de errores, aparece lo siguiente:
Fatal error: in /homepages/7/d501863140/htdocs/store/prestashop/tools/smarty/sysplugins/smarty_internal_templatecompilerbase.php on line 67
Alguien tiene idea que puede ser? Gracias de antemano.
Saludos,
Hola, comprueba que has puesto bien lo de la cabecera, que no te falte o sobre alguna llave, aunque por lo que pone /smarty/sysplugins» es como si fuese un error de un plugin.
Un saludo.
Buenas tardes ando un poco perdido en estos temas.
Esas lineas de codigo hay que pegarlas tal cual o los puntos que hay entre la barras hay que sustituirlos por la direccion asta llegar a ese fichero. La cosa es que lo ponga de la forma que lo ponga me sale error y ya estoy deseperado he probado ya un monton de direcciones por si algo se me escapaba y nada. Yo uso prestashop 1.6. Mi web es sexandtoys.es,
<?php
require_once(dirname(__FILE__).'/../../../../config/config.inc.php');
require_once(dirname(__FILE__).'/../../../../header.php');
?>
Hola. Esos puntos se usa porque es una ruta relativa no absoluta y hay que copiarlos tal cual.
Un saludo
Felicidades por el tutorial, me ha abierto un camino de integración que buscaba como un loco.
La integración ha funcionado a la perfección aparentemente. Tengo que retocar los estilos para los posts y paginas de wordpress, pero me he dado cuenta que me suceden dos cosas que no se por donde atacar:
1) El menú de prestashop no me muestra los submenus del megamenu cuando estoy en /blog/.
2) Tampoco me muestra un Layer Slider que tengo en cada una de las páginas.
Tienes alguna idea de que pueda ocasionar lo del menú, que me parece la más importante?
Gracias de antemano.
No se que puede ser sin ver el codigo, lo unico que se me ocurre es que prestashop carge el jquery y despues wordpress lo vuelva a cargar con lo que deje de funcionar algunas cosas de prestashop.Mira a ver si se carga dos veces jquery o que hay cargado en prestashop y no esta en el blog para ponerselo a mano.
Un saludo
Gracias por tu respuesta tan rápida, no sabes como lo agradezco, me has quitado dolores de cabeza y tiempo con un simple comentario. Efectivamente, vi en el código que cargando unas paginas de prestashop cargaba una serie de archivos y codigos de Javascript, que no estaban cargados en la cabecera de la página /blog/.
Lo que hice fue copiar esas líneas y anteponerlas a los includes del header y listo, ya funciona.
Aunque me quedo con la mosca de porque no se cargan o mejor dicho desde donde se cargan en prestashop, para entenderlo mejor y realizar un simil para /blog/.
Ahora me queda la carga del [layerslider=1], que no se carga y me deja un hueco al principio de la página y antes de los posts.
Bueno en fín muy agradecido. Manten este blog así, merece la pena.
Hola,
gracias por la información !
Alejandro, relacionado al menú, dices : «vi en el código que cargando unas paginas de prestashop cargaba una serie de archivos y codigos de Javascript, que no estaban cargados en la cabecera de la página /blog/.
Lo que hice fue copiar esas líneas y anteponerlas a los includes del header y listo, ya funciona.»
Me pasa lo mismo, no aperece los submenús en la página del blog. Me puedes decir cuales son las líneas a añadir en el header.php ?
Muchas gracias.
Perdón, tengo prestashop 1.6 y wordpress 4.1
Hola. La integración me ha funcionado bastante bien, pero tengo un par de dudillas que a lo mejor me podéis solventar:
-Si en mi plantilla de PrestaShop aparece la columna de categorías y demás de la tienda siempre en la parte derecha, por qué en la del blog integrado aparece en la izquierda?
-La página del blog se llama ‘Error 404’, alguna manera de que se llame como el nombre que tiene en WordPress?
-Y por último, tras la integración del header no consigo integrar también la hoja breadcrumb.tpl para que me marque la ubicación en la que me encuentro durante la navegación.
Gracias por vuestro tiempo de antemano, y a la espera de alguna respuesta. =)
Hola.
– Lo de las columnas sin ver el codigo o la pagina no puedo decirte mas que puede ser por la hoja de style.css de wordpress que hay que poner un float left o right.
– Lo del error 404 lo tiene resuelto en https://aula5centrodeestudios.com/errores-al-integrar-wordpress-prestashop/
– El breadcrumb no funcionara bien en el blog pero en la tienda si deberia funcionar.
Un saludo.
Hola,
gracias por el tutorial, la verdad que me ha servido de mucho, sobre todo para ver que realmente se puede hacer una integración entre prestashop y wordpress.
He realizado los cambios en el header y footer de prestashop y todo va bien. 🙂
Sin embargo no consigo que el body aparezca con el id=»blog».
No estoy usando la plantilla por defecto de prestashop, sino una que he adquirido, y soy absolutamente novata en php. Asi que es seguro que no estoy haciendo los cambios correctamente en el fichero header.tpl
Este es el código con el que se pinta el body
***********
************
y este el código modificado
************
{$dir=$smarty.server.PHP_SELF}
{if strpos($dir,»/blog/»)!==false}
{else}
***********
He modificado las rutas de los themes de wordpress y prestashop.
Si entro en cualquier página de prestashop el body que genera es
Si accedo al blog el body queda de la siguiente manera
versión de prestashop: 1.6.0.13
versión de wordpress: 4.1.1
Estaría muy agradecida si pudieras echarme una mano con esto.
Atentamente.
Nada, parece que no hay manera. si me dices cómo, podría intentar hacerte llegar el código.
Gracias de antemano.
un saludo,
Hola de nuevo, puedes mandarnos por correo electronico el codigo a info@aula5centrodeestudios.com
Hola, en principio lo que pones deberia de estar bien, lo que debes mirar y comprobar es en que carpeta tienes el blog, si lo has cambiado de sitio deberas cambiar la linea del if y ponerlo ahi.
{if strpos($dir,”/mi_carpeta_del_blog/”)!==false}
Un saludo.
Hola
Hemos hecho la integración tal cual nos indicas. El header.tpl es el del theme de leotheme que hemos utilizado para el sitio. El error nos 404 nos sigue saliendo. Alguna sugerencia para correjirlo ?
Salu2 y gracias por el blog
Hay una entrada que lo explica https://aula5centrodeestudios.com/errores-al-integrar-wordpress-prestashop/
Hola.
Una consulta nuevamente. Para solucionar el error 404. A MI Entender debería de modificar las líneas que le adjunto de acuerdo a los temas que utilice, tanto para wordpress como para Prestashop.
Por lo que tengo dos preguntas
En la primera línea (<link rel='stylesheet' href='/blog/wp-content/themes/twentytwelve/style.css' ) deberia ir el tema de blob que utilizo por defecto según entiendo.. En el caso que nos dan utilizais el wentytwelve. De utilizar el twentyfifteen debería de reemplazar dicha línea
En la segunda línea themes/default/css/globall.css ( si utilizo un tema que sea /themes/ejemploweb ) debería tambíen de cambiar default x le nombre del tema ?
Saludos y gracias de nuevo
Hola, Con lo de error 404 a que te refieres, al titulo y descripcion de la web? eso se soluciona con el modulo seo. Si es que no encuentra los archivos style.css y global.css debes corregirlo como indicas para que coja los css corectos.
Un saludo
Hola,
Con respecto al error 404 en la pestaña del blog. Siguiendo el hilo de post anterior. Me podrías aclarar como se soluciona el error con el modulo seo por fa ?. Tengo instalado Yoast.
Te adjunto screen del error
dropbox.com/s/8hidy5s274l9jiv/Captura%20de%20pantalla%202015-05-31%2021.25.32.png?dl=0
Saludos
Hola, tienes como solucionarlo en la entrada https://aula5centrodeestudios.com/errores-al-integrar-wordpress-prestashop/
Un saludo.
Hola,
cual es tu email de contacto ?
Salu2
Hola!!
Primero de todo gracias por la ayuda para poder integrar wordpress en prestashop.
Lo segundo es que he ido corrigiendo errores, que por lo visto más de uno ha tenido como yo, sin embargo no soy capaz de corregir el pie de página, se ha descuadrado e incluso las letras están borrosas. No se que puedo hacer.
He probado con lo que habéis comentado pero es como si estuviera en un callejón sin salida, no se ver donde puede estar el error.
Agradecería mucho vuestra ayuda.
Así queda: http://sanissima.com/blog/
Un saludo.
Tienes que modificar el css y añadir para lo de siguenos
h4{
clear:none;
}
y para el color (no se porque le quita, es como si cogiese otra imagen de fondo)
.footer-container{
background_color:#333;
}
Muchas gracias por el aporte.
Yo tengo el problema de que me quedo atascada ya al principio porque al modificar el header.php de wordpress me sale la pantalla en blanco, si activo el MODE_DEV para debbuguear los errores me sale Warning: File C:xampphtdocsmisitioheader.php is deprecated. Vamos que me dice que no puedo meterle la cabecera usando:
Y de ahí no salgo…
¿Qué puede ser?
Gracias de antemano.
Ese metodo en la version 1.6 esta «deprecated» pero aun asi debe funcionar,es un aviso no un error. El error debe de estar en algun otro sitio.
Prueba a ver si funciona wordpress y prestashop sin los cambios, y ves haciendo paso a paso y comprobando
Un saludo
Hola!
Gracias por responder, efectivamente y es que más abajo está lo que realmente peta que es:
Fatal error: Cannot redeclare bloginfo() (previously declared in C:xampphtdocsmisitioblogwp-includesgeneral-template.php:576) in C:xampphtdocsmisitiomodulesrevsliderprestashoprevprestashoploader.php on line 102
Si desactivo el revolution slider va bien pero es que lo necesito en la tienda… estoy mirando a ver si hay alguna manera de que detecte que está en el blog y no lo meta… 😛
Hola de nuevo!
Nada era para contar aquí como lo solucioné. Resulta que en «Posiciones de los módulos» estaba metido el slider revolution en los hooks de carrito y footer, donde no estaba en uso y, sin embargo causaba una incompatibilidad.
Arreglado. Gracias por cierto por tus tuoriales, están genial y me han ayudado mucho 🙂
Hola!
No sé que debo estar haciendo mal pero no me carga el sidebar en WordPress.
Tenéis alguna idea?
Hola, muchas gracias por tu aporte.
Aparte de esto he logrado traer a mi wordpress los usuarios del prestashop y que inicien sesión con el mismo usuario y contraseña del prestashop. Pero quisiera dejar un solo login que sea el de prestashop, por lo cual tendría que iniciar sesión en el wordpress cuando inicio sesión en la tienda del presatashop, tienes alguna idea de cómo hacer esto?
Gracias!
Hola!
He integrado wordpress en Prestashop a través de un código similar al que propones y no hay manera de que me muestre el área de widget en la sección blog.
También quería preguntarte si tienes alguna idea para hacer que el buscador de prestashop busque también en el contenido de los posts de WordPress.
Gracias!
El área de widget te refieres a los de WordPress?? En principio usando la plantilla twentytwelve no debe haber problema, con otras plantillas puede haber mas conflictos. No nos dices versiones de prestashop ni WordPress ni plantillas que usas con lo que no te puedo decir mucho mas.
No se me ocurre ninguna forma de que prestashop busque en WordPress pues no comparten ni la base de datos.
Un saludo.
Hola!
Lo primero, gracias por tu respuesta. Sí, me refiero a los de WordPress.
La versión de Prestashop que estoy utilizando es la 1.6.0.11. La de WordPress 4.1. La plantilla de WP la twentytwelve, tenía otra pero seguí tu consejo. La de PS la default-bootstrap eso sí, modificada.
Llevo con esto mucho tiempo, he buscado y rebuscado pero no encontrado ninguna respuesta al problema. Pienso que el problema viene de que por algún motivo no se carga la función wp_head. Quizá estoy equivocada. No sé… si le quieres echar un vistazo, está aquí nukeproof.es/blog/
Acerca del buscador, por lo que estoy viendo, los blogs como módulos de de Prestashop, tampoco se sirven del buscador que trae por defecto Prestashop. Así que si lograse resolver lo de los widgets cargaría el buscador de WordPress en el sidebar del blog.
Gracias de nuevo
Asi parece que no tiene cargado el wp_head o como si no hubiese nada en los widget, ¿Has creado el modulo de la entrada final?? https://aula5centrodeestudios.com/integrar-prestashop-wordpress-parte-final/
Un saludo
Sí. Este es el código del fichero modulowp.php dentro de la carpeta modulowp
name = ‘modulowp’;
$this->tab = ‘Modulo en la cabecera’;
$this->versión = 0.1;
$this->author = ‘3W Soluciones Web’;
$this->need_instance = 0;
parent::__construct();
$this->displayName = $this->l(‘Modulo cabecera WordPress’);
$this->description = $this->l(‘Modulo cambia la cabecera añadiendo etiquetas de WordPress.’);
}
public function install()
{
return (parent::install() AND $this->registerHook(‘hookDisplayMyNewHookWP’));
}
public function hookDisplayMyNewHookWP($params)
{
global $smarty;
$dir= $_SERVER[‘PHP_SELF’];
if(strpos($dir,»/blog/»)!==false){
wp_head();
}
}
}
Y este el código en el fichero header.tpl antes del cierre de
{hook h=’hookDisplayMyNewHookWP’}
El módulo está instalado y activado (varias veces, las primeras cometí fallos de sintaxis)
¿Sabes cómo podría comprobar que se carga el módulo en la página y entra a la condición if(strpos($dir,»/blog/»)!==false){, una especie de log o alert… algo así.
Gracias!
prueba a poner un echo «algo» y eso deberia salir, algunas veces dependiendo del hosting hay que cambiar el !== por !=, y sino detras del wp_head añades un archivo prueba.tpl dejandolo asi:
{
wp_head();
return $this->display(__FILE__, ‘prueba.tpl’);
}
y en ese archivo de prueba puedes poner el código que quieras.
Un saludo.
Gracias!!
Acabo de «descubrir» el fallo. Al principio del proyecto, cuando todavía no sabía cómo integraría los dos CMS y de forma mecánica, creé un tema hijo en WordPress y se lo asigné a WordPress. Y no… No se puede. Siento haberte hecho perder el tiempo con una cosa tan tonta. Pero el ponerlo por escrito y la seguridad en tus respuestas, me han hecho dar con la solución.
Me guardo tu «echo algo» para otra ocasión. Seguro que me vendrá bien!
🙂
Ok, me alego que ya este solucionado, el «echo algo» es una instrucción de php que es
echo «algo»;
que hace que salga el texto «algo» donde lo pongas :-).
Un saludo.
Hola
Cuando decis que hay que hacer cambios en prestashop en el tema default, no entiendo porque no puedo hacerlo en la plantilla que compre, si lo hago en default y luego uso la otra, no servira de nada no?
gracias y lo siento no entiendo casi nada de esto
Si puedes hacerlo en el que compraste pero se explica en el tema por defecto porque es el que trae por defecto prestashop.