Commencez par une tâche
Ces 40 fiches couvrent un site type : quoi placer où, ce que le client voit dans l’administration et les erreurs que la génération détecte. En dessous, tous les attributs.
Ou partez d’une section entière : bannière d’accueil, FAQ, tarifs, en-tête →
Pour commencer
Textes et images
Listes
Réglages du site
Blog et articles
Afficher sous condition
Boutique
Administration plus pratique
Formulaires et extensions
Champs personnalisés
Champs (fld-, opt-, tax-)
Préfixes par portée
Un même type de champ peut s'appliquer à 4 entités différentes. Seul le préfixe change — la syntaxe de la valeur et le comportement restent identiques.
fld-*Champ d'articlela valeur appartient à un article, une page ou un CPT spécifique
fld-text="field_name"Alternative : f_text="field_name"opt-*Optionsressource globale du site — logo, contacts, favicon
opt-text="field_name"Alternative : o_text="field_name"tax-*Champ de taxonomiela valeur appartient à un terme (catégorie, étiquette, taxonomie personnalisée)
tax-text="field_name"Alternative : t_text="field_name"Chaque type de champ fonctionne dans chaque portée — soit comme attribut direct préfixé (fld-text / opt-text / tax-text ; alternative f_text / o_text / t_text), soit en plaçant un champ fld-* simple dans un conteneur de portée (opt-group / tax-group / fld-loop), où il est rattaché à cette portée automatiquement.
fld-alt="field_name"Alternative : f_alt="field_name"Écrit la valeur dans l'attribut alt d'une balise img — la description de l'image pour l'accessibilité et le SEO. Compatible Polylang/WPML.
fld-altf_altopt-alto_alttax-altt_altfld-anchor="field_name"Alternative : f_anchor="field_name"Lien d'ancre — le champ accepte un identifiant sans le signe # ; le générateur ajoute le dièse à l'écriture dans href.
fld-anchorf_anchoropt-anchoro_anchortax-anchort_anchorfld-area="field_name"Alternative : f_area="field_name"Champ de texte brut sur plusieurs lignes, sans éditeur visuel : les retours à la ligne saisis dans l’administration se retrouvent sur le site. Pour les chapeaux, adresses et descriptions courtes.
fld-areaf_areaopt-areao_areatax-areat_areafld-auto-id="field_name"Alternative : f_auto_id="field_name"Génère un id HTML unique à partir de la valeur d'un champ ACF/SCF lié. Utile quand des lignes de répéteur se rendent à la suite et qu'il faut des ids stables pour les ancres ou le CSS.
fld-auto-idf_auto_idopt-auto-ido_auto_idtax-auto-idt_auto_idfld-bg-color="field_name"Alternative : f_bg_color="field_name"Couleur de fond — écrit la valeur dans le style inline background-color. Sélecteur de couleur dans l'admin.
fld-bg-colorf_bg_coloropt-bg-coloro_bg_colortax-bg-colort_bg_colorfld-bg-image="field_name"Alternative : f_bg_image="field_name"Image de fond du bloc — le générateur écrit l'URL dans le style inline background-image. Si le bloc a aussi une couleur ou un dégradé de fond, l'image peut ne pas s'afficher dans certains navigateurs.
fld-bg-imagef_bg_imageopt-bg-imageo_bg_imagetax-bg-imaget_bg_imagefld-bg-video="field_name"Alternative : f_bg_video="field_name"Vidéo de fond HTML5 — un groupe de trois champs : poster placeholder, mp4 et webm. Le générateur attache un <video> avec autoplay/muted/loop au fond du bloc.
fld-bg-videof_bg_videoopt-bg-videoo_bg_videotax-bg-videot_bg_videofld-checkbox="field_name"Alternative : f_checkbox="field_name"Lie l'état d'un input[type=checkbox] à un champ booléen ACF/SCF. Le générateur ajoute l'attribut checked quand la valeur est true.
fld-checkboxf_checkboxopt-checkboxo_checkboxtax-checkboxt_checkboxfld-checkbox-custom="field_name"Alternative : f_checkbox_custom="field_name"Case à cocher personnalisée dans fld-loop — chaque ligne reçoit un name unique pour que la soumission renvoie un tableau de valeurs.
fld-checkbox-customf_checkbox_customopt-checkbox-customo_checkbox_customtax-checkbox-customt_checkbox_customfld-class="field_name"Alternative : f_class="field_name"Écrit la valeur dans l'attribut HTML class. Pratique pour le style conditionnel : choisis une chaîne dans l'admin (ex. is-featured) qui devient classe du bloc en front.
fld-classf_classopt-classo_classtax-classt_classfld-code="field_name"Alternative : f_code="field_name"Extrait de code arbitraire — la valeur est imprimée telle quelle, sans échappement (raw output). Pour les pixels de suivi, iframes tiers, styles inline.
fld-codef_codeopt-codeo_codetax-codet_codefld-color="field_name"Alternative : f_color="field_name"Couleur de texte — écrit la valeur dans le style inline color de l'élément actuel. L'admin affiche un sélecteur de couleur avec canal alpha.
fld-colorf_coloropt-coloro_colortax-colort_colorfld-custom="field_name"Alternative : f_custom="field_name"Attribut personnalisé arbitraire : connecte n'importe quel attribut HTML de l'élément à l'admin comme champ éditable. Format de la valeur : "nom-attribut:Label dans l'admin". Par exemple, pour rendre src ou href éditable : fld-custom="src:Image link" ou fld-custom="href:Link field name". Plusieurs attributs sur un même élément — variantes numérotées fld-custom1...fld-custom20.
fld-customf_customopt-customo_customtax-customt_customfld-editor="field_name"Alternative : f_editor="field_name"Éditeur visuel (TinyMCE) pour un texte mis en forme : titres, listes, liens, images. Placez-le sur un div : WordPress enveloppe lui-même le texte dans des paragraphes.
fld-editorf_editoropt-editoro_editortax-editort_editorfld-email-link="field_name"Alternative : f_email_link="field_name"Lien e-mail en un attribut — le générateur construit href="mailto:..." et injecte l'adresse du champ comme texte visible du lien dans <a>.
fld-email-linkf_email_linkopt-email-linko_email_linktax-email-linkt_email_linkfld-file="field_name"Alternative : f_file="field_name"Téléversement de fichier arbitraire — PDF, DOCX, ZIP, etc. L'URL est injectée dans le href d'un <a>. Téléverseur média standard dans l'admin.
fld-filef_fileopt-fileo_filetax-filet_filefld-gallery="field_name"Alternative : f_gallery="field_name"Galerie d'images — un tableau d'images avec ordonnancement glisser-déposer. Rendue en front-end en boucle sur les images.
fld-galleryf_galleryopt-galleryo_gallerytax-galleryt_galleryfld-gmap="field_name"Alternative : f_gmap="field_name"Champ Google Maps — coordonnées, adresse et zoom dans un sélecteur avec carte interactive. Requiert une clé d'API Google Maps dans les Réglages du Thème.
fld-gmapf_gmapopt-gmapo_gmaptax-gmapt_gmapfld-gmap-addr="field_name"Alternative : f_gmap_addr="field_name"Adresse textuelle d'une Google Map — extrait le composant address de l'objet gmap. Utile pour une légende sous la carte.
fld-gmap-addrf_gmap_addropt-gmap-addro_gmap_addrtax-gmap-addrt_gmap_addrfld-group="field_name"Alternative : f_group="field_name"Conteneur de champs imbriqués — tous les fld-* à l'intérieur deviennent des sous-champs du groupe dans l'admin. Pas de valeur propre, structure seulement le Panneau du Thème.
fld-groupf_groupopt-groupo_grouptax-groupt_groupfld-hide="field_name"Alternative : f_hide="field_name"Masquage conditionnel du bloc — miroir de show avec logique inversée. true dans l'admin retire le bloc du balisage.
fld-hidef_hideopt-hideo_hidetax-hidet_hidefld-id="field_name"Alternative : f_id="field_name"Écrit la valeur dans l'id HTML de l'élément actuel. Pour une génération automatique à partir du contenu, voir auto_id ou slug_id.
fld-idf_idopt-ido_idtax-idt_idfld-image="field_name"Alternative : f_image="field_name"Champ image. Sur un <img>, la génération prend src dans le champ et retire srcset et sizes, pour afficher l’image choisie dans l’administration ; alt et class restent comme dans le balisage.
fld-imagef_imageopt-imageo_imagetax-imaget_imagefld-image-gallery="field_name"Alternative : f_image_gallery="field_name"Galerie sans encapsulation lightbox automatique — à utiliser quand le visualiseur modal est branché via un composant JS personnalisé.
fld-image-galleryf_image_galleryopt-image-galleryo_image_gallerytax-image-galleryt_image_galleryfld-layout="field_name"Alternative : f_layout="field_name"Un seul modèle de bloc à l'intérieur de fld-layouts — contient les éléments rendus pour une variante de layout spécifique.
fld-layoutf_layoutopt-layouto_layouttax-layoutt_layoutfld-layouts="field_name"Alternative : f_layouts="field_name"Flexible Content — l'utilisateur choisit différents types de blocs dans l'admin et les arrange à volonté. Chaque type est un fld-layout distinct avec son propre balisage.
fld-layoutsf_layoutsopt-layoutso_layoutstax-layoutst_layoutsfld-lbox-gallery="field_name"Alternative : f_lbox_gallery="field_name"Galerie en lightbox — chaque image est automatiquement enveloppée dans un <a> avec les attributs lightbox du widget choisi.
fld-lbox-galleryf_lbox_galleryopt-lbox-galleryo_lbox_gallerytax-lbox-galleryt_lbox_galleryfld-lbox-image="field_name"Alternative : f_lbox_image="field_name"Image en lightbox — le générateur enveloppe <img> dans un <a href> vers la taille complète avec les attributs nécessaires au visualiseur modal (Fancybox, GLightbox, natif).
fld-lbox-imagef_lbox_imageopt-lbox-imageo_lbox_imagetax-lbox-imaget_lbox_imagefld-lbox-video="field_name"Alternative : f_lbox_video="field_name"Vidéo en lightbox — le champ accepte une URL (YouTube, Vimeo, MP4) et devient un lien lightbox avec intégration au clic.
fld-lbox-videof_lbox_videoopt-lbox-videoo_lbox_videotax-lbox-videot_lbox_videofld-link="field_name"Alternative : f_link="field_name"Lien universel en champ de texte brut — l'utilisateur saisit une URL, le générateur l'écrit dans href. Pas de sélecteur d'article, pas de validation de schéma.
fld-linkf_linkopt-linko_linktax-linkt_linkfld-list="field_name"Alternative : f_list="field_name"Liste de valeurs via textarea — chaque ligne devient un élément du tableau. Idéal pour les listes d'avantages, tags, énumérations simples sans répéteur.
fld-listf_listopt-listo_listtax-listt_listfld-loop="field_name"Alternative : f_loop="field_name"Répéteur — l'utilisateur ajoute n'importe quel nombre de lignes, chacune avec son propre jeu de champs. À l'intérieur de fld-loop, utilise des attributs fld-* normaux ; le parseur détecte qu'ils appartiennent à la ligne. L'équivalent TF de the ACF/SCF Repeater.
fld-loopf_loopopt-loopo_looptax-loopt_loopfld-lottie="field_name"Alternative : f_lottie="field_name"Animation Lottie — le champ accepte une URL vers un fichier JSON. En front, un lottie-player est initialisé sur l'élément actuel.
fld-lottief_lottieopt-lottieo_lottietax-lottiet_lottiefld-page-link="field_name"Alternative : f_page_link="field_name"Lien vers une page WordPress — sélecteur déroulant sur les pages, articles et CPT existants dans l'admin. Renvoie le permalien et respecte la locale Polylang/WPML active.
fld-page-linkf_page_linkopt-page-linko_page_linktax-page-linkt_page_linkfld-phone-link="field_name"Alternative : f_phone_link="field_name"Lien téléphonique en un attribut — le générateur construit href="tel:..." et injecte le numéro du champ comme texte visible dans <a>.
fld-phone-linkf_phone_linkopt-phone-linko_phone_linktax-phone-linkt_phone_linkfld-placeholder="field_name"Alternative : f_placeholder="field_name"Écrit la valeur dans l'attribut placeholder d'un input ou textarea — l'indication affichée dans un champ vide.
fld-placeholderf_placeholderopt-placeholdero_placeholdertax-placeholdert_placeholderfld-posts="field_name"Alternative : f_posts="field_name"Boucle sur des articles choisis manuellement — rendu en front comme une WP_Query avec l'ordre défini par l'utilisateur préservé.
fld-postsf_postsopt-postso_poststax-postst_postsfld-radio="field_name"Alternative : f_radio="field_name"Boutons radio — choisis une option dans une liste prédéfinie. Configuration dans le Panneau du Thème.
fld-radiof_radioopt-radioo_radiotax-radiot_radiofld-select="field_name"Alternative : f_select="field_name"Liste déroulante — les paires (label, value) se configurent dans le Panneau du Thème via un sous-répéteur.
fld-selectf_selectopt-selecto_selecttax-selectt_selectfld-shortcode="field_name"Alternative : f_shortcode="field_name"Shortcode comme valeur de champ — le contenu passe par do_shortcode avant la sortie. N'importe quel shortcode WordPress à n'importe quelle place du thème.
fld-shortcodef_shortcodeopt-shortcodeo_shortcodetax-shortcodet_shortcodefld-show="field_name"Alternative : f_show="field_name"Révélation conditionnelle du bloc — true dans l'admin garde le bloc en front, false le retire (via CSS display:none ou garde PHP).
fld-showf_showopt-showo_showtax-showt_showfld-slug-id="field_name"Alternative : f_slug_id="field_name"ID de type slug avec translittération — le générateur prend la valeur du champ lié et la convertit au format slug (cyrillique → latin, espaces → tirets, minuscules).
fld-slug-idf_slug_idopt-slug-ido_slug_idtax-slug-idt_slug_idfld-style="field_name"Alternative : f_style="field_name"CSS inline arbitraire sur l'élément actuel — écrit la valeur dans l'attribut style. À utiliser avec parcimonie : écrase les feuilles de style.
fld-stylef_styleopt-styleo_styletax-stylet_stylefld-terms="field_name"Alternative : f_terms="field_name"Boucle sur les termes sélectionnés — le tableau d'un champ taxonomy, pratique pour rendre des nuages de tags ou listes de liens.
fld-termsf_termsopt-termso_termstax-termst_termsfld-text="field_name"Alternative : f_text="field_name"Champ texte sur une ligne, le type le plus courant. Il remplace tout le contenu de l’élément par la valeur du champ ; le texte du HTML devient la première valeur du champ lors de « Charger les données », pas une valeur de secours. Traduisible avec Polylang/WPML.
fld-textf_textopt-texto_texttax-textt_textfld-title="field_name"Alternative : f_title="field_name"Écrit la valeur dans l'attribut HTML title — l'infobulle au survol. Le plus souvent sur les liens et images.
fld-titlef_titleopt-titleo_titletax-titlet_titlefld-value="field_name"Alternative : f_value="field_name"Écrit la valeur dans l'attribut value d'input/select — pour des champs de formulaire dont la valeur par défaut s'édite depuis l'admin.
fld-valuef_valueopt-valueo_valuetax-valuet_valuefld-video="field_name"Alternative : f_video="field_name"Vidéo par URL — placez-le sur un bloc vidéo ; dans l'admin, un champ texte accepte n'importe quel lien vidéo (YouTube, Vimeo, …) ; en front, il se lit dans un lecteur intégré.
fld-videof_videoopt-videoo_videotax-videot_videofld-youtube="field_name"Alternative : f_youtube="field_name"Vidéo YouTube par URL — le générateur insère un iframe d'intégration dans l'élément actuel.
fld-youtubef_youtubeopt-youtubeo_youtubetax-youtubet_youtubeGroupe de champs (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"Alternative : wp_metaCrée un groupe de champs ACF/SCF à partir des attributs de champ situés dans l'élément où il est posé. À placer sur l'élément contenant les champs — le plus souvent sur body ; la valeur est le nom du groupe dans l'admin (hérité : wp_meta). Sans wp-fields-group sur la page, aucun groupe de champs n'est créé automatiquement pour ce template (création manuelle possible dans les réglages ACF/SCF). Il ne crée pas de fichiers de template — ils sont générés séparément depuis les pages Webflow.
Afficher l'éditeur (wp-show-editor)
Keep the WordPress text editor on a page with custom fields. A ThemeForge attribute (no alternative spelling)
wp-show-editorGarde l'éditeur visuel WP visible sur les pages liées à un template via wp-fields-group. Par défaut, l'éditeur est masqué — cet attribut le ramène.
Description du champ
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.
Contrôle d'affichage
Controls how the element is displayed in the ACF admin
display="table"Rend un fld-répéteur en layout tableau dans l'admin — grille de lignes compactes. Bon pour des champs courts (nom + prix + quantité).
display="block"Chaque ligne du répéteur est une carte-bloc séparée avec des champs empilés verticalement. Par défaut pour la plupart des types.
display="row"Les champs d'une ligne coulent horizontalement (flex) — pour des paires courtes « label + valeur » dans l'admin.
Attributs généraux
Affichage conditionnel
Conditional output by a WordPress function
wp-if="condition()"Alternative : wp_ifAffichage conditionnel du bloc selon une condition WordPress : la valeur est un appel de fonction (ou une expression) renvoyant true/false. Si c'est faux, le bloc n'apparaît pas du tout dans la page. On peut aussi indiquer simplement un nom de champ : wp-if="phone" n'affiche le bloc que si le champ phone est rempli (équivalent à get_field('phone')). Valeurs typiques dans les cartes d'exemple ci-dessous ; les expressions PHP arbitraires sont aussi admises.
has_post_thumbnail()Vérifie si l'article a une image à la une (miniature).is_user_logged_in()Vérifie si l'utilisateur est connecté.is_front_page()La page courante est la page d'accueil du site.is_single()La page courante est un article individuel.is_page()La page courante est une page statique.is_category()La page courante est une archive de catégorie.is_archive()La page courante est une archive quelconque (catégorie, étiquette, date, auteur).is_search()La page courante est une page de résultats de recherche.is_404()La page courante est 404 (non trouvée).Définir une 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 ;)Alternative : 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.
Expression PHP (wp-php)
An arbitrary PHP expression
wp-php="echo get_field(...)"Alternative : wp_phpExécute du code PHP arbitraire à la place de l'élément — le générateur enveloppe la valeur dans <?php ... ?>. Liberté maximale : variables, boucles, appels de fonctions. Pour simplement afficher une valeur, php-echo est plus pratique (echo implicite) ; pour l'affichage conditionnel — php-if / wp-if.
PHP echo
Print a PHP expression
php-echo="expression"Alternative : php_echoAffiche le résultat d'une expression PHP comme contenu de l'élément. Ne pas écrire le mot echo — il est implicite : php-echo="get_the_title()" affiche le titre de l'article courant. Pour des constructions courtes et sûres ; pour des blocs de code avec logique, utilisez wp-php.
Condition PHP
A PHP condition
php-if="condition"Alternative : php_ifRendu conditionnel : l'élément n'est affiché que si l'expression PHP de la valeur est vraie. P. ex. php-if="is_user_logged_in()" montre le bloc aux seuls visiteurs connectés. Toute expression booléenne convient ; parent de wp-if (orienté conditions WordPress prêtes à l'emploi).
PHP Injection (Positional)
php-before="php code"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : php_prependInserts PHP code at the START of the element's content — prepends the code output before the existing children.
php-append="php code"Alternative : 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)Alternative : wp_includeInsère à cet endroit un autre fichier PHP du thème (include classique ; nom sans extension — .php est ajouté automatiquement). Différence clé avec wp-part : le générateur ne crée NI n'écrase le fichier de wp-include lors des mises à jour du thème — c'est votre propre partiel, écrit et maintenu à la main, il survit aux mises à jour. Astuce : placez d'abord wp-part pour que le générateur extraie une fois le balisage de l'élément dans un fichier, puis changez l'attribut en wp-include — le fichier cesse d'être écrasé et peut être retravaillé à la main.
wp-part="slug"Alternative : wp_partExtrait l'élément dans un fichier réutilisable séparé (template part WordPress) et l'inclut via get_template_part(). Différence clé avec wp-include : le fichier est généré depuis le balisage Webflow et est ÉCRASÉ à chaque mise à jour du thème — l'éditer à la main est inutile, modifiez l'élément source dans Webflow. Pratique comme cible de rafraîchissement AJAX. Combinaison : wp-part extrait le fichier une fois, puis on change l'attribut en wp-include — et on édite le fichier à la main sans écrasement.
wp-shortcode="[shortcode atr=val]"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : wp_sidebarZone de widgets (sidebar dynamique) : le contenu de l'élément est remplacé par les widgets que l'admin a placés dans cette zone (Apparence → Widgets). La valeur est le nom de la zone ; le thème l'enregistre automatiquement à la génération. Les widgets d'extensions vont aussi ici — p. ex. le filtre de catalogue Premmerce.
Articles
WordPress Core
Attributes that output standard WordPress fields
wp="post-title"Alternative : wp="post_title"Affiche le titre de l'article ou de la page courante — ce qui est saisi dans le champ « Titre » de l'admin WP. Respecte la locale Polylang/WPML active.
wp="post-content"Alternative : wp="post_content"Affiche le contenu principal de l'article via the_content() — avec blocs Gutenberg, shortcodes et intégrations oEmbed. Doit être dans la boucle.
wp="post-excerpt"Alternative : wp="post_excerpt"Extrait de l'article — un résumé court du champ Extrait ou auto-généré depuis le contenu. Idéal pour cartes d'archive et résumés de blog.
wp="post-date"Alternative : wp="post_date"Date de publication de l'article au format du thème. Format configurable via WP « Réglages → Général » ou le filtre get_the_date.
wp="post-image"Alternative : wp="post_image"Image mise en avant de l’article, sur un <img> : src vient de l’article, srcset et sizes sont retirés. Pour un fond, post-bg-image.
wp="post-link"Alternative : wp="post_link"Permalien de l’article courant, écrit dans href. Fonctionne sur n’importe quel élément, en général un <a>.
wp="post-author"Alternative : wp="post_author"Nom d'affichage de l'auteur. Par défaut, l'auteur est l'utilisateur qui a publié l'article.
wp="post-author-link"Alternative : wp="post_author_link"Lien vers la page d'archive de l'auteur — écrit dans href. Ouvre l'archive de l'auteur.
wp="post-tags"Alternative : wp="post_tags"Étiquettes de l'article courant, séparées par virgules. Chaque étiquette est un lien vers son archive.
wp="posts"Boucle WordPress standard (The Loop) — sur les pages d'archive, itère les articles automatiquement. Tout ce qui est à l'intérieur est répété pour chaque article. À utiliser UNIQUEMENT sur les modèles d'archive (blog / catégorie / archive de CPT / recherche) ; sur une page d'article unique, elle afficherait une liste d'articles indésirable.
wp="pagination"Numéros de page pour le blog, les archives et la recherche : WP-PageNavi si cette extension est active, sinon paginate_links() de WordPress. À placer sur un élément vide.
wp="home-url"Alternative : wp="home_link"URL de la page d'accueil du site — écrite dans href. Sur les versions localisées, pointe vers la racine de la locale courante.
wp="post-title-link"Alternative : wp="post_title_link"Titre de l'article enveloppé dans un lien vers l'article lui-même — les deux valeurs à la fois (texte + href). Un attribut remplace post-title + post-link.
wp="next-post-link"Alternative : wp="next_post_link"Lien vers l'article suivant dans l'archive — écrit dans href. Masqué sur le dernier article.
wp="prev-post-link"Alternative : wp="prev_post_link"Lien vers l'article précédent dans l'archive — écrit dans href. Masqué sur le premier article.
wp="post-bg-image"Alternative : wp="post_bg_image"Miniature de l'article comme image de fond du bloc — l'URL est écrite dans le style inline background-image.
wp="post-lbox-image"Alternative : wp="post_lbox_image"Miniature de l'article comme lien lightbox — <img> est enveloppé dans <a href> avec les attributs lightbox.
wp="site-name"Alternative : wp="site_name"Alias de bloginfo-name — nom du site depuis les réglages WP.
wp="site-desc"Alternative : wp="site_desc"Alias de bloginfo-description — slogan du site depuis les réglages WP.
wp="breadcrumbs"Fil d'Ariane via le plugin Breadcrumb NavXT — le chemin depuis la page d'accueil jusqu'à la page courante. Nécessite le plugin actif.
wp="no-results"Alternative : wp="no_results"Conteneur de l'état « aucun résultat » dans les archives et la recherche — le générateur ne l'affiche que si aucun résultat (piloté en JS).
wp="term-title"Alternative : 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"Alternative : wp="term_link"Permalink to the term's archive page — written into the href of an <a>. Multilang-aware.
wp="term-count"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : wp="product_price_sale"Sale (discounted) WooCommerce product price. Empty when the product has no active sale.
wp="product-prices"Alternative : 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"Alternative : wp="product_sku"WooCommerce product SKU. Hidden when the SKU field is not set on the product.
wp="product-gallery"Alternative : wp="product_gallery"WooCommerce product gallery container — supports swipe and zoom on the product page.
wp="product-cat-image"Alternative : 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"Alternative : wp="product_cat_bg_image"Product category image as a background-image
wp="product-qty"Alternative : wp="product_qty"WooCommerce product quantity input — usually <input type="number">. Pairs with product-qty-plus and product-qty-minus.
wp="product-qty-minus"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : wp="cart_total"Cart total as WooCommerce shows it in the cart. Updated without a page reload when the cart changes.
wp="cart-count"Alternative : wp="cart_count"WooCommerce cart item count — updated via AJAX. Used in the header for a badge on the cart icon.
wp="cart-empty"Alternative : 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"Alternative : wp="product_group_child"Ligne d'un produit enfant d'un produit groupé — se place sur la ligne répétée de la boucle des enfants (wp-product-query="get_grouped_children()"). Fournit l'identifiant du produit et le prix unitaire à partir desquels le total est calculé.
wp="product-group-qty"Alternative : wp="product_group_qty"Champ de quantité d'un produit enfant — devient un champ numérique démarrant à 0 («non commandé») et plafonné au stock restant lorsque le stock est suivi. C'est bien cet attribut qu'il faut ici et non wp="product-qty" : ce dernier appartient au formulaire du produit lui-même et ferait bouger toutes les lignes à la fois.
wp="product-group-qty-minus"Alternative : wp="product_group_qty_minus"Bouton « moins » d'un produit enfant — ne modifie que sa propre ligne.
wp="product-group-qty-plus"Alternative : wp="product_group_qty_plus"Bouton « plus » d'un produit enfant — ne modifie que sa propre ligne.
wp="product-group-totals"Alternative : wp="product_group_totals"Conteneur du total d'un produit groupé — contient le compteur, le montant et le bouton d'ajout au panier.
wp="product-group-count"Alternative : wp="product_group_count"Quantité totale sélectionnée parmi les produits enfants — recalculée dans le navigateur au fil de la saisie.
wp="product-group-price"Alternative : wp="product_group_price"Montant total de la sélection en cours — recalculé dans le navigateur au fil de la saisie.
wp="product-group-add"Alternative : wp="product_group_add"Ajoute toute la sélection au panier en une seule requête : chaque produit enfant dont la quantité est supérieure à zéro.
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"Alternative : wp="product_image"Additional product image — URL is injected into the img src. Distinct from product-gallery (the whole gallery).
wp="product-bg-image"Alternative : wp="product_bg_image"Product thumbnail as a background image — URL written into the inline background-image style.
wp="product-lbox-image"Alternative : wp="product_lbox_image"Product thumbnail as a lightbox link — <img> is wrapped in <a href> with lightbox attributes.
wp="product-image-gallery"Alternative : wp="product_image_gallery"Product gallery without automatic lightbox — use when the modal viewer is wired via a custom JS component.
wp="product-title"Alternative : wp="product_title"Product title outside the loop context. Inside single-product / loop product use wp="post-title" instead.
wp="product-height"Alternative : wp="product_height"Product height from the shipping settings in WC admin.
wp="product-width"Alternative : wp="product_width"Product width from the shipping settings in WC admin.
wp="product-length"Alternative : wp="product_length"Product length from the shipping settings in WC admin.
wp="product-weight"Alternative : wp="product_weight"Product weight from the shipping settings in WC admin.
wp="product-sale-percent"Alternative : wp="product_sale_percent"Discount percentage on the product — computed from regular/sale price. Useful for a -20% badge.
wp="product-attrs"Alternative : wp="product_attrs"Loop container over the product's attributes (inside: attr-name, attr-options)
wp="attr-name"Alternative : wp="attr_name"Product attribute name (inside a product-attrs or var-attrs loop)
wp="auto-attr-terms"Alternative : 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"Alternative : wp="attr_options"Product attribute values (inside a product-attrs loop)
wp="var-attrs"Alternative : wp="var_attrs"Conteneur qui répète son premier enfant une fois par attribut de VARIATION réellement présent sur le produit — un nouvel attribut (une nouvelle taille, un nouvel ingrédient) apparaît ainsi sur le site dès l'enregistrement du produit dans WordPress, sans modifier le design ni régénérer le thème. Dans le groupe répété, utilisez wp="attr-name" pour le libellé de l'attribut et wp-attr-terms="*" pour la liste de ses valeurs. Les attributs placés à la main sur le même modèle (wp-attr-terms="pa_x" ou wp-if-attr="pa_x") sont IGNORÉS : les blocs faits main sont souvent personnalisés, sinon l'attribut serait rendu deux fois. Les attributs hors taxonomie (« texte libre ») sont également ignorés : il n'y a rien à y choisir. À ne pas confondre avec wp="product-attrs" — celui-ci ÉNUMÈRE les attributs comme caractéristiques ; celui-là construit le SÉLECTEUR.
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"Alternative : 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"Alternative : wp="var_price"Current price of the selected variation. Updated via JS when the variation changes.
wp="var-price-regular"Alternative : wp="var_price_regular"Regular (struck-through) price of the selected variation.
wp="var-price-sale"Alternative : wp="var_price_sale"Sale price of the selected variation. Empty if no sale.
wp="var-image"Alternative : wp="var_image"Image of the selected variation — URL injected into src.
wp="var-lbox-image"Alternative : wp="var_lbox_image"Variation image in lightbox.
wp="var-bg-image"Alternative : wp="var_bg_image"Variation image as background-image on the current element.
wp="var-desc"Alternative : wp="var_desc"Description of the selected variation.
wp="var-sku"Alternative : wp="var_sku"SKU of the selected variation.
wp="var-stock"Alternative : wp="var_stock"Numeric stock count for the selected variation.
wp="var-stocked"Alternative : wp="var_stocked"«In stock» block for variation — shown when the selected variation is available.
wp="var-not-stocked"Alternative : wp="var_not_stocked"«Out of stock» block for variation.
wp="var-backorder"Alternative : wp="var_backorder"«Backorder» block for variation.
wp="var-id"Alternative : wp="var_id"Numeric ID of the selected variation.
wp="var-height"Alternative : wp="var_height"Variation height (shipping).
wp="var-width"Alternative : wp="var_width"Variation width (shipping).
wp="var-length"Alternative : wp="var_length"Variation length (shipping).
wp="var-weight"Alternative : wp="var_weight"Variation weight (shipping).
wp="cart-full"Alternative : 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"Alternative : 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"Alternative : wp="checkout_form"Full checkout form — contains billing-* fields and payment/shipping inside.
wp="checkout-full"Alternative : wp="checkout_full"Filled checkout form — shown when the cart has items.
wp="checkout-total"Alternative : wp="checkout_total"Final payable amount on the checkout page.
wp="order-total"Alternative : wp="order_total"Order total amount in the account details view.
wp="order-number"Alternative : wp="order_number"Order number (text identifier).
wp="order-comments"Alternative : wp="order_comments"Order comments field — textarea for additional notes from the customer.
wp="discount-total"Alternative : 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"Alternative : wp="shipping_radio"Radio button for one shipping option.
wp="shipping-cost"Alternative : wp="shipping_cost"Cost of the selected shipping option.
wp="shipping-countries"Alternative : wp="shipping_countries"List of countries where shipping is available.
wp="shiping-total"Alternative : 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"Alternative : wp="payment_desc"Description of the selected payment method — caption under the radio button.
wp="payment-radio"Alternative : wp="payment_radio"Radio button for one payment method.
wp="add-coupon"Alternative : wp="add_coupon"Coupon code input + apply button.
wp="show-coupon"Alternative : wp="show_coupon"«Use coupon» trigger button — usually expands the code input form.
wp="discount-amount"Alternative : wp="discount_amount"Total discount amount in the cart
wp="discount-percent"Alternative : wp="discount_percent"Total discount percentage in the cart
wp="coupon-discount"Alternative : wp="coupon_discount"Discount amount from applied coupons only
wp="used-coupons"Alternative : wp="used_coupons"Loop container over applied coupons (inside: coupon-code, coupon-amount, coupon-descr)
wp="coupon-code"Alternative : wp="coupon_code"Code of the applied coupon (inside a used-coupons loop)
wp="coupon-amount"Alternative : wp="coupon_amount"Discount amount of the coupon (inside a used-coupons loop)
wp="coupon-descr"Alternative : wp="coupon_descr"Coupon description (inside a used-coupons loop)
wp="billing-address"Alternative : wp="billing_address"Customer address (combined field — joins address_1 + address_2).
wp="billing-address-1"Alternative : wp="billing_address_1"Customer address — line 1 (street, building).
wp="billing-address-2"Alternative : wp="billing_address_2"Customer address — line 2 (apartment, suite).
wp="billing-city"Alternative : wp="billing_city"Customer city.
wp="billing-state"Alternative : wp="billing_state"Customer state / region.
wp="billing-postcode"Alternative : wp="billing_postcode"Postal code.
wp="billing-country"Alternative : wp="billing_country"Customer country (select with the WC countries list).
wp="billing-company"Alternative : wp="billing_company"Customer company name (for B2B orders).
wp="billing-first-name"Alternative : wp="billing_first_name"Customer first name.
wp="billing-last-name"Alternative : wp="billing_last_name"Customer last name.
wp="billing-email"Alternative : wp="billing_email"Customer email — for order confirmation.
wp="billing-phone"Alternative : wp="billing_phone"Customer phone.
wp="current-user"Alternative : wp="current_user"Display name of the currently authenticated WP user. Empty for guests.
wp="login-form"Alternative : wp="login_form"Standard WordPress login form (wp_login_form).
wp="login-wc"Alternative : wp="login_wc"WooCommerce login form — extended version for my-account.
wp="register-wc"Alternative : wp="register_wc"WooCommerce new-user registration form.
wp="recover-wc"Alternative : wp="recover_wc"WooCommerce password recovery form.
wp="update-user"Alternative : wp="update_user"User-data edit form in the account dashboard.
wp="update-billing"Alternative : wp="update_billing"Billing-address edit form in the account dashboard.
wp="update-password"Alternative : wp="update_password"Password-change form in the account dashboard.
wp="logout-link"Alternative : 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"Alternative : wp="customer_files"List of downloadable files for the customer (digital products).
wp="customer-file-link"Alternative : wp="customer_file_link"Download link for a specific customer file.
wp="term-title-link"Alternative : wp="term_title_link"Taxonomy term title with a link to its archive — text + href in one.
wp="term-desc"Alternative : wp="term_desc"Taxonomy term description — the «Description» field from the taxonomy admin.
wp="term-children"Alternative : 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"Alternative : wp="archive_title"Archive page title — category name, tag, author, date (depending on archive type).
wp="archive-title-link"Alternative : 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"Alternative : wp="reset_filter"Button to reset all applied filters.
wp="is-mobile"Alternative : wp="is_mobile"Block renders only on mobile devices (phones + tablets).
wp="is-phone"Alternative : wp="is_phone"Block renders only on phones (not tablets).
wp="is-tablet"Alternative : wp="is_tablet"Block renders only on tablets.
wp="is-desktop"Alternative : wp="is_desktop"Block renders only on desktops.
wp="is-not-phone"Alternative : wp="is_not_phone"Block renders on all devices except phones (tablets + desktop).
wp="is-ios"Alternative : wp="is_ios"Block renders only on iOS devices (iPhone, iPad).
wp="is-android"Alternative : wp="is_android"Block renders only on Android devices.
wp="is-featured"Alternative : wp="is_featured"Block renders only for «featured» WC products (is_featured flag).
wp="is-novelty"Alternative : wp="is_novelty"Block renders only for «new arrivals» — recently published products.
wp="post-views"Alternative : wp="post_views"Post view counter. Requires a compatible plugin (Post Views Counter, etc.).
wp="modified-date"Alternative : wp="modified_date"Date the post was last modified
wp="has-excerpt"Alternative : wp="has_excerpt"The block is shown only if the post has an excerpt
wp="post-comments"Alternative : wp="post_comments"Post comments container — wrapper block (differs from wp="comments" which calls comments_template()).
wp="comment-list"Alternative : wp="comment_list"Affiche la liste des commentaires avec VOTRE balisage au lieu du rendu WordPress par défaut. Le premier enfant portant des marques de commentaire devient le modèle d’un commentaire ; les fils de discussion, la pagination et la modération restent gérés par WordPress. La carte reçoit id="comment-<ID>" et la classe tf-comment-depth-N — stylez-la pour indenter les réponses, car une réponse n’a pas de conteneur propre.
wp="comment-author"Alternative : wp="comment_author"Nom de l’auteur du commentaire. À placer dans le modèle de commentaire.
wp="comment-avatar"Alternative : wp="comment_avatar"Avatar de l’auteur. Sur une <img>, le src est remplacé (les srcset/sizes statiques sont supprimés, sinon le navigateur les privilégierait) ; sur tout autre élément, il devient une image de fond.
wp="comment-date"Alternative : wp="comment_date"Date du commentaire. À placer dans le modèle de commentaire.
wp="comment-text"Alternative : wp="comment_text"Texte du commentaire. À placer dans le modèle de commentaire.
wp="comment-reply"Alternative : wp="comment_reply"Le lien « Répondre ». Conserve votre élément et vos classes, et reçoit la véritable adresse de réponse ainsi que les attributs de données attendus par le script de réponse intégré.
wp="comment-form"Alternative : wp="comment_form"Construit le formulaire de commentaire à partir de VOTRE balisage de champs. Le formulaire lui-même reste produit par WordPress — c’est là que vivent ses champs cachés, les hooks des extensions et le comportement de réponse — tandis que vos blocs marqués deviennent les champs, la zone de texte et le bouton. Un champ non marqué garde la valeur par défaut de WordPress.
wp="comment-input-author"Alternative : wp="comment_input_author"Le champ « Nom » du formulaire. Marquez le champ ou, mieux, son conteneur (libellé + champ + aide) : l’élément marqué entier devient le bloc de champ.
wp="comment-input-email"Alternative : wp="comment_input_email"Le champ « E-mail » du formulaire de commentaire.
wp="comment-input-url"Alternative : wp="comment_input_url"Le champ « Site web » du formulaire de commentaire.
wp="comment-input-text"Alternative : wp="comment_input_text"La zone de texte du commentaire.
wp="comment-submit"Alternative : wp="comment_submit"Le bouton d’envoi du formulaire. Votre balisage et vos classes sont conservés.
wp="review-list"Alternative : wp="review_list"Affiche les avis produit WooCommerce avec VOTRE balisage. Un avis est un commentaire assorti d'une note, donc les marques de commentaire fonctionnent telles quelles dans la carte d'avis. Tout ce qui se trouve dans le bloc est une SOURCE : le premier enfant portant des marques d'avis/commentaire devient le modèle d'un avis, et un bloc wp="review-form" à l'intérieur devient les champs du formulaire. Le bloc lui-même reste géré par WooCommerce : titre et nombre, pagination, l'avis "achat requis", validation et enregistrement.
wp="review-rating"Alternative : wp="review_rating"La note de l'avis. L'élément reçoit data-rating et la variable CSS --tf-rating, ce qui permet de dessiner une barre d'étoiles en CSS pur (width: calc(var(--tf-rating) / 5 * 100%)). Un élément VIDE reçoit le chiffre ; si vous avez placé votre propre balisage (vos étoiles), il n'est pas touché.
wp="review-verified"Alternative : wp="review_verified"Affiché uniquement sur un avis laissé par un acheteur vérifié. Votre balisage, vos classes.
wp="review-form"Alternative : wp="review_form"Le formulaire d'avis construit à partir de VOTRE balisage de champs. Placez-le dans wp="review-list" — c'est là que WooCommerce imprime le formulaire. Les champs utilisent les marques de commentaire (comment-input-author / -email / -text, comment-submit) plus review-input-rating.
wp="review-input-rating"Alternative : wp="review_input_rating"Le champ de note du formulaire (un <select>). S'il n'a pas d'options, 1-5 sont ajoutées. Il ne passe jamais par le tableau "fields" : WordPress ne l'imprime que pour les visiteurs déconnectés, et tout client connecté perdrait la note.
wp="post-categories"Alternative : 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"Alternative : 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"Alternative : wp="parent_title_link"Parent page title with link — for hierarchical pages.
wp="home-link"Alternative : wp="home_link"Alias of wp="home-url" — link to the site's home page.
wp="search-text"Alternative : 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"Alternative : 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).
Requête personnalisée
A custom WP_Query loop
wp-query="'post_type' => 'name', 'posts_per_page' => 10"Alternative : wp_queryTransforme l'élément en boucle d'articles (WP_Query) n'importe où dans le thème : à l'intérieur se trouve la carte d'UN article, répétée pour chaque résultat. Les paramètres s'écrivent comme des paires de tableau PHP, p. ex. wp-query="'post_type'=>'news', 'posts_per_page'=>6". Dans la boucle fonctionnent wp="post-title", wp="post-image", les liens et les champs fld-* de l'article.
Pagination & Queries
wp-paginate="parameters" / wp-paginate (no value)Alternative : 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"Alternative : 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"Alternative : 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 argsAlternative : 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"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : 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)"Alternative : 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"Alternative : 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.
Termes de taxonomie de l'article courant (wp-post-term)
Loop over the taxonomy terms of the current post
wp-post-term="product_cat" / "category" / "pa_color"Alternative : 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-formAlternative : wp_comment_formRenders the WordPress comment form for the current post via comment_form() — respects discussion settings and moderation rules.
wp-comment-listAlternative : wp_comment_listRenders the list of comments for the current post — threaded replies, author avatars, and dates per theme settings.
Taxonomies
Requête de termes de taxonomie (wp-term-query)
Loop over taxonomy terms (WP_Term_Query)
wp-term-query="product_cat" or wp-term-query="'taxonomy' => 'product_cat', 'parent' => 0"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : 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 (Boutique)
Panier WooCommerce (wp-cart)
Product fields in the WooCommerce cart loop
wp-cart="items"Alternative : 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"Alternative : wp_cart="mini"Mini cart (sidecart) — compact cart variant for the header or a dropdown block.
wp-cart="not_empty"Alternative : 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"Alternative : 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"Alternative : wp_cart="product_title"Product title in the cart row — same as the catalog product title.
wp-cart="product_link"Alternative : wp_cart="product_link"Product permalink in the cart row — written into the href of an <a>.
wp-cart="product_image"Alternative : wp_cart="product_image"Product image (src) in the cart row — thumbnail or a specifically assigned image.
wp-cart="product_bg_image"Alternative : wp_cart="product_bg_image"Product image as background-image on the cart row element.
wp-cart="product_price"Alternative : 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"Alternative : wp_cart="product_price_regular"Regular (struck-through) unit price of the product in cart.
wp-cart="product_price_sale"Alternative : wp_cart="product_price_sale"Sale unit price of the product in cart.
wp-cart="product_qty"Alternative : wp_cart="product_qty"Quantity input field for the cart item.
wp-cart="product_qty_minus"Alternative : wp_cart="product_qty_minus"Decrement-quantity (-) button for the cart item.
wp-cart="product_qty_plus"Alternative : wp_cart="product_qty_plus"Increment-quantity (+) button for the cart item.
wp-cart="product_remove"Alternative : wp_cart="product_remove"Remove-from-cart button (usually a cross in the row).
wp-cart="product_total"Alternative : wp_cart="product_total"Subtotal for the cart row (unit price × quantity).
wp-cart="product_excerpt"Alternative : wp_cart="product_excerpt"Short product description in the cart row
wp-cart="product_sale_percent"Alternative : wp_cart="product_sale_percent"Product discount percentage in the cart row
wp-cart="product_qty_text"Alternative : wp_cart="product_qty_text"Product quantity as text (no input field)
wp-cart="product_weight"Alternative : wp_cart="product_weight"Product weight in the cart row
wp-cart="product_height"Alternative : wp_cart="product_height"Product height in the cart row
wp-cart="product_width"Alternative : wp_cart="product_width"Product width in the cart row
wp-cart="product_length"Alternative : wp_cart="product_length"Product length in the cart row
wp-cart="subtotal"Alternative : wp_cart="subtotal"Cart subtotal (before discounts)
wp-cart="total"Alternative : wp_cart="total"Cart total (after discounts)
wp-cart="volume"Alternative : wp_cart="volume"Total volume of the products in the cart (m³)
wp-cart="mobile"Alternative : wp_cart="mobile"Mobile version of the cart (the same AJAX-updated mini cart)
wp-cart="cart_order"Alternative : wp_cart="cart_order"Container of the full cart order block (data-wc="full_cart")
wp-cart="remove_all"Alternative : wp_cart="remove_all"Button that empties the whole cart
wp-cart="remove_btn"Alternative : wp_cart="remove_btn"Button that removes the selected products
wp-cart="remove_item"Alternative : wp_cart="remove_item"Checkbox that selects one product for removal
wp-cart="remove_items"Alternative : wp_cart="remove_items"«Select all» checkbox for bulk removal
wp-cart="if_low_stock"Alternative : wp_cart="if_low_stock"Conditional block: shown if the product is low in stock
wp-cart="low_stock"Alternative : wp_cart="low_stock"The low-stock threshold of the product; works inside wp-cart="if_low_stock".
Attribut produit dans panier (wp-cart-attr)
A WooCommerce product attribute in the cart loop
wp-cart-attr="pa_size" / "pa_color"Alternative : 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).
Attribut conditionnel dans panier (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"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : wp_cart_if_termConditional block inside a cart row — renders its contents only if the line-item product has the given taxonomy term.
Termes d'attribut produit (wp-attr-terms)
Loop over the terms of a WooCommerce product attribute
wp-attr-terms="pa_size" / "pa_color" / "*"Alternative : 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.
Attribut produit conditionnel (wp-if-attr)
Conditional block: shown only if the product has the given attribute
wp-if-attr="pa_size"Alternative : 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"Alternative : 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.
Commande WooCommerce (wp-order)
Order fields on the order details page (My Account)
wp-order="items"Alternative : wp_order="items"Order items loop container — the generator expands a foreach over the order's line items (account dashboard).
wp-order="item_title"Alternative : wp_order="item_title"Product title in the order row.
wp-order="item_link"Alternative : wp_order="item_link"Product permalink in the order row.
wp-order="item_image"Alternative : wp_order="item_image"Product image (src) in the order row.
wp-order="item_bg_image"Alternative : wp_order="item_bg_image"Product image as background-image in the order row.
wp-order="item_price"Alternative : wp_order="item_price"Unit price of the product at the time the order was placed.
wp-order="item_qty"Alternative : wp_order="item_qty"Item quantity in the order.
wp-order="item_total"Alternative : wp_order="item_total"Subtotal for the order row (unit price × quantity).
wp-order="item_number"Alternative : 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"Alternative : wp_order="number"Order number — short text identifier.
wp-order="date"Alternative : wp_order="date"Order date in the theme's format.
wp-order="status"Alternative : wp_order="status"Order status (pending, processing, completed, etc.) — label translated via WC.
wp-order="total"Alternative : wp_order="total"Order total (items + shipping - discounts).
wp-order="delivery"Alternative : wp_order="delivery"Shipping method selected when the order was placed.
wp-order="payment"Alternative : wp_order="payment"Payment method selected when the order was placed.
Filters & Search
wp-filter-form="post_type"Alternative : 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"Alternative : 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"Alternative : 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"Alternative : wp_range_maxThe maximum-value input of a range filter — the upper bound, mirroring wp-range-min behaviour.
wp-checkbox-terms="taxonomy"Alternative : 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"Alternative : wp_radio_termsRenders a radio-button list of taxonomy terms for a filter — single-select variant of wp-checkbox-terms.
wp-select-terms="taxonomy"Alternative : wp_select_termsRenders a <select> dropdown of taxonomy terms for a filter — the option list is populated from the taxonomy at render time.
pm__skunom d'input — pas un attributConvention de NOM d'input pour la recherche par SKU dans un formulaire de filtre — ce n'est PAS un attribut HTML. Placez name="pm__sku" sur un <input> dans wp-filter-form et le générateur reliera le champ au filtrage par SKU.
Liste de souhaits
Liste de souhaits (Wishlist)
Tous les attributs de la wishlist au même endroit : conteneurs, boutons d'action, champs produit et directives de variation. Forme canonique en premier — les deux écritures alternatives sont acceptées.
Structure et compteur
wp="wish-list"Alternative : wp="wish_list"Conteneur de liste de souhaits (YITH Wishlist) — emballage autour du tableau de produits. Mets wp="wish-items" avec la boucle à l'intérieur.
wp="wish-items"Alternative : wp="wish_items"/ wp="wl_full"Boucle sur les produits de la liste de souhaits — répétée pour chaque produit sauvegardé. À l'intérieur, utilise wp-wl="..." pour les champs produit.
wp="wish-count"Alternative : wp="wish_count"/ wp="wl_count"Nombre de produits dans la liste de souhaits de l'utilisateur courant — se met à jour à chaque ajout/retrait.
Boutons d'action
wp="wish-add"Alternative : wp="wish_add"/ wp="add_to_wl"Bouton cœur « Ajouter à la liste de souhaits » — placé sur un produit ou dans une carte produit. Le clic bascule le produit via AJAX.
wp="wish-copy"Alternative : wp="wish_copy"/ wp_wl="copy"Bouton « Copier vers le panier » — ajoute le produit de la liste au panier tout en le gardant dans la liste.
wp="wish-move"Alternative : wp="wish_move"/ wp_wl="move"Bouton « Déplacer vers le panier » — ajoute au panier et retire de la liste en une action.
wp="wish-remove"Alternative : wp="wish_remove"/ wp_wl="remove"Bouton de suppression de la liste de souhaits — généralement une croix dans la ligne.
wp="wish-remove-all"Alternative : wp="wish_remove_all"Button that empties the whole wishlist
Champs produit (dans la boucle wishlist)
wp="wl-product-title"Alternative : wp_wl="product_title"Nom du produit dans une ligne de liste de souhaits — sortie via get_name().
wp="wl-product-link"Alternative : wp_wl="product_link"Permalien du produit — écrit dans le href d'un <a>.
wp="wl-product-image"Alternative : wp_wl="product_image"Miniature du produit — URL injectée dans le src d'un img.
wp="wl-product-bg-image"Alternative : wp_wl="product_bg_image"Miniature du produit comme image de fond — URL écrite dans le style inline background-image.
wp="wl-product-price"Alternative : wp_wl="product_price"Prix actuel du produit — s'il y a une remise, le prix soldé est affiché ; sinon le prix régulier.
wp="wl-product-price-regular"Alternative : 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"Alternative : wp_wl="product_price_sale"Sale wishlist product price. Name in the alternative format; alias of product_sale_price.
Directives de variation et taxonomie
wp-wish-attr="pa_size" or wp-wish-attr="pa_color"Alternative : wp_wish_attrAttribut produit WooCommerce dans la boucle wishlist — par exemple taille ou couleur. Le nom de l'attribut est pa_<slug> dans les réglages produit.
wp-wish-if-attr="pa_size"Alternative : wp_wish_if_attrBloc conditionnel : ne rendre que si le produit a l'attribut nommé. S'il manque — bloc masqué.
wp-wish-term="product_cat" or wp-wish-term="product_tag"Alternative : wp_wish_termTerme de taxonomie du produit dans la boucle wishlist — catégorie ou étiquette (product_cat, product_tag).
wp-wish-if-term="product_cat"Alternative : wp_wish_if_termConditional block: shown only if the product has a term of the taxonomy