Cómo integrar PrestaShop con WordPress en cPanel: Guía básica
¿Por qué querrías integrar PrestaShop con WordPress?
Antes de meternos de lleno en la parte técnica, es importante que entiendas por qué esta integración es tan útil. Imagina que tienes una tienda online con PrestaShop y un blog o web corporativa con WordPress. Por separado funcionan bien, pero si los conectas, puedes:
- Centralizar el diseño y la navegación (mismo menú, mismo pie de página).
- Compartir usuarios y datos de clientes.
- Mostrar productos de tu tienda en tu blog de WordPress.
- Mejorar tu SEO al tener una estructura de enlaces más coherente.
- Ofrecer una experiencia de usuario unificada.
En resumen, integrar PrestaShop WordPress te permite aprovechar lo mejor de ambos mundos: la potencia de ventas de PrestaShop y la flexibilidad de contenido de WordPress. Y lo mejor de todo es que, usando cPanel, el proceso es mucho más sencillo de lo que parece.
Requisitos previos
Para empezar con esta guía, necesitas tener lo siguiente listo:
- Acceso a cPanel: Debes tener credenciales de administrador de tu hosting.
- PrestaShop instalado: Tu tienda online debe estar funcionando correctamente.
- WordPress instalado: Tu blog o sitio web debe estar operativo.
- Ambos en el mismo servidor (recomendado): Para simplificar la conexión, lo ideal es que PrestaShop y WordPress estén en el mismo hosting, ya sea en el dominio principal o en subdominios/subdirectorios.
- Conocimientos básicos de FTP o Administrador de Archivos: Necesitarás subir y editar algunos archivos.
Método 1: Integración mediante un plugin de WordPress (La más sencilla)
Este es el método recomendado para la mayoría de usuarios, ya que no requiere conocimientos de programación. Usaremos un plugin llamado "PrestaShop Integration" o similar. Asegúrate de buscar uno con buenas valoraciones.
Paso 1: Instala el plugin en WordPress
- Accede a tu panel de administración de WordPress (normalmente
tudominio.com/wp-admin). - Ve a Plugins > Añadir nuevo.
- En el buscador, escribe "PrestaShop integration".
- Elige un plugin que tenga buena puntuación y esté actualizado (por ejemplo, "PrestaShop Integration by FME" o "WP-PrestaShop Bridge").
- Haz clic en Instalar ahora y luego en Activar.
Paso 2: Configura la conexión desde WordPress
Una vez activado, el plugin añadirá una nueva opción en el menú de WordPress (normalmente en Ajustes o PrestaShop).
- Ve a esa nueva sección de configuración.
- Te pedirá los datos de tu tienda PrestaShop:
- URL de la tienda: La dirección completa de tu PrestaShop (ej:
https://tutienda.com). - Clave de API (Webservice): Necesitas generar una en PrestaShop. Te explicamos cómo en el siguiente paso.
- Token de conexión: Algunos plugins generan un token automáticamente.
- URL de la tienda: La dirección completa de tu PrestaShop (ej:
Paso 3: Genera la clave de API en PrestaShop
- Accede al panel de administración de PrestaShop (normalmente
tutienda.com/admin). - Ve al menú Parámetros avanzados > Webservice.
- Haz clic en Añadir nueva clave de API.
- Dale un nombre descriptivo, como "Conexión WordPress".
- Marca la casilla Activar.
- En la sección de Permisos, selecciona los recursos a los que quieres que WordPress acceda. Como mínimo, activa productos, categorías y clientes (si quieres compartir usuarios).
- Haz clic en Guardar.
- Copia la clave generada (es una cadena larga de letras y números).
Paso 4: Introduce la clave en el plugin de WordPress
Vuelve a la configuración del plugin en WordPress y pega la clave de API de PrestaShop en el campo correspondiente. Guarda los cambios.
Paso 5: Verifica la conexión
El plugin debería tener un botón para probar la conexión. Haz clic en él. Si todo está bien, verás un mensaje de éxito. ¡Ya has logrado conectar PrestaShop WordPress!
[TIP] Si la conexión falla, asegúrate de que las URLs estén escritas correctamente (sin barras al final) y de que el webservice de PrestaShop esté activo.
Método 2: Integración manual (Para usuarios avanzados)
Si prefieres tener más control o el plugin que elegiste no funciona, puedes hacer la integración manualmente. Este método implica editar archivos de tema de WordPress.
Paso 1: Crea un archivo de conexión en WordPress
- Accede a tu hosting a través de cPanel > Administrador de Archivos.
- Ve a la carpeta de tu instalación de WordPress (normalmente
public_htmlo una subcarpeta). - Busca la carpeta
wp-content/themes/y dentro de ella, la carpeta de tu tema activo (por ejemplo,twentytwentyfour). - Crea un nuevo archivo llamado
prestashop-integration.phpy ábrelo para editarlo. - Pega el siguiente código base (adapta las URLs y la clave de API):
<?php
// Configuración de la API de PrestaShop
define('PRESTASHOP_API_URL', 'https://tutienda.com/api');
define('PRESTASHOP_API_KEY', 'TU_CLAVE_DE_API_AQUI');
// Función para obtener productos de PrestaShop
function obtener_productos_prestashop() {
$url = PRESTASHOP_API_URL . '/products?display=full&output_format=JSON';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Basic ' . base64_encode(PRESTASHOP_API_KEY . ':')));
$response = curl_exec($ch);
curl_close($ch);
return json_decode($response, true);
}
?>
Paso 2: Llama a la función desde tu tema de WordPress
Ahora, en cualquier archivo de tu tema (como single.php, page.php o functions.php), puedes incluir este archivo y usar la función para mostrar productos.
Por ejemplo, para mostrar una lista de productos en una página, edita page.php y añade:
<?php
include('prestashop-integration.php');
$productos = obtener_productos_prestashop();
if ($productos) {
echo '<ul class="productos-prestashop">';
foreach ($productos['products'] as $producto) {
echo '<li><a href="' . $producto['link_rewrite'] . '">' . $producto['name'] . '</a></li>';
}
echo '</ul>';
}
?>
[WARNING] Este método es más complejo y puede romper tu sitio si no tienes cuidado. Siempre haz una copia de seguridad antes de editar archivos.
Configuración adicional en cPanel
Para que la integración funcione sin problemas, es posible que necesites ajustar algunas configuraciones en tu cPanel.
1. Habilitar CORS (Cross-Origin Resource Sharing)
Si PrestaShop y WordPress están en subdominios diferentes (ej: tienda.tudominio.com y blog.tudominio.com), es posible que necesites permitir solicitudes entre ellos.
- En cPanel, ve a Configuración avanzada o Editor de archivos.
- Busca el archivo
.htaccessen la raíz de tu PrestaShop. - Añade estas líneas al principio:
Header set Access-Control-Allow-Origin "https://blog.tudominio.com"
Header set Access-Control-Allow-Methods "GET, POST, OPTIONS"
Header set Access-Control-Allow-Headers "Content-Type, Authorization"
2. Configurar PHP para mayor memoria
La integración puede consumir más recursos. Aumenta el límite de memoria PHP:
- En cPanel, ve a Seleccionar versión de PHP (o MultiPHP Manager).
- Haz clic en Cambiar a opciones avanzadas.
- Busca
memory_limity cámbialo a256Mo512M. - Guarda los cambios.
3. Sincronizar bases de datos (opcional)
Si quieres compartir usuarios entre PrestaShop y WordPress, puedes usar una tabla de base de datos común. Esto es más avanzado y requiere editar archivos de configuración.
- En cPanel, ve a phpMyAdmin.
- Exporta la tabla de usuarios de PrestaShop (
ps_customer). - Crea una tabla similar en la base de datos de WordPress.
- Modifica el archivo
wp-config.phppara que WordPress use la tabla de usuarios de PrestaShop.
[INFO] Este paso es delicado. Si no estás seguro, consulta con un desarrollador.
Solución de problemas comunes (FAQ)
P: La conexión falla, ¿qué hago?
R: Verifica estos puntos:
- La URL de PrestaShop es correcta y accesible.
- La clave de API está activa y tiene los permisos necesarios.
- No hay un firewall bloqueando las solicitudes (prueba desactivándolo temporalmente).
- El plugin de WordPress está actualizado.
P: Los productos no se muestran correctamente en WordPress
R: Asegúrate de que la función obtener_productos_prestashop() esté devolviendo datos. Puedes añadir var_dump($productos); para depurar. También revisa que las URLs de los productos sean absolutas.
P: ¿Puedo usar esta integración si mi hosting usa Syspanel (HestiaCP)?
R: Sí, el proceso es similar. Si tu hosting usa Syspanel, el acceso se realiza por el puerto 2106 (ej: https://tudominio.com:2106). El resto de la configuración (creación de bases de datos, subdominios, etc.) es equivalente a cPanel.
P: ¿Afecta esto al SEO de mi sitio?
R: Sí, positivamente. Una integración bien hecha mejora la estructura de enlaces y evita contenido duplicado. Además, puedes usar el mismo menú y footer, lo que Google interpreta como una web coherente.
P: ¿Es necesario tener conocimientos de programación?
R: No, si usas el método del plugin. El método manual sí requiere saber PHP y entender la estructura de WordPress.
Conclusión
Integrar PrestaShop con WordPress en cPanel es un proceso que, aunque puede parecer técnico, es totalmente realizable si sigues los pasos adecuados. Ya sea mediante un plugin o de forma manual, los beneficios en términos de experiencia de usuario y SEO son enormes.
Recuerda siempre:
- Hacer copias de seguridad antes de cualquier cambio.
- Probar la integración en un entorno de desarrollo si es posible.
- Consultar la documentación oficial de PrestaShop y WordPress si tienes dudas específicas.
¡Ahora ya estás listo para unificar tu tienda y tu blog! Si tienes problemas, no dudes en contactar con el soporte técnico de tu hosting.
