ACF (Advanced Custom Fields) & CPT (Custom Post Types) - Modulo PrestaShop

Presentacion

ACF Field Builder es el modulo PrestaShop que transforma tu tienda en un verdadero CMS flexible. Anade campos personalizados a tus productos, categorias, paginas CMS y fichas de clientes, y crea tus propios tipos de contenido — todo sin escribir una sola linea de codigo.

PrestaShop ofrece campos limitados para tus productos y categorias. Para anadir informacion especifica de tu negocio, como especificaciones tecnicas, FAQs, insignias o certificaciones, generalmente es necesario modificar la base de datos y programar templates personalizados. ACF Field Builder elimina esta complejidad: crea cualquier tipo de campo en pocos clics desde el back-office, y los datos estan automaticamente disponibles en tus templates Smarty a traves de una API sencilla e intuitiva.

Puntos fuertes:

  • Mas de 15 tipos de campos disponibles (texto, imagen, video, repeater, relacion...)
  • Custom Post Types con URLs personalizadas y SEO optimizado
  • Taxonomias para categorizar y filtrar tus contenidos
  • Multilingue nativo en todos los campos
  • Interfaz drag & drop para reorganizar tus campos
  • Templates personalizables a traves del sistema de sobreescritura de PrestaShop
  • Sistema de widgets para mostrar tus CPTs en cualquier lugar del sitio

Funcionalidades

Advanced Custom Fields

El nucleo del modulo se basa en un sistema de grupos de campos que asocias libremente a tus entidades PrestaShop. Crea un grupo, define sus reglas de localizacion (productos, categorias, paginas CMS, clientes o Custom Post Types) y anade los campos que necesitas. Cada campo dispone de opciones de validacion, presentacion y traduccion multilingue.

Los tipos de campos cubren todas las necesidades: campos basicos (texto, textarea, editor WYSIWYG, numero, email, URL), campos de eleccion (select, checkbox, radio, verdadero/falso, puntuacion con estrellas), campos de media (imagen, galeria, video YouTube/Vimeo, archivo descargable) y campos avanzados (repeater para grupos repetibles, relacion con productos o categorias, selector de color, fecha y datetime).

Custom Post Types

Crea tus propios tipos de contenido independientes del catalogo PrestaShop. Anuncios inmobiliarios, portfolios, testimonios, guias, eventos, recetas — las posibilidades son ilimitadas. Cada tipo de contenido tiene su propio slug, URLs personalizables con prefijo, una pagina de archivo opcional y meta etiquetas SEO configurables con variables dinamicas como {title}, {shop_name} y {type_name}.

Taxonomias

Las taxonomias permiten categorizar y filtrar tus contenidos personalizados. Funcionan como las categorias de productos pero se aplican a tus Custom Post Types. Crea taxonomias (Transaccion, Tipo de inmueble, Presupuesto...) y define los terminos asociados (Venta, Alquiler, Casa, Apartamento...). Las taxonomias aparecen en la barra lateral al editar un post para una seleccion rapida.

Sistema de Widgets CPT

Muestra posts de tus Custom Post Types (blog, eventos, portfolio...) fuera de su pagina de archivo, directamente en tu pagina de inicio, pie de pagina o en cualquier lugar de tu sitio.

3 metodos de integracion a elegir:

1. Via el back-office (hooks PrestaShop)

Abre un tipo CPT en el builder > Step 2 > seccion "Widget". Activa el widget, elige el hook (displayHome, displayFooter, etc.), el numero de posts y el titulo. Guarda: el widget se muestra automaticamente en el front-office.

2. Via una etiqueta Smarty (page builders, templates)

{acf_widget type="blog" limit="6"}
{acf_widget type="events" limit="3" title="Proximos eventos" show_view_all=false}
{acf_widget type="blog" template="module:wepresta_acf/views/templates/front/cpt/widget-blog.tpl"}

Funciona en todos los templates .tpl y bloques Smarty de los page builders (Creative Elements, etc.).

3. Via un shortcode (contenido CMS)

[acf_widget type="blog" limit="6"]
[acf_widget type="blog" limit="3" show_title="false"]

Funciona en paginas CMS y descripciones (productos, categorias).

Parametros disponibles:

Parametro Por defecto Descripcion
type obligatorio Slug del tipo CPT
limit 6 Numero de posts mostrados
show_title true Mostrar el titulo
title nombre del tipo Titulo personalizado
show_view_all true Enlace a la pagina de archivo
template auto Template Smarty especifico (solo etiqueta Smarty)

Templates sobreescribibles:

Crea un template especifico por tipo en tu tema:

themes/{theme}/modules/wepresta_acf/views/templates/front/cpt/widget-blog.tpl

Integracion front-office con Smarty

La variable $acf esta automaticamente disponible en todos tus templates Smarty. Varios metodos te permiten mostrar tus datos: field() para valores textuales escapados, raw() para datos en bruto, render() para el renderizado HTML formateado de imagenes y videos, label() para las etiquetas traducidas de los campos de eleccion, has() para verificar la existencia de un valor, y repeater() para iterar sobre campos repetibles.

Para mostrar campos ACF en un listado de productos, utiliza el prefetch en batch disponible desde la version 1.2.0:

{assign var='pAcf' value=$acf->forProduct($product.id_product)}
{$pAcf->field('field_slug')}

Shortcodes

Integra tus campos directamente en paginas CMS o descripciones de productos a traves del editor WYSIWYG con shortcodes: [acf field="marca"], [acf_render field="image"], [acf_group id="1"] o [acf_repeater slug="specs"]...[/acf_repeater].

Instalacion

  1. Descarga el archivo ZIP del modulo desde PrestaShop Addons
  2. En el back-office de PrestaShop, ve a Modulos > Gestor de modulos
  3. Haz clic en Instalar un modulo y selecciona el archivo ZIP
  4. Una vez instalado, haz clic en Configurar

El modulo crea automaticamente las tablas necesarias en tu base de datos durante la instalacion y esta inmediatamente operativo.

Configuracion

Grupos de Campos

Accede a la interfaz a traves de Modulos > ACF Field Builder, pestana Advanced Custom Fields. Haz clic en + Add Group para crear un nuevo grupo. Rellena el titulo, verifica el slug generado automaticamente, anade una descripcion opcional y define las reglas de localizacion para asociar el grupo a las entidades deseadas (productos, categorias, paginas CMS, clientes o Custom Post Types).

Configuracion de los Campos

Cada campo se configura a traves de tres pestanas: General Settings (titulo multilingue, slug, instrucciones contextuales, activacion), Validation (campo obligatorio, valores min/max, expresion regular) y Presentation (visualizacion de la etiqueta en el front-office, traduccion del valor, clase CSS e ID HTML personalizados).

Tipos de Contenido Personalizados

Desde la pestana Custom Post Types, crea tus tipos de contenido con un nombre multilingue, un slug tecnico, una descripcion y un icono Material Design. Configura a continuacion las URLs (prefijo, pagina de archivo) y las meta etiquetas SEO con las variables dinamicas disponibles.

Widgets CPT

En el builder de cada tipo CPT, la pestana Step 2 expone una seccion Widget que permite configurar la visualizacion automatica a traves de los hooks PrestaShop sin escribir codigo. Consulta la seccion Sistema de Widgets CPT para todos los detalles de las opciones.

Requisitos

  • PrestaShop 8.0+ o 9.x
  • PHP 8.1 o superior
  • Extension PHP intl activada (para multilingue)
  • Acceso al back-office con derechos de administrador

FAQ

¿El modulo es compatible con multitienda?

Si, los campos pueden configurarse por tienda o compartirse entre varias tiendas en modo multitienda.

¿Los datos se conservan durante una actualizacion?

Si, todos los datos se almacenan en tablas dedicadas y nunca se eliminan durante las actualizaciones del modulo.

¿Puedo usar ACF en varios tipos de entidades al mismo tiempo?

Si, el mismo grupo de campos puede asociarse a varios tipos de contenido a traves de las reglas de localizacion. Por ejemplo, un grupo puede aplicarse simultaneamente a productos y categorias.

¿Puedo exportar e importar mis configuraciones?

Si, la pestana Sync permite exportar tus grupos de campos en JSON e importarlos en otra tienda.

¿El modulo es compatible con mi tema?

Si, el modulo es compatible con los temas Classic, Hummingbird y todos los temas conformes con los estandares PrestaShop.

¿Que tipos de Custom Post Types puedo crear?

El modulo es totalmente flexible: anuncios inmobiliarios, articulos de blog, portfolios, testimonios de clientes, guias, eventos, recetas, fichas tecnicas — cualquier tipo de contenido estructurado que tu negocio necesite.

¿Como mostrar mis CPTs fuera de su pagina de archivo?

Utiliza el sistema de widgets CPT introducido en la version 1.3.0. Hay tres metodos disponibles: via el back-office (hooks PrestaShop), via una etiqueta Smarty en tus templates, o via un shortcode en tus paginas CMS. Consulta la seccion Sistema de Widgets CPT para mas detalles.

Soporte

Para cualquier pregunta tecnica o solicitud de asistencia, contactanos a traves de la mensajeria PrestaShop Addons o consulta la documentacion incluida con el modulo.

Changelog

Version 1.3.0

Sistema de Widgets CPT

Nueva funcionalidad mayor que permite mostrar posts de tus Custom Post Types (blog, eventos, portfolio...) fuera de su pagina de archivo — en la pagina de inicio, el pie de pagina o en cualquier lugar de tu sitio — a traves de tres metodos de integracion: hook PrestaShop desde el back-office, etiqueta Smarty en los templates, o shortcode en las paginas CMS. Los templates son sobreescribibles por tipo directamente desde tu tema.

Templates de archivo refactorizados

Los templates de archivo utilizan ahora partials reutilizables (_partials/posts-grid.tpl, _partials/pagination.tpl). Sin cambios visuales — mismo renderizado que antes.

Correccion

  • Corregido el guardado de los campos config y seo_config en la API de actualizacion de tipos CPT

Actualizacion

Sube los archivos del modulo y haz clic en "Upgrade" en el back-office (Modulos > WePresta ACF). Los hooks de widget se registran automaticamente. No se requiere migracion de base de datos.


Version 1.4.0

Nueva estructura de navegación

  • Sección "ACF / CPT" en la barra lateral del back-office, sustituyendo a la antigua pestaña "WePresta".
  • Pestañas ACF y CPT separadas, cada una extensible con pestañas secundarias dinámicas.
  • Pestañas secundarias dinámicas para cada grupo ACF creado (aparecen bajo la pestaña ACF).
  • Pestañas secundarias dinámicas para cada tipo de CPT creado (aparecen bajo la pestaña CPT).
  • Las pestañas secundarias se crean, renombran y eliminan automáticamente durante las operaciones CRUD.

Version 1.2.0

  • Prefetch ACF en batch para listados de productos (actionProductSearchComplete)
  • Campos personalizados en miniaturas de productos
  • Nuevo helper Smarty para integracion en paginas de categorias
  • Rendimiento de renderizado de campos mejorado

Para utilizar el helper Smarty en las miniaturas de productos, inserta en tu template:

{assign var='pAcf' value=$acf->forProduct($product.id_product)}
{$pAcf->field('field_slug')}

Version 1.0.0

  • Version inicial
  • 15+ tipos de campos personalizados
  • Custom Post Types con URLs SEO
  • Sistema de taxonomias
  • Soporte multilingue nativo
  • Interfaz drag & drop
  • Templates personalizables
  • Shortcodes para paginas CMS
  • Exportacion/importacion JSON de configuraciones
  • Compatibilidad con PrestaShop 8.x y 9.x
Cargando...