Empieza por una tarea
Estas 40 fichas cubren un sitio típico: qué poner y dónde, qué ve el cliente en el panel y qué errores detecta la generación. Debajo, todos los atributos.
O empieza por una sección entera: bloque principal, preguntas, precios, cabecera →
Textos e imágenes
Listas
Ajustes del sitio
Blog y entradas
Mostrar según una condición
Tienda
Comodidad en el panel
Formularios y plugins
Campos personalizados
Campos (fld-, opt-, tax-)
Prefijos por ámbito
Un tipo de campo puede aplicarse a 4 entidades distintas. Solo cambia el prefijo — la sintaxis del valor y el comportamiento son los mismos.
fld-*Campo de entradael valor pertenece a una entrada, página o CPT específicos
fld-text="field_name"Alternativa: f_text="field_name"opt-*Opcionesrecurso global del sitio — logotipo, contactos, favicon
opt-text="field_name"Alternativa: o_text="field_name"tax-*Campo de taxonomíael valor pertenece a un término (categoría, etiqueta, taxonomía personalizada)
tax-text="field_name"Alternativa: t_text="field_name"Cada tipo de campo funciona en cada ámbito — tanto como atributo directo con prefijo (fld-text / opt-text / tax-text; alternativa f_text / o_text / t_text) como colocando un campo fld-* simple dentro de un contenedor de ámbito (opt-group / tax-group / fld-loop), donde se resuelve a ese ámbito automáticamente.
fld-alt="field_name"Alternativa: f_alt="field_name"Escribe el valor en el atributo alt de una etiqueta img — descripción de imagen para accesibilidad y SEO. Compatible con Polylang/WPML.
fld-altf_altopt-alto_alttax-altt_altfld-anchor="field_name"Alternativa: f_anchor="field_name"Enlace de ancla — el campo acepta un identificador sin el signo #; el generador antepone la almohadilla al escribir en href.
fld-anchorf_anchoropt-anchoro_anchortax-anchort_anchorfld-area="field_name"Alternativa: f_area="field_name"Campo de texto sin formato de varias líneas, sin editor visual: los saltos de línea escritos en el panel se mantienen en el sitio. Para entradillas, direcciones y descripciones cortas.
fld-areaf_areaopt-areao_areatax-areat_areafld-auto-id="field_name"Alternativa: f_auto_id="field_name"Genera un id HTML único a partir del valor de un campo ACF/SCF vinculado. Útil cuando filas de repetidor se renderizan en secuencia y necesitan ids estables para anclas o CSS.
fld-auto-idf_auto_idopt-auto-ido_auto_idtax-auto-idt_auto_idfld-bg-color="field_name"Alternativa: f_bg_color="field_name"Color de fondo — escribe el valor en el estilo inline background-color. Selector de color en el admin.
fld-bg-colorf_bg_coloropt-bg-coloro_bg_colortax-bg-colort_bg_colorfld-bg-image="field_name"Alternativa: f_bg_image="field_name"Imagen de fondo del bloque — el generador escribe la URL en el estilo inline background-image. Si el bloque también tiene color o gradiente de fondo, la imagen puede no renderizarse en algunos navegadores.
fld-bg-imagef_bg_imageopt-bg-imageo_bg_imagetax-bg-imaget_bg_imagefld-bg-video="field_name"Alternativa: f_bg_video="field_name"Vídeo HTML5 de fondo — un grupo de tres campos: póster, mp4 y webm. El generador adjunta un <video> con autoplay/muted/loop al fondo del bloque.
fld-bg-videof_bg_videoopt-bg-videoo_bg_videotax-bg-videot_bg_videofld-checkbox="field_name"Alternativa: f_checkbox="field_name"Vincula el estado de un input[type=checkbox] a un campo booleano ACF/SCF. El generador añade el atributo checked cuando el valor es true.
fld-checkboxf_checkboxopt-checkboxo_checkboxtax-checkboxt_checkboxfld-checkbox-custom="field_name"Alternativa: f_checkbox_custom="field_name"Checkbox personalizada dentro de fld-loop — cada fila recibe un name único para que el envío del formulario devuelva un array de valores.
fld-checkbox-customf_checkbox_customopt-checkbox-customo_checkbox_customtax-checkbox-customt_checkbox_customfld-class="field_name"Alternativa: f_class="field_name"Escribe el valor en el atributo class HTML. Útil para estilos condicionales: elige una cadena en el admin (p. ej. is-featured) y se convierte en clase del bloque en el front.
fld-classf_classopt-classo_classtax-classt_classfld-code="field_name"Alternativa: f_code="field_name"Fragmento de código arbitrario — el valor se imprime literalmente, sin escapado (raw output). Para píxeles de seguimiento, iframes de terceros, estilos en línea.
fld-codef_codeopt-codeo_codetax-codet_codefld-color="field_name"Alternativa: f_color="field_name"Color de texto — escribe el valor en el estilo inline color del elemento actual. El admin muestra un selector de color con canal alfa.
fld-colorf_coloropt-coloro_colortax-colort_colorfld-custom="field_name"Alternativa: f_custom="field_name"Atributo personalizado arbitrario: conecta cualquier atributo HTML del elemento al panel de administración como campo editable. Formato del valor: "nombre-atributo:Etiqueta en admin". Por ejemplo, para hacer editable src o href: fld-custom="src:Image link" o fld-custom="href:Link field name". Si necesita varios en un mismo elemento, use las variantes numeradas fld-custom1...fld-custom20.
fld-customf_customopt-customo_customtax-customt_customfld-editor="field_name"Alternativa: f_editor="field_name"Editor visual (TinyMCE) para texto con formato: títulos, listas, enlaces, imágenes. Ponlo en un div: WordPress envuelve el texto en párrafos por su cuenta.
fld-editorf_editoropt-editoro_editortax-editort_editorfld-email-link="field_name"Alternativa: f_email_link="field_name"Enlace de email en un atributo — el generador construye href="mailto:..." e inyecta la dirección del campo como texto visible del enlace dentro de <a>.
fld-email-linkf_email_linkopt-email-linko_email_linktax-email-linkt_email_linkfld-file="field_name"Alternativa: f_file="field_name"Subida de archivo arbitrario — PDF, DOCX, ZIP, etc. La URL se inyecta en el href de una <a>. Subidor de medios estándar en el admin.
fld-filef_fileopt-fileo_filetax-filet_filefld-gallery="field_name"Alternativa: f_gallery="field_name"Galería de imágenes — un array de imágenes con orden por arrastrar y soltar. Renderizada en el front como un bucle sobre imágenes.
fld-galleryf_galleryopt-galleryo_gallerytax-galleryt_galleryfld-gmap="field_name"Alternativa: f_gmap="field_name"Campo Google Maps — coordenadas, dirección y zoom en un selector con mapa interactivo. Requiere una clave de API de Google Maps en los Ajustes del Tema.
fld-gmapf_gmapopt-gmapo_gmaptax-gmapt_gmapfld-gmap-addr="field_name"Alternativa: f_gmap_addr="field_name"Dirección textual de un Google Map — extrae el componente address del objeto gmap. Útil para un pie debajo del mapa.
fld-gmap-addrf_gmap_addropt-gmap-addro_gmap_addrtax-gmap-addrt_gmap_addrfld-group="field_name"Alternativa: f_group="field_name"Contenedor de campos anidados — todos los fld-* dentro se convierten en sub-campos del grupo en el admin. Sin valor propio, solo estructura el Panel del Tema.
fld-groupf_groupopt-groupo_grouptax-groupt_groupfld-hide="field_name"Alternativa: f_hide="field_name"Ocultación condicional del bloque — espejo de show con lógica invertida. true en el admin retira el bloque del marcado.
fld-hidef_hideopt-hideo_hidetax-hidet_hidefld-id="field_name"Alternativa: f_id="field_name"Escribe el valor en el id HTML del elemento actual. Para auto-generación a partir del contenido, ver auto_id o slug_id.
fld-idf_idopt-ido_idtax-idt_idfld-image="field_name"Alternativa: f_image="field_name"Campo de imagen. En un <img> la generación toma src del campo y quita srcset y sizes, para que se vea la imagen elegida en el panel; alt y class quedan como en el marcado.
fld-imagef_imageopt-imageo_imagetax-imaget_imagefld-image-gallery="field_name"Alternativa: f_image_gallery="field_name"Galería sin envoltorio automático en lightbox — úsala cuando tu visor modal se conecta mediante un componente JS personalizado.
fld-image-galleryf_image_galleryopt-image-galleryo_image_gallerytax-image-galleryt_image_galleryfld-layout="field_name"Alternativa: f_layout="field_name"Una plantilla de bloque dentro de fld-layouts — contiene los elementos renderizados para una variante de layout específica.
fld-layoutf_layoutopt-layouto_layouttax-layoutt_layoutfld-layouts="field_name"Alternativa: f_layouts="field_name"Flexible Content — el usuario elige distintos tipos de bloques en el admin y los ordena arbitrariamente. Cada tipo es un fld-layout aparte con su propio marcado.
fld-layoutsf_layoutsopt-layoutso_layoutstax-layoutst_layoutsfld-lbox-gallery="field_name"Alternativa: f_lbox_gallery="field_name"Galería en lightbox — cada imagen se envuelve automáticamente en un <a> con atributos de lightbox para el widget elegido.
fld-lbox-galleryf_lbox_galleryopt-lbox-galleryo_lbox_gallerytax-lbox-galleryt_lbox_galleryfld-lbox-image="field_name"Alternativa: f_lbox_image="field_name"Imagen en lightbox — el generador envuelve la <img> en un <a href> al tamaño completo con atributos que activan un visor modal (Fancybox, GLightbox, nativo).
fld-lbox-imagef_lbox_imageopt-lbox-imageo_lbox_imagetax-lbox-imaget_lbox_imagefld-lbox-video="field_name"Alternativa: f_lbox_video="field_name"Vídeo en lightbox — el campo acepta una URL (YouTube, Vimeo, MP4) y se convierte en un enlace lightbox con embed al hacer clic.
fld-lbox-videof_lbox_videoopt-lbox-videoo_lbox_videotax-lbox-videot_lbox_videofld-link="field_name"Alternativa: f_link="field_name"Enlace universal como campo de texto plano — el usuario introduce una URL, el generador la escribe en href. Sin selector de entrada, sin validación de esquema.
fld-linkf_linkopt-linko_linktax-linkt_linkfld-list="field_name"Alternativa: f_list="field_name"Lista de valores vía textarea — cada línea se convierte en un elemento del array. Ideal para listas de ventajas, etiquetas, enumeraciones simples sin repetidor.
fld-listf_listopt-listo_listtax-listt_listfld-loop="field_name"Alternativa: f_loop="field_name"Repetidor — el usuario añade cualquier número de filas, cada una con su propio conjunto de campos. Dentro de fld-loop usa atributos fld-* normales; el parser detecta que pertenecen a la fila. El análogo TF de the ACF/SCF Repeater.
fld-loopf_loopopt-loopo_looptax-loopt_loopfld-lottie="field_name"Alternativa: f_lottie="field_name"Animación Lottie — el campo acepta una URL a un archivo JSON. En el front inicializa un lottie-player en el elemento actual.
fld-lottief_lottieopt-lottieo_lottietax-lottiet_lottiefld-page-link="field_name"Alternativa: f_page_link="field_name"Enlace a una página de WordPress — selector desplegable sobre páginas, entradas y CPTs existentes en el admin. Devuelve el permalink y respeta la locale activa de Polylang/WPML.
fld-page-linkf_page_linkopt-page-linko_page_linktax-page-linkt_page_linkfld-phone-link="field_name"Alternativa: f_phone_link="field_name"Enlace de teléfono en un atributo — el generador construye href="tel:..." e inyecta el número del campo como texto visible dentro de <a>.
fld-phone-linkf_phone_linkopt-phone-linko_phone_linktax-phone-linkt_phone_linkfld-placeholder="field_name"Alternativa: f_placeholder="field_name"Escribe el valor en el atributo placeholder de un input o textarea — el texto de ayuda dentro de un campo vacío.
fld-placeholderf_placeholderopt-placeholdero_placeholdertax-placeholdert_placeholderfld-posts="field_name"Alternativa: f_posts="field_name"Bucle sobre entradas elegidas manualmente — renderizadas en el front como WP_Query con el orden del usuario conservado.
fld-postsf_postsopt-postso_poststax-postst_postsfld-radio="field_name"Alternativa: f_radio="field_name"Botones de radio — elige una opción de una lista predefinida. Configuración en el Panel del Tema.
fld-radiof_radioopt-radioo_radiotax-radiot_radiofld-select="field_name"Alternativa: f_select="field_name"Lista desplegable — los pares (label, value) se configuran en el Panel del Tema mediante un sub-repetidor.
fld-selectf_selectopt-selecto_selecttax-selectt_selectfld-shortcode="field_name"Alternativa: f_shortcode="field_name"Shortcode como valor de campo — el contenido se pasa por do_shortcode antes de la salida. Cualquier shortcode de WordPress en cualquier lugar del tema.
fld-shortcodef_shortcodeopt-shortcodeo_shortcodetax-shortcodet_shortcodefld-show="field_name"Alternativa: f_show="field_name"Revelado condicional del bloque — true en el admin mantiene el bloque en el front, false lo elimina (vía CSS display:none o guard PHP).
fld-showf_showopt-showo_showtax-showt_showfld-slug-id="field_name"Alternativa: f_slug_id="field_name"ID al estilo slug con transliteración — el generador toma el valor del campo vinculado y lo convierte a formato slug (cirílico → latín, espacios → guiones, minúsculas).
fld-slug-idf_slug_idopt-slug-ido_slug_idtax-slug-idt_slug_idfld-style="field_name"Alternativa: f_style="field_name"CSS inline arbitrario en el elemento actual — escribe el valor en el atributo style. Úsalo con moderación: sobrescribe las hojas de estilo.
fld-stylef_styleopt-styleo_styletax-stylet_stylefld-terms="field_name"Alternativa: f_terms="field_name"Bucle sobre términos seleccionados — el array de un campo taxonomy, cómodo para renderizar nubes de etiquetas o listas de enlaces.
fld-termsf_termsopt-termso_termstax-termst_termsfld-text="field_name"Alternativa: f_text="field_name"Campo de texto de una línea, el tipo más habitual. Sustituye todo el contenido del elemento por el valor del campo; el texto del HTML pasa a ser el primer valor del campo al pulsar «Cargar datos», no un valor de reserva. Traducible con Polylang/WPML.
fld-textf_textopt-texto_texttax-textt_textfld-title="field_name"Alternativa: f_title="field_name"Escribe el valor en el atributo HTML title — el tooltip al pasar el ratón. Más común en enlaces e imágenes.
fld-titlef_titleopt-titleo_titletax-titlet_titlefld-value="field_name"Alternativa: f_value="field_name"Escribe el valor en el atributo value de input/select — para campos de formulario cuyo valor por defecto se edita desde el admin.
fld-valuef_valueopt-valueo_valuetax-valuet_valuefld-video="field_name"Alternativa: f_video="field_name"Vídeo por URL — colócalo en un bloque de vídeo; en el admin aparece un campo de texto para cualquier enlace de vídeo (YouTube, Vimeo, …); en el front se reproduce como reproductor incrustado.
fld-videof_videoopt-videoo_videotax-videot_videofld-youtube="field_name"Alternativa: f_youtube="field_name"Vídeo de YouTube por URL — el generador inserta un iframe de embed en el elemento actual.
fld-youtubef_youtubeopt-youtubeo_youtubetax-youtubet_youtubeGrupo de campos (Meta)
Creates an ACF/SCF field group from the field attributes inside the element it sits on. Place it on the element that holds the fields, most often body; the value is the group name in wp-admin (alternative: wp_meta). Without wp-fields-group on a page, no field group is created for that template automatically (you can still add one by hand in the ACF/SCF settings). This attribute does not create template files — they are generated from the Webflow pages separately
wp-fields-group="Group name"Alternativa: wp_metaCrea un grupo de campos ACF/SCF a partir de los atributos de campo dentro del elemento donde se coloca. Se pone en el elemento que contiene los campos — normalmente en body; el valor es el nombre del grupo en el admin (heredado: wp_meta). Sin wp-fields-group en la página, no se crean grupos de campos para esa plantilla automáticamente (puede crearlos manualmente en los ajustes de ACF/SCF). No crea archivos de plantilla — se generan por separado a partir de las páginas de Webflow.
Mostrar editor (wp-show-editor)
Keep the WordPress text editor on a page with custom fields. A ThemeForge attribute (no alternative spelling)
wp-show-editorMantiene visible el editor visual de WP en páginas vinculadas a plantilla vía wp-fields-group. Por defecto el editor se oculta — este atributo lo restaura.
Descripción del campo
Adds a hint (description) under the field in wp-admin. Works at any nesting level.
instructions="Hint text"Adds a help text (description) under a field’s label in the WordPress admin. Place it on the same element that carries a field attribute (fld-text, opt-link, a group or repeater container, …) and editors see your guidance right where they fill the field in.
Control de visualización
Controls how the element is displayed in the ACF admin
display="table"Renderiza un fld-repetidor como layout de tabla en el admin — rejilla compacta de filas. Bueno para campos cortos (nombre + precio + cantidad).
display="block"Cada fila del repetidor es una tarjeta-bloque aparte con campos apilados verticalmente. Default para la mayoría de tipos.
display="row"Los campos dentro de una fila fluyen horizontalmente (flex) — para pares cortos «etiqueta + valor» en el admin.
Atributos generales
Visualización condicional
Conditional output by a WordPress function
wp-if="condition()"Alternativa: wp_ifSalida condicional del bloque según una condición de WordPress: el valor es una llamada a función (o expresión) que devuelve true/false. Si es falso, el bloque no aparece en absoluto en la página. También puede indicarse solo el nombre de un campo: wp-if="phone" muestra el bloque solo si el campo phone está relleno (equivale a get_field('phone')). Valores típicos en las tarjetas de ejemplo de abajo; también se admiten expresiones PHP arbitrarias.
has_post_thumbnail()Comprueba si la entrada tiene imagen destacada (miniatura).is_user_logged_in()Comprueba si el usuario está autenticado.is_front_page()La página actual es la portada del sitio.is_single()La página actual es una entrada individual.is_page()La página actual es una página estática.is_category()La página actual es un archivo de categoría.is_archive()La página actual es cualquier archivo (categoría, etiqueta, fecha, autor).is_search()La página actual es una página de resultados de búsqueda.is_404()La página actual es 404 (no encontrada).Establecer variable PHP (wp-set)
Puts a given value into an HTML attribute of the element
wp-set="attribute:value" / wp-set="a1:v1; a2:v2" (several pairs separated by ;)Alternativa: wp_setUniversal HTML attribute setter. Format: `wp-set="name:value"`. The wp-set attribute itself is removed, and the «name:value» pair is added as a regular HTML attribute on the same element. Multiple pairs can be specified with `;`: `wp-set="n1:v1; n2:v2"`. Examples: `wp-set="type:date"` → `type="date"`; Schema.org microdata `wp-set="itemscope: ; itemtype: https://schema.org/BreadcrumbList"` → `itemscope="" itemtype="https://schema.org/BreadcrumbList"`. If the value needs to be computed via PHP, use wp-set-php instead.
Expresión PHP (wp-php)
An arbitrary PHP expression
wp-php="echo get_field(...)"Alternativa: wp_phpEjecuta código PHP arbitrario en el lugar del elemento — el generador envuelve el valor en <?php ... ?>. Máxima libertad: variables, bucles, llamadas a funciones. Para simplemente imprimir un valor es más cómodo php-echo (echo está implícito), para mostrar condicionalmente — php-if / wp-if.
PHP echo
Print a PHP expression
php-echo="expression"Alternativa: php_echoMuestra el resultado de una expresión PHP como contenido del elemento. No escriba la palabra echo — está implícita: php-echo="get_the_title()" imprime el título de la entrada actual. Para construcciones cortas y seguras; para bloques de código con lógica use wp-php.
Condición PHP
A PHP condition
php-if="condition"Alternativa: php_ifRenderizado condicional: el elemento solo se muestra si la expresión PHP del valor es verdadera. P. ej. php-if="is_user_logged_in()" muestra el bloque solo a visitantes autenticados. Sirve cualquier expresión booleana; pariente de wp-if (orientado a condiciones de WordPress ya hechas).
PHP Injection (Positional)
php-before="php code"Alternativa: php_beforeInserts raw PHP code immediately BEFORE the element — for setup logic, opening control structures, or variable assignments that wrap the element.
php-after="php code"Alternativa: php_afterInserts raw PHP code immediately AFTER the element — pairs with php-before to close control structures or run teardown logic.
php-insert="php code"Alternativa: php_insertInserts PHP code INSIDE the element, replacing its children — the element keeps its tag and attributes but its content becomes the code's output.
php-replace="php code"Alternativa: php_replaceReplaces the ENTIRE element (tag included) with the output of the PHP code — use when you need to swap the whole node for dynamic markup.
php-prepend="php code"Alternativa: php_prependInserts PHP code at the START of the element's content — prepends the code output before the existing children.
php-append="php code"Alternativa: php_appendInserts PHP code at the END of the element's content — appends the code output after the existing children.
Templates & Loading
wp-include="file_name" (no extension)Alternativa: wp_includeInserta en este lugar otro archivo PHP del tema (include normal; nombre sin extensión — .php se añade automáticamente). Diferencia clave con wp-part: el generador NO crea NI sobrescribe el archivo de wp-include al actualizar el tema — es su propio parcial, escrito y mantenido a mano, y sobrevive a las actualizaciones. Truco: ponga primero wp-part para que el generador extraiga una vez el marcado del elemento a un archivo, luego cambie el atributo a wp-include — el archivo dejará de sobrescribirse y podrá editarse a mano.
wp-part="slug"Alternativa: wp_partExtrae el elemento a un archivo reutilizable aparte (template part de WordPress) y lo incluye mediante get_template_part(). Diferencia clave con wp-include: el archivo se genera del marcado de Webflow y se SOBRESCRIBE en cada actualización del tema — editarlo a mano no tiene sentido, edite el elemento original en Webflow. Útil como objetivo de actualización AJAX. Combinación: wp-part extrae el archivo una vez, después se cambia el atributo a wp-include — y se edita el archivo a mano sin sobrescrituras.
wp-shortcode="[shortcode atr=val]"Alternativa: wp_shortcodeExecutes a WordPress shortcode in place via do_shortcode() — embed plugin output (forms, sliders, WC blocks) anywhere in the layout.
wp-load="post_type"Alternativa: wp_loadTurns the element into a «Load more» button that AJAX-loads the next page of the current query and appends results — infinite-scroll-style pagination.
wp-rotation="N"Alternativa: wp_rotationA grouping counter that splits loop results into groups of N (e.g. columns) — increments per item so you can wrap every N items in a row.
wp-template-cpt="post_type"Alternativa: wp_template_cptBinds the template file to a specific custom post type (CPT). Placed on the `<body>` tag. WordPress shows this template in the «Template» dropdown when editing posts of the named CPT. Example: ```html <body wp-template-cpt="product"> ...template content... </body> ``` This template becomes selectable for posts of type `product` (WooCommerce product).
wp-sidebar="sidebar_name"Alternativa: wp_sidebarÁrea de widgets (sidebar dinámico): el contenido del elemento se sustituye por los widgets que el admin colocó en esa área (Apariencia → Widgets). El valor es el nombre del área; el tema la registra automáticamente al generar. Aquí van también los widgets de plugins — p. ej. el filtro de catálogo Premmerce.
Entradas
WordPress Core
Attributes that output standard WordPress fields
wp="post-title"Alternativa: wp="post_title"Imprime el título de la entrada o página actual — lo introducido en el campo «Título» del admin de WP. Respeta la locale activa de Polylang/WPML.
wp="post-content"Alternativa: wp="post_content"Imprime el contenido principal de la entrada vía the_content() — con bloques Gutenberg, shortcodes y embeds oEmbed. Debe estar dentro del Loop.
wp="post-excerpt"Alternativa: wp="post_excerpt"Extracto de la entrada — un resumen corto del campo Extracto o auto-generado del contenido. Ideal para tarjetas de archivos y resúmenes de blog.
wp="post-date"Alternativa: wp="post_date"Fecha de publicación de la entrada en el formato del tema. Formato configurable en WP «Ajustes → Generales» o vía filtro get_the_date.
wp="post-image"Alternativa: wp="post_image"Imagen destacada de la entrada en un <img>: src sale de la entrada y se quitan srcset y sizes. Para un fondo, post-bg-image.
wp="post-link"Alternativa: wp="post_link"Enlace permanente de la entrada actual, escrito en href. Funciona en cualquier elemento, normalmente un <a>.
wp="post-author"Alternativa: wp="post_author"Nombre visible del autor. Por defecto el autor es el usuario que publicó la entrada.
wp="post-author-link"Alternativa: wp="post_author_link"Enlace a la página de archivo del autor — escrito en href. Abre el archivo del autor.
wp="post-tags"Alternativa: wp="post_tags"Etiquetas de la entrada actual, separadas por coma. Cada etiqueta es un enlace a su archivo.
wp="posts"Loop estándar de WordPress (The Loop) — en archivos itera entradas automáticamente. Todo lo interior se repite por cada entrada. Úsalo SOLO en plantillas de archivo (blog / categoría / archivo de CPT / búsqueda); en una página de entrada individual mostraría una lista de entradas no deseada.
wp="pagination"Números de página para el blog, los archivos y la búsqueda: WP-PageNavi si ese plugin está activo; si no, paginate_links() de WordPress. Va en un elemento vacío.
wp="home-url"Alternativa: wp="home_link"URL de la página de inicio del sitio — escrita en href. En versiones localizadas apunta a la raíz de la locale actual.
wp="post-title-link"Alternativa: wp="post_title_link"Título de la entrada envuelto en un enlace a la propia entrada — ambos valores a la vez (texto + href). Un atributo reemplaza post-title + post-link.
wp="next-post-link"Alternativa: wp="next_post_link"Enlace a la siguiente entrada del archivo — escrito en href. Se oculta en la última entrada.
wp="prev-post-link"Alternativa: wp="prev_post_link"Enlace a la entrada anterior del archivo — escrito en href. Se oculta en la primera entrada.
wp="post-bg-image"Alternativa: wp="post_bg_image"Miniatura de la entrada como imagen de fondo del bloque — la URL se escribe en el estilo inline background-image.
wp="post-lbox-image"Alternativa: wp="post_lbox_image"Miniatura de la entrada como enlace lightbox — <img> se envuelve en <a href> con atributos de lightbox.
wp="site-name"Alternativa: wp="site_name"Sinónimo de bloginfo-name — nombre del sitio desde los ajustes de WP.
wp="site-desc"Alternativa: wp="site_desc"Sinónimo de bloginfo-description — lema del sitio desde los ajustes de WP.
wp="breadcrumbs"Migas de pan vía el plugin Breadcrumb NavXT — el rastro de la página de inicio a la página actual. Requiere el plugin activo.
wp="no-results"Alternativa: wp="no_results"Contenedor del estado «sin resultados» en archivos y búsqueda — el generador lo muestra solo cuando no hay resultados (controlado por JS).
wp="term-title"Alternativa: wp="term_title"Outputs the name of the current taxonomy term — category, tag, or custom taxonomy. Used on taxonomy archives and inside fld-term-query loops. Respects the active Polylang/WPML locale.
wp="term-link"Alternativa: wp="term_link"Permalink to the term's archive page — written into the href of an <a>. Multilang-aware.
wp="term-count"Alternativa: wp="term_count"Number of posts in the current taxonomy term (products in a category, posts in a tag). Useful for a badge next to the category name.
wp="product-price"Alternativa: wp="product_price"WooCommerce price of a product that is not on sale; hidden while it is. Put product-price-sale and product-price-regular next to it for sales.
wp="product-price-regular"Alternativa: wp="product_price_regular"The old, struck-through price, shown only while the product is on sale; empty and hidden otherwise. Pair it with product-price-sale.
wp="product-price-sale"Alternativa: wp="product_price_sale"Sale (discounted) WooCommerce product price. Empty when the product has no active sale.
wp="product-prices"Alternativa: wp="product_prices"Wrapper container for the product price block — typically holds product-price-regular and product-price-sale inside. Structures the price block for CSS.
wp="product-sku"Alternativa: wp="product_sku"WooCommerce product SKU. Hidden when the SKU field is not set on the product.
wp="product-gallery"Alternativa: wp="product_gallery"WooCommerce product gallery container — supports swipe and zoom on the product page.
wp="product-cat-image"Alternativa: wp="product_cat_image"WooCommerce product category image — the thumbnail set under Products → Categories. URL is injected into the img src.
wp="product-cat-bg-image"Alternativa: wp="product_cat_bg_image"Product category image as a background-image
wp="product-qty"Alternativa: wp="product_qty"WooCommerce product quantity input — usually <input type="number">. Pairs with product-qty-plus and product-qty-minus.
wp="product-qty-minus"Alternativa: wp="product_qty_minus"Decrement-quantity button for cart or product page. JS reduces the linked product-qty input by 1.
wp="product-qty-plus"Alternativa: wp="product_qty_plus"Increment-quantity button for cart or product page. JS increases the linked product-qty input by 1.
wp="add-to-cart"Alternativa: wp="add_to_cart"Goes on a <form> with a submit button: adds the product without a page reload and updates the cart counter and mini cart. Quantity inside: wp="product-qty". Variable products use the var-* values.
wp="cart-total"Alternativa: wp="cart_total"Cart total as WooCommerce shows it in the cart. Updated without a page reload when the cart changes.
wp="cart-count"Alternativa: wp="cart_count"WooCommerce cart item count — updated via AJAX. Used in the header for a badge on the cart icon.
wp="cart-empty"Alternativa: wp="cart_empty"«Cart is empty» container — the generator shows it only when the cart has no items. Usually contains a «back to shopping» link.
wp="product-group-child"Alternativa: wp="product_group_child"Fila de un producto hijo de un producto agrupado — se coloca en la fila repetida del bucle de hijos (wp-product-query="get_grouped_children()"). Aporta el identificador del producto y el precio unitario con los que se calcula el total.
wp="product-group-qty"Alternativa: wp="product_group_qty"Campo de cantidad de un producto hijo — se convierte en un campo numérico que empieza en 0 («no pedido») y se limita al stock restante cuando se gestiona el inventario. Aquí corresponde este atributo y no wp="product-qty": ese pertenece al formulario del propio producto y movería todas las filas a la vez.
wp="product-group-qty-minus"Alternativa: wp="product_group_qty_minus"Botón de restar de un producto hijo — solo cambia su propia fila.
wp="product-group-qty-plus"Alternativa: wp="product_group_qty_plus"Botón de sumar de un producto hijo — solo cambia su propia fila.
wp="product-group-totals"Alternativa: wp="product_group_totals"Contenedor del total de un producto agrupado — incluye el recuento, el importe y el botón de añadir al carrito.
wp="product-group-count"Alternativa: wp="product_group_count"Cantidad total seleccionada entre los productos hijos — se recalcula en el navegador mientras se escribe.
wp="product-group-price"Alternativa: wp="product_group_price"Importe total de la selección actual — se recalcula en el navegador mientras se escribe.
wp="product-group-add"Alternativa: wp="product_group_add"Añade toda la selección al carrito en una sola petición: cada producto hijo cuya cantidad sea mayor que cero.
wp="search"Site search form wrapper — the generator wraps it in an HTML5 <form action="/?s="> with input[name=s].
wp="autoload"Marker for AJAX trigger on a filter element (checkbox / radio / select inside wp-filter-form). When set, JS auto-submits the filter form on value change, no «Apply» click needed. NOT infinite-scroll (see wp-load for that).
wp="product-image"Alternativa: wp="product_image"Additional product image — URL is injected into the img src. Distinct from product-gallery (the whole gallery).
wp="product-bg-image"Alternativa: wp="product_bg_image"Product thumbnail as a background image — URL written into the inline background-image style.
wp="product-lbox-image"Alternativa: wp="product_lbox_image"Product thumbnail as a lightbox link — <img> is wrapped in <a href> with lightbox attributes.
wp="product-image-gallery"Alternativa: wp="product_image_gallery"Product gallery without automatic lightbox — use when the modal viewer is wired via a custom JS component.
wp="product-title"Alternativa: wp="product_title"Product title outside the loop context. Inside single-product / loop product use wp="post-title" instead.
wp="product-height"Alternativa: wp="product_height"Product height from the shipping settings in WC admin.
wp="product-width"Alternativa: wp="product_width"Product width from the shipping settings in WC admin.
wp="product-length"Alternativa: wp="product_length"Product length from the shipping settings in WC admin.
wp="product-weight"Alternativa: wp="product_weight"Product weight from the shipping settings in WC admin.
wp="product-sale-percent"Alternativa: wp="product_sale_percent"Discount percentage on the product — computed from regular/sale price. Useful for a -20% badge.
wp="product-attrs"Alternativa: wp="product_attrs"Loop container over the product's attributes (inside: attr-name, attr-options)
wp="attr-name"Alternativa: wp="attr_name"Product attribute name (inside a product-attrs or var-attrs loop)
wp="auto-attr-terms"Alternativa: wp="auto_attr_terms"Terms of the CURRENT attribute inside var-attrs — the same as wp-attr-terms="*", under its own name, so a converter that does not know the mark leaves the markup static
wp="attr-options"Alternativa: wp="attr_options"Product attribute values (inside a product-attrs loop)
wp="var-attrs"Alternativa: wp="var_attrs"Contenedor que repite su primer hijo una vez por cada atributo de VARIACIÓN que el producto realmente tiene — así un atributo nuevo (una talla nueva, un ingrediente nuevo) aparece en el sitio nada más guardar el producto en WordPress, sin tocar el diseño ni regenerar el tema. Dentro del grupo repetido usa wp="attr-name" para la etiqueta del atributo y wp-attr-terms="*" para la lista de sus valores. Los atributos colocados a mano en la misma plantilla (wp-attr-terms="pa_x" o wp-if-attr="pa_x") se OMITEN: los bloques hechos a mano suelen ser personalizados y, de lo contrario, el atributo se dibujaría dos veces. Los atributos que no son taxonomía («texto libre») también se omiten: no hay términos que elegir. No confundir con wp="product-attrs" — ese ENUMERA los atributos como características; este construye el SELECTOR.
wp="product"Product card container — wrapper for a single product on a catalog page.
wp="products"Catalog loop of the shop and category pages: shows the page’s own products, and the first card is the pattern. For products on another page use wp-product-query.
wp="stock"Numeric stock count for the product — shown only when stock management is enabled.
wp="stocked"«In stock» block — the generator shows it when the product is available for purchase.
wp="not-stocked"Alternativa: wp="not_stocked"«Out of stock» block — the generator shows it when the product has no stock.
wp="backorder"«Available on backorder» block — shown when the product is out of stock but orderable.
wp="var-price"Alternativa: wp="var_price"Current price of the selected variation. Updated via JS when the variation changes.
wp="var-price-regular"Alternativa: wp="var_price_regular"Regular (struck-through) price of the selected variation.
wp="var-price-sale"Alternativa: wp="var_price_sale"Sale price of the selected variation. Empty if no sale.
wp="var-image"Alternativa: wp="var_image"Image of the selected variation — URL injected into src.
wp="var-lbox-image"Alternativa: wp="var_lbox_image"Variation image in lightbox.
wp="var-bg-image"Alternativa: wp="var_bg_image"Variation image as background-image on the current element.
wp="var-desc"Alternativa: wp="var_desc"Description of the selected variation.
wp="var-sku"Alternativa: wp="var_sku"SKU of the selected variation.
wp="var-stock"Alternativa: wp="var_stock"Numeric stock count for the selected variation.
wp="var-stocked"Alternativa: wp="var_stocked"«In stock» block for variation — shown when the selected variation is available.
wp="var-not-stocked"Alternativa: wp="var_not_stocked"«Out of stock» block for variation.
wp="var-backorder"Alternativa: wp="var_backorder"«Backorder» block for variation.
wp="var-id"Alternativa: wp="var_id"Numeric ID of the selected variation.
wp="var-height"Alternativa: wp="var_height"Variation height (shipping).
wp="var-width"Alternativa: wp="var_width"Variation width (shipping).
wp="var-length"Alternativa: wp="var_length"Variation length (shipping).
wp="var-weight"Alternativa: wp="var_weight"Variation weight (shipping).
wp="cart-full"Alternativa: wp="cart_full"«Cart not empty» container — the generator shows it only when the cart has items. Paired with cart-empty.
wp="cart-weight-total"Alternativa: wp="cart_weight_total"Total weight of all items in the cart.
wp="checkout"Checkout page container — the main wrapper for checkout.php.
wp="checkout-form"Alternativa: wp="checkout_form"Full checkout form — contains billing-* fields and payment/shipping inside.
wp="checkout-full"Alternativa: wp="checkout_full"Filled checkout form — shown when the cart has items.
wp="checkout-total"Alternativa: wp="checkout_total"Final payable amount on the checkout page.
wp="order-total"Alternativa: wp="order_total"Order total amount in the account details view.
wp="order-number"Alternativa: wp="order_number"Order number (text identifier).
wp="order-comments"Alternativa: wp="order_comments"Order comments field — textarea for additional notes from the customer.
wp="discount-total"Alternativa: wp="discount_total"Total discount applied to the order — sum of coupon discounts.
wp="shipping"Shipping options container — typically holds shipping-radio inside.
wp="shipping-radio"Alternativa: wp="shipping_radio"Radio button for one shipping option.
wp="shipping-cost"Alternativa: wp="shipping_cost"Cost of the selected shipping option.
wp="shipping-countries"Alternativa: wp="shipping_countries"List of countries where shipping is available.
wp="shiping-total"Alternativa: wp="shiping_total"Final shipping cost. The name keeps a typo from the alternative format («shiping»); kept for compatibility.
wp="payment"Payment methods container — typically holds payment-radio inside.
wp="payment-desc"Alternativa: wp="payment_desc"Description of the selected payment method — caption under the radio button.
wp="payment-radio"Alternativa: wp="payment_radio"Radio button for one payment method.
wp="add-coupon"Alternativa: wp="add_coupon"Coupon code input + apply button.
wp="show-coupon"Alternativa: wp="show_coupon"«Use coupon» trigger button — usually expands the code input form.
wp="discount-amount"Alternativa: wp="discount_amount"Total discount amount in the cart
wp="discount-percent"Alternativa: wp="discount_percent"Total discount percentage in the cart
wp="coupon-discount"Alternativa: wp="coupon_discount"Discount amount from applied coupons only
wp="used-coupons"Alternativa: wp="used_coupons"Loop container over applied coupons (inside: coupon-code, coupon-amount, coupon-descr)
wp="coupon-code"Alternativa: wp="coupon_code"Code of the applied coupon (inside a used-coupons loop)
wp="coupon-amount"Alternativa: wp="coupon_amount"Discount amount of the coupon (inside a used-coupons loop)
wp="coupon-descr"Alternativa: wp="coupon_descr"Coupon description (inside a used-coupons loop)
wp="billing-address"Alternativa: wp="billing_address"Customer address (combined field — joins address_1 + address_2).
wp="billing-address-1"Alternativa: wp="billing_address_1"Customer address — line 1 (street, building).
wp="billing-address-2"Alternativa: wp="billing_address_2"Customer address — line 2 (apartment, suite).
wp="billing-city"Alternativa: wp="billing_city"Customer city.
wp="billing-state"Alternativa: wp="billing_state"Customer state / region.
wp="billing-postcode"Alternativa: wp="billing_postcode"Postal code.
wp="billing-country"Alternativa: wp="billing_country"Customer country (select with the WC countries list).
wp="billing-company"Alternativa: wp="billing_company"Customer company name (for B2B orders).
wp="billing-first-name"Alternativa: wp="billing_first_name"Customer first name.
wp="billing-last-name"Alternativa: wp="billing_last_name"Customer last name.
wp="billing-email"Alternativa: wp="billing_email"Customer email — for order confirmation.
wp="billing-phone"Alternativa: wp="billing_phone"Customer phone.
wp="current-user"Alternativa: wp="current_user"Display name of the currently authenticated WP user. Empty for guests.
wp="login-form"Alternativa: wp="login_form"Standard WordPress login form (wp_login_form).
wp="login-wc"Alternativa: wp="login_wc"WooCommerce login form — extended version for my-account.
wp="register-wc"Alternativa: wp="register_wc"WooCommerce new-user registration form.
wp="recover-wc"Alternativa: wp="recover_wc"WooCommerce password recovery form.
wp="update-user"Alternativa: wp="update_user"User-data edit form in the account dashboard.
wp="update-billing"Alternativa: wp="update_billing"Billing-address edit form in the account dashboard.
wp="update-password"Alternativa: wp="update_password"Password-change form in the account dashboard.
wp="logout-link"Alternativa: wp="logout_link"Logout link — href points to wp-login.php?action=logout with the correct nonce.
wp="orders"Order list for the current user — repeating block (loop).
wp="customer-files"Alternativa: wp="customer_files"List of downloadable files for the customer (digital products).
wp="customer-file-link"Alternativa: wp="customer_file_link"Download link for a specific customer file.
wp="term-title-link"Alternativa: wp="term_title_link"Taxonomy term title with a link to its archive — text + href in one.
wp="term-desc"Alternativa: wp="term_desc"Taxonomy term description — the «Description» field from the taxonomy admin.
wp="term-children"Alternativa: wp="term_children"Recursion-point marker inside wp-term-tree: container into which the generator inserts the nested-terms block (same structure as the parent). Any nesting depth.
wp="archive-title"Alternativa: wp="archive_title"Archive page title — category name, tag, author, date (depending on archive type).
wp="archive-title-link"Alternativa: wp="archive_title_link"Archive title with a link to the archive itself — text + href.
wp="sort"Sort selector container — usually a select with orderby options.
wp="orderby"Sort-order option inside sort. Values: date, price, popularity, etc.
wp="perpage"«Items per page» selector container for archives.
wp="filter"Product / post filter container — wrapper for filter forms.
wp="reset-filter"Alternativa: wp="reset_filter"Button to reset all applied filters.
wp="is-mobile"Alternativa: wp="is_mobile"Block renders only on mobile devices (phones + tablets).
wp="is-phone"Alternativa: wp="is_phone"Block renders only on phones (not tablets).
wp="is-tablet"Alternativa: wp="is_tablet"Block renders only on tablets.
wp="is-desktop"Alternativa: wp="is_desktop"Block renders only on desktops.
wp="is-not-phone"Alternativa: wp="is_not_phone"Block renders on all devices except phones (tablets + desktop).
wp="is-ios"Alternativa: wp="is_ios"Block renders only on iOS devices (iPhone, iPad).
wp="is-android"Alternativa: wp="is_android"Block renders only on Android devices.
wp="is-featured"Alternativa: wp="is_featured"Block renders only for «featured» WC products (is_featured flag).
wp="is-novelty"Alternativa: wp="is_novelty"Block renders only for «new arrivals» — recently published products.
wp="post-views"Alternativa: wp="post_views"Post view counter. Requires a compatible plugin (Post Views Counter, etc.).
wp="modified-date"Alternativa: wp="modified_date"Date the post was last modified
wp="has-excerpt"Alternativa: wp="has_excerpt"The block is shown only if the post has an excerpt
wp="post-comments"Alternativa: wp="post_comments"Post comments container — wrapper block (differs from wp="comments" which calls comments_template()).
wp="comment-list"Alternativa: wp="comment_list"Muestra la lista de comentarios con TU maquetación en lugar del marcado por defecto de WordPress. El primer hijo con marcas de comentario se convierte en la plantilla de un comentario; los hilos, la paginación y la moderación siguen siendo de WordPress. La tarjeta recibe id="comment-<ID>" y la clase tf-comment-depth-N: dale estilo para indentar las respuestas, porque una respuesta no tiene contenedor propio.
wp="comment-author"Alternativa: wp="comment_author"Nombre del autor del comentario. Colócalo dentro de la plantilla del comentario.
wp="comment-avatar"Alternativa: wp="comment_avatar"Avatar del autor. En un <img> se sustituye el src (se eliminan srcset/sizes estáticos, o el navegador los preferiría); en cualquier otro elemento pasa a ser imagen de fondo.
wp="comment-date"Alternativa: wp="comment_date"Fecha del comentario. Colócala dentro de la plantilla del comentario.
wp="comment-text"Alternativa: wp="comment_text"Texto del comentario. Colócalo dentro de la plantilla del comentario.
wp="comment-reply"Alternativa: wp="comment_reply"El enlace «Responder». Conserva tu elemento y tus clases, y recibe la dirección real de respuesta y los atributos de datos que necesita el script de respuestas de WordPress.
wp="comment-form"Alternativa: wp="comment_form"Construye el formulario de comentarios con TU maquetación de campos. El formulario en sí lo sigue imprimiendo WordPress —ahí viven sus campos ocultos, los hooks de plugins y el comportamiento al responder—, mientras que tus bloques marcados pasan a ser los campos, el área de texto y el botón. Un campo sin marcar mantiene el valor por defecto de WordPress.
wp="comment-input-author"Alternativa: wp="comment_input_author"El campo «Nombre» del formulario. Marca el campo o, mejor, su contenedor (etiqueta + campo + ayuda): todo el elemento marcado se convierte en el bloque del campo.
wp="comment-input-email"Alternativa: wp="comment_input_email"El campo «Correo electrónico» del formulario de comentarios.
wp="comment-input-url"Alternativa: wp="comment_input_url"El campo «Web» del formulario de comentarios.
wp="comment-input-text"Alternativa: wp="comment_input_text"El área de texto del comentario.
wp="comment-submit"Alternativa: wp="comment_submit"El botón de envío del formulario. Se conservan tu maquetación y tus clases.
wp="review-list"Alternativa: wp="review_list"Muestra las valoraciones de producto de WooCommerce con TU maquetación. Una valoración es un comentario más una puntuación, así que las marcas de comentario funcionan dentro de la tarjeta sin cambios. Todo lo que hay dentro del bloque es FUENTE: el primer hijo con marcas de valoración/comentario se convierte en la plantilla de una valoración, y un bloque wp="review-form" dentro pasa a ser los campos del formulario. El bloque en sí sigue siendo de WooCommerce: título y recuento, paginación, el aviso "es necesario comprar", validación y guardado.
wp="review-rating"Alternativa: wp="review_rating"La puntuación de la valoración. El elemento recibe data-rating y la variable CSS --tf-rating, de modo que una barra de estrellas se dibuja solo con CSS (width: calc(var(--tf-rating) / 5 * 100%)). A un elemento VACÍO se le imprime el número; si dentro hay maquetación tuya (tus estrellas), no se toca.
wp="review-verified"Alternativa: wp="review_verified"Se muestra solo en una valoración de un comprador verificado. Tu maquetación, tus clases.
wp="review-form"Alternativa: wp="review_form"El formulario de valoración con TU maquetación de campos. Colócalo dentro de wp="review-list": ahí es donde WooCommerce imprime el formulario. Los campos usan las marcas de comentario (comment-input-author / -email / -text, comment-submit) más review-input-rating.
wp="review-input-rating"Alternativa: wp="review_input_rating"El control de puntuación del formulario (un <select>). Si no tiene opciones, se añaden 1-5. Nunca viaja en el array "fields": WordPress lo imprime solo para visitantes no identificados, y cualquier cliente con sesión perdería la puntuación.
wp="post-categories"Alternativa: wp="post_categories"Post categories as a link list. Alternative output format (vs. wp="post-category" which outputs a comma-separated list).
wp="post-bg-link"Alternativa: wp="post_bg_link"Wrap-link on the post card — turns the whole block into a clickable area pointing to post-link.
wp="parent-title-link"Alternativa: wp="parent_title_link"Parent page title with link — for hierarchical pages.
wp="home-link"Alternativa: wp="home_link"Alias of wp="home-url" — link to the site's home page.
wp="search-text"Alternativa: wp="search_text"Search query highlight in the results header («You searched for: ...»). Alternative to wp="search-query".
wp="clear"Utility marker: removes the element from DOM at build time while keeping its bound ACF/SCF fields in admin. For DOM cleanup without losing editability.
wp="delete-element"Alternativa: wp="delete_element"Synonym of wp="clear": removes the element from DOM at build time while keeping its bound ACF/SCF fields in admin (e.g. an empty tab-divider div).
Consulta personalizada
A custom WP_Query loop
wp-query="'post_type' => 'name', 'posts_per_page' => 10"Alternativa: wp_queryConvierte el elemento en un bucle de entradas (WP_Query) en cualquier lugar del tema: dentro del elemento está la tarjeta de UNA entrada, que se repite para cada resultado. Los parámetros se escriben como pares de array PHP, p. ej. wp-query="'post_type'=>'news', 'posts_per_page'=>6". Dentro del bucle funcionan wp="post-title", wp="post-image", los enlaces y los campos fld-* de la entrada.
Pagination & Queries
wp-paginate="parameters" / wp-paginate (no value)Alternativa: wp_paginateRenders pagination links for archives and search results via paginate_links(). Parameters (mid_size, end_size, prev/next text…) are passed in the value.
wp-paginate-query="query_name"Alternativa: wp_paginate_queryPagination for a named or custom query rather than the main loop — point it at the same query used by wp-query-name / a custom WP_Query.
wp-query-name="query-preset-name"Alternativa: wp_query_nameRuns a post loop from a named query preset defined in the theme panel — admins build the query once (post type, taxonomy, ordering) and reference it by name.
wp-product-query="get_related_products(4)" / "get_upsell_products(4)" / any PHP expression returning WP_Query argsAlternativa: wp_product_queryA WooCommerce loop over the results of a custom product query — related, upsell, cross-sell, or recently-viewed products. Carries WC product context inside.
wp-select="query_name"Alternativa: wp_selectBuilds a <select> from the results of a named query or an ACF repeater — useful for dynamically populated dropdowns.
Post Content & Meta
wp-post-id="prefix"Alternativa: wp_post_idOutputs the current post ID, optionally with a text prefix — handy for building unique anchors, form field names, or data attributes that need to reference the post.
wp-post-time="format"Alternativa: wp_post_timeOutputs the publish time of the current post via get_the_time(). Respects the site's date/time format settings. Must run inside The Loop.
wp-post-terms="taxonomy"Alternativa: wp_post_termsLists the names of all terms a post belongs to in a given taxonomy, joined by commas — e.g. all product categories or tags of the current item.
wp-post-term-desc="taxonomy"Alternativa: wp_post_term_descOutputs the description text of the post's first term in the given taxonomy. Useful for showing a short blurb under a category label.
wp-post-term-link="taxonomy"Alternativa: wp_post_term_linkSets the href to the archive link of the post's first term in the given taxonomy — turns the element into a clickable link to that category/tag.
wp-post-term-query="taxonomy"Alternativa: wp_post_term_queryLoops over the taxonomy terms the current post belongs to, rendering the inner markup once per term. Use it to print a list of category badges, each linked and styled.
wp-post-term-path="taxonomy"Alternativa: wp_post_term_pathRenders breadcrumbs from the term hierarchy of the post — the chain of ancestor terms down to the current one, each as a link. Ideal for category breadcrumb trails.
wp-count="singular, plural, plural (many)"Alternativa: wp_countOutputs a pluralised label with the result count — e.g. «12 products» / «1 product» — choosing the correct grammatical form for the number.
wp-attr-meta="Attribute name"Alternativa: wp_attr_metaLoops over a product's custom (non-taxonomy) WooCommerce attributes — the per-product attributes defined directly on the product rather than as global pa_* taxonomies.
Términos de taxonomía del post actual (wp-post-term)
Loop over the taxonomy terms of the current post
wp-post-term="product_cat" / "category" / "pa_color"Alternativa: wp_post_termThe first term of the current post in a taxonomy (category, post_tag, product_cat, pa_color…): name and link on an <a>, the name elsewhere. All terms as badges: wp-post-term-query; all in one line: wp-post-terms.
Comments
wp-comment-formAlternativa: wp_comment_formRenders the WordPress comment form for the current post via comment_form() — respects discussion settings and moderation rules.
wp-comment-listAlternativa: wp_comment_listRenders the list of comments for the current post — threaded replies, author avatars, and dates per theme settings.
Taxonomías
Consulta de términos de taxonomía (wp-term-query)
Loop over taxonomy terms (WP_Term_Query)
wp-term-query="product_cat" or wp-term-query="'taxonomy' => 'product_cat', 'parent' => 0"Alternativa: wp_term_queryLoop over taxonomy terms (WP_Term_Query / get_terms). Parameters either in short form («product_cat») or full string («'taxonomy' => 'product_cat', 'parent' => 0»). Inside, use term-title, term-link, term-count.
Terms & Taxonomies
wp-term-path="taxonomy"Alternativa: wp_term_pathRenders breadcrumbs for a taxonomy archive page — the ancestor chain of the currently queried term. Place it on the category/tag archive template.
wp-term-tree="taxonomy"Alternativa: wp_term_treeRenders a hierarchical tree of taxonomy terms with recursive nesting — parent terms with their children, to any depth. The first child element becomes the row template.
wp-term-query2="query parameters"Alternativa: wp_term_query2Nested term loop, level 2 — runs inside wp-term-tree / wp-term-query to render the children of the current term. Parent is set automatically from the outer loop.
wp-term-query3="query parameters"Alternativa: wp_term_query3Nested term loop, level 3 — the third level of a term hierarchy, nested inside a level-2 loop. Same auto-parent behaviour as level 2.
wp-term-select="preset-name"Alternativa: wp_term_selectLoops over terms from a named term-query preset configured in the theme panel — lets an admin define the term set once and reuse it across templates.
wp-menu-tree="Menu name"Alternativa: wp_menu_treeRenders a WordPress menu by name with your own markup: one pattern for a plain item and one for an item with a dropdown (wp-menu-tpl="link" / "drop"). Any depth: wp="menu-children" inside a sub-item prints the next level.
Conditional Blocks
wp-has-term="taxonomy" / wp-has-term="taxonomy:term-slug"Alternativa: wp_has_termConditional block — renders its contents only if the current post HAS at least one term in the given taxonomy (e.g. show a badge only for products in a sale category).
wp-has-not-term="taxonomy" / wp-has-not-term="taxonomy:term-slug"Alternativa: wp_has_not_termConditional block — renders its contents only if the current post does NOT have a term in the given taxonomy. The inverse of wp-has-term.
wp-set-php="attribute: php code"Alternativa: wp_set_phpSets an HTML attribute from a PHP expression — the value «name:php_code» becomes name="<result>" with the code evaluated and escaped at render.
WooCommerce (Tienda)
Carrito WooCommerce (wp-cart)
Product fields in the WooCommerce cart loop
wp-cart="items"Alternativa: wp_cart="items"Cart items loop container — the generator expands a foreach over WC()->cart->get_cart() inside. Use product_title, product_qty, product_price, etc. within.
wp-cart="mini"Alternativa: wp_cart="mini"Mini cart (sidecart) — compact cart variant for the header or a dropdown block.
wp-cart="not_empty"Alternativa: wp_cart="not_empty"«Cart not empty» wrapper — the generator shows the block only when the cart has items. Paired with cart-empty.
wp-cart="empty"Alternativa: wp_cart="empty"«Cart is empty» wrapper — shown only when the cart has no items, the same block as wp="cart-empty". Paired with not_empty.
wp-cart="product_title"Alternativa: wp_cart="product_title"Product title in the cart row — same as the catalog product title.
wp-cart="product_link"Alternativa: wp_cart="product_link"Product permalink in the cart row — written into the href of an <a>.
wp-cart="product_image"Alternativa: wp_cart="product_image"Product image (src) in the cart row — thumbnail or a specifically assigned image.
wp-cart="product_bg_image"Alternativa: wp_cart="product_bg_image"Product image as background-image on the cart row element.
wp-cart="product_price"Alternativa: wp_cart="product_price"Unit price of a product in the cart that is not on sale; add product_price_sale and product_price_regular for discounted items.
wp-cart="product_price_regular"Alternativa: wp_cart="product_price_regular"Regular (struck-through) unit price of the product in cart.
wp-cart="product_price_sale"Alternativa: wp_cart="product_price_sale"Sale unit price of the product in cart.
wp-cart="product_qty"Alternativa: wp_cart="product_qty"Quantity input field for the cart item.
wp-cart="product_qty_minus"Alternativa: wp_cart="product_qty_minus"Decrement-quantity (-) button for the cart item.
wp-cart="product_qty_plus"Alternativa: wp_cart="product_qty_plus"Increment-quantity (+) button for the cart item.
wp-cart="product_remove"Alternativa: wp_cart="product_remove"Remove-from-cart button (usually a cross in the row).
wp-cart="product_total"Alternativa: wp_cart="product_total"Subtotal for the cart row (unit price × quantity).
wp-cart="product_excerpt"Alternativa: wp_cart="product_excerpt"Short product description in the cart row
wp-cart="product_sale_percent"Alternativa: wp_cart="product_sale_percent"Product discount percentage in the cart row
wp-cart="product_qty_text"Alternativa: wp_cart="product_qty_text"Product quantity as text (no input field)
wp-cart="product_weight"Alternativa: wp_cart="product_weight"Product weight in the cart row
wp-cart="product_height"Alternativa: wp_cart="product_height"Product height in the cart row
wp-cart="product_width"Alternativa: wp_cart="product_width"Product width in the cart row
wp-cart="product_length"Alternativa: wp_cart="product_length"Product length in the cart row
wp-cart="subtotal"Alternativa: wp_cart="subtotal"Cart subtotal (before discounts)
wp-cart="total"Alternativa: wp_cart="total"Cart total (after discounts)
wp-cart="volume"Alternativa: wp_cart="volume"Total volume of the products in the cart (m³)
wp-cart="mobile"Alternativa: wp_cart="mobile"Mobile version of the cart (the same AJAX-updated mini cart)
wp-cart="cart_order"Alternativa: wp_cart="cart_order"Container of the full cart order block (data-wc="full_cart")
wp-cart="remove_all"Alternativa: wp_cart="remove_all"Button that empties the whole cart
wp-cart="remove_btn"Alternativa: wp_cart="remove_btn"Button that removes the selected products
wp-cart="remove_item"Alternativa: wp_cart="remove_item"Checkbox that selects one product for removal
wp-cart="remove_items"Alternativa: wp_cart="remove_items"«Select all» checkbox for bulk removal
wp-cart="if_low_stock"Alternativa: wp_cart="if_low_stock"Conditional block: shown if the product is low in stock
wp-cart="low_stock"Alternativa: wp_cart="low_stock"The low-stock threshold of the product; works inside wp-cart="if_low_stock".
Atributo de producto en carrito (wp-cart-attr)
A WooCommerce product attribute in the cart loop
wp-cart-attr="pa_size" / "pa_color"Alternativa: wp_cart_attrOutputs the value of a WooCommerce product attribute in the cart loop. For example, the size or color of the product in the cart row. Value is the attribute slug (pa_size).
Atributo condicional en carrito (wp-cart-if-attr)
Conditional block inside the cart: shown only if the product in the cart has the attribute
wp-cart-if-attr="pa_size"Alternativa: wp_cart_if_attrConditional block in the cart context: render only when a cart item has the named attribute. The cart-row analogue of wp-if-attr.
WooCommerce Variations & Cart
wp-var-select="pa_attribute"Alternativa: wp_var_selectA variation <select> for a WooCommerce variable-product attribute — populates options from the product's variations and drives the add-to-cart variation picker.
wp-cart-term="taxonomy"Alternativa: wp_cart_termOutputs a taxonomy term of the product in a cart row — e.g. the category or a custom attribute term, shown next to each cart line item.
wp-cart-if-term="taxonomy:term" or wp-cart-if-term="term"Alternativa: wp_cart_if_termConditional block inside a cart row — renders its contents only if the line-item product has the given taxonomy term.
Términos del atributo de producto (wp-attr-terms)
Loop over the terms of a WooCommerce product attribute
wp-attr-terms="pa_size" / "pa_color" / "*"Alternativa: wp_attr_termsLoop over all terms of a WooCommerce product attribute. For example, iterates all sizes (pa_size) or all colors (pa_color). Used on the product page or in filters.
Atributo de producto condicional (wp-if-attr)
Conditional block: shown only if the product has the given attribute
wp-if-attr="pa_size"Alternativa: wp_if_attrConditional block: render only when the current product has the named attribute. If the attribute is missing — the whole block is hidden.
Conditional: Product Stock Status (wp-in-stock)
Conditional block: shown only for a product in stock (1) or out of stock (0)
wp-in-stock="1" / wp-in-stock="0"Alternativa: wp_in_stockConditional block by the product's stock status: with 1 it renders only for a product in stock, with 0 only for a product that is out of stock. Typical use — a buy form wrapped in 1 and an «Out of stock» notice wrapped in 0, so each product shows exactly one of them.
Pedido WooCommerce (wp-order)
Order fields on the order details page (My Account)
wp-order="items"Alternativa: wp_order="items"Order items loop container — the generator expands a foreach over the order's line items (account dashboard).
wp-order="item_title"Alternativa: wp_order="item_title"Product title in the order row.
wp-order="item_link"Alternativa: wp_order="item_link"Product permalink in the order row.
wp-order="item_image"Alternativa: wp_order="item_image"Product image (src) in the order row.
wp-order="item_bg_image"Alternativa: wp_order="item_bg_image"Product image as background-image in the order row.
wp-order="item_price"Alternativa: wp_order="item_price"Unit price of the product at the time the order was placed.
wp-order="item_qty"Alternativa: wp_order="item_qty"Item quantity in the order.
wp-order="item_total"Alternativa: wp_order="item_total"Subtotal for the order row (unit price × quantity).
wp-order="item_number"Alternativa: wp_order="item_number"Position of the item in the order: 1, 2, 3 … Place it inside the wp_order="items" row — every row shows its own number.
wp-order="number"Alternativa: wp_order="number"Order number — short text identifier.
wp-order="date"Alternativa: wp_order="date"Order date in the theme's format.
wp-order="status"Alternativa: wp_order="status"Order status (pending, processing, completed, etc.) — label translated via WC.
wp-order="total"Alternativa: wp_order="total"Order total (items + shipping - discounts).
wp-order="delivery"Alternativa: wp_order="delivery"Shipping method selected when the order was placed.
wp-order="payment"Alternativa: wp_order="payment"Payment method selected when the order was placed.
Filters & Search
wp-filter-form="post_type"Alternativa: wp_filter_formTurns a Webflow form into a WooCommerce/WordPress filter form — submitting it filters the product/post archive by the contained fields (terms, ranges, search).
wp-range-slider="field_name"Alternativa: wp_range_sliderA range-slider UI control for a numeric filter (e.g. price). Pairs with wp-range-min / wp-range-max inputs inside the same filter form.
wp-range-min="suffix"Alternativa: wp_range_minThe minimum-value input of a range filter — its value seeds the lower bound of the filter (and reflects the current $_GET value on reload).
wp-range-max="suffix"Alternativa: wp_range_maxThe maximum-value input of a range filter — the upper bound, mirroring wp-range-min behaviour.
wp-checkbox-terms="taxonomy"Alternativa: wp_checkbox_termsRenders a checkbox list of taxonomy terms for a filter — each checkbox toggles one term in the archive query. The first checkbox row is the template.
wp-radio-terms="taxonomy"Alternativa: wp_radio_termsRenders a radio-button list of taxonomy terms for a filter — single-select variant of wp-checkbox-terms.
wp-select-terms="taxonomy"Alternativa: wp_select_termsRenders a <select> dropdown of taxonomy terms for a filter — the option list is populated from the taxonomy at render time.
pm__skunombre de input — no es un atributoConvención de NOMBRE del input para buscar por SKU dentro de un formulario de filtro — NO es un atributo HTML. Ponga name="pm__sku" en un <input> dentro de wp-filter-form y el generador conectará el campo al filtrado por SKU.
Lista de deseos
Lista de deseos (Wishlist)
Todos los atributos de la wishlist en un solo lugar: contenedores, botones de acción, campos de producto y directivas de variación. Forma canónica primero — ambas variantes alternativas se aceptan.
Estructura y contador
wp="wish-list"Alternativa: wp="wish_list"Contenedor de la lista de deseos (YITH Wishlist) — envoltorio alrededor de la tabla de productos. Coloca dentro wp="wish-items" con el bucle.
wp="wish-items"Alternativa: wp="wish_items"/ wp="wl_full"Bucle sobre productos en la lista de deseos — se repite por cada producto guardado. Dentro usa wp-wl="..." para campos de producto.
wp="wish-count"Alternativa: wp="wish_count"/ wp="wl_count"Recuento de productos en la lista de deseos del usuario actual — se actualiza al añadir/quitar.
Botones de acción
wp="wish-add"Alternativa: wp="wish_add"/ wp="add_to_wl"Botón corazón «Añadir a lista de deseos» — colocado en un producto o tarjeta de producto. Al hacer clic conmuta el producto vía AJAX.
wp="wish-copy"Alternativa: wp="wish_copy"/ wp_wl="copy"Botón «Copiar al carrito» — añade el producto de la lista de deseos al carrito manteniéndolo en la lista.
wp="wish-move"Alternativa: wp="wish_move"/ wp_wl="move"Botón «Mover al carrito» — añade al carrito y elimina de la lista de deseos en una acción.
wp="wish-remove"Alternativa: wp="wish_remove"/ wp_wl="remove"Botón de eliminar de la lista de deseos — habitualmente una cruz en la fila.
wp="wish-remove-all"Alternativa: wp="wish_remove_all"Button that empties the whole wishlist
Campos de producto (dentro del bucle de la wishlist)
wp="wl-product-title"Alternativa: wp_wl="product_title"Nombre del producto en una fila de la lista de deseos — salida vía get_name().
wp="wl-product-link"Alternativa: wp_wl="product_link"Permalink del producto — escrito en el href de una <a>.
wp="wl-product-image"Alternativa: wp_wl="product_image"Miniatura del producto — URL inyectada en el src de un img.
wp="wl-product-bg-image"Alternativa: wp_wl="product_bg_image"Miniatura del producto como imagen de fondo — URL escrita en el estilo inline background-image.
wp="wl-product-price"Alternativa: wp_wl="product_price"Precio actual del producto — si hay descuento se muestra el precio rebajado; si no, el regular.
wp="wl-product-price-regular"Alternativa: wp_wl="product_price_regular"Regular (struck-through) wishlist product price. Name in the alternative format; alias of product_regular_price.
wp="wl-product-price-sale"Alternativa: wp_wl="product_price_sale"Sale wishlist product price. Name in the alternative format; alias of product_sale_price.
Directivas de variación y taxonomía
wp-wish-attr="pa_size" or wp-wish-attr="pa_color"Alternativa: wp_wish_attrAtributo de producto WooCommerce en el bucle de lista de deseos — p. ej. talla o color. El nombre del atributo es pa_<slug> de los ajustes del producto.
wp-wish-if-attr="pa_size"Alternativa: wp_wish_if_attrBloque condicional: renderiza solo si el producto tiene el atributo nombrado. Si falta — bloque oculto.
wp-wish-term="product_cat" or wp-wish-term="product_tag"Alternativa: wp_wish_termTérmino de taxonomía del producto en el bucle de lista de deseos — categoría o etiqueta (product_cat, product_tag).
wp-wish-if-term="product_cat"Alternativa: wp_wish_if_termConditional block: shown only if the product has a term of the taxonomy