{"id":1603,"date":"2026-01-13T15:32:21","date_gmt":"2026-01-13T14:32:21","guid":{"rendered":"https:\/\/nice.wordcamp.org\/2026\/?post_type=wcb_session&#038;p=1603"},"modified":"2026-03-28T12:26:27","modified_gmt":"2026-03-28T11:26:27","slug":"les-compositions-wordpress-au-dela-du-copier-coller","status":"publish","type":"wcb_session","link":"https:\/\/nice.wordcamp.org\/2026\/session\/les-compositions-wordpress-au-dela-du-copier-coller\/","title":{"rendered":"Les compositions WordPress au-del\u00e0 du copier-coller"},"content":{"rendered":"<div class=\"wp-block-wordcamp-session-speakers\"><span class=\"wp-block-wordcamp-session-speakers__byline\">Pr\u00e9sent\u00e9 par<\/span><span class=\"wp-block-wordcamp-session-speakers__name\"><a href=\"https:\/\/nice.wordcamp.org\/2026\/speaker\/thierry-pigot\/\">Thierry PIGOT<\/a><\/span><\/div>\n\n\n<p>On conna\u00eet tous les compositions : cr\u00e9er un groupe de blocs dans l&rsquo;\u00e9diteur, copier le markup, coller dans un fichier. Pratique, mais on reste en surface. C&rsquo;est un peu comme se contenter de tremper les pieds dans la M\u00e9diterran\u00e9e alors qu&rsquo;il y a tout un monde \u00e0 explorer en profondeur.<\/p>\n\n\n\n<p>Dans cette conf\u00e9rence, on met les palmes et le tuba pour plonger dans les fonctionnalit\u00e9s m\u00e9connues qui font des compositions un v\u00e9ritable outil de d\u00e9veloppement professionnel, pas juste des blocs r\u00e9utilisables.<\/p>\n\n\n\n<p>Au programme :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Le PHP comme super-pouvoir \u2013 Pourquoi les compositions surpassent les template parts. Internationalisation native (enfin du texte traduisible dans vos layouts), assets dynamiques li\u00e9s au th\u00e8me, logique PHP avec boucles et conditions. On explorera aussi le contexte d&rsquo;ex\u00e9cution et ses limites \u2013 parce que oui, il y a quelques r\u00e9cifs \u00e0 \u00e9viter.<\/li>\n\n\n\n<li>Industrialiser sa pratique \u2013 Organiser son dossier \/patterns, exploiter tous les headers de fichiers (Keywords, Viewport Width, Block Types&#8230;), cr\u00e9er une biblioth\u00e8que r\u00e9utilisable entre projets. Contr\u00f4le programmatique : d\u00e9sactiver les patterns Core, enregistrement conditionnel. Bref, passer du bricolage artisanal \u00e0 la navigation au long cours.<\/li>\n\n\n\n<li>Curate l&rsquo;exp\u00e9rience d&rsquo;\u00e9dition \u2013 Utiliser le Block Locking API pour prot\u00e9ger vos designs des modifications hasardeuses. Les 3 niveaux de verrouillage, le mode contentOnly pour une \u00e9dition simplifi\u00e9e c\u00f4t\u00e9 client. Starter compositions pour un onboarding aussi fluide qu&rsquo;une balade sur la Prom&rsquo;.<\/li>\n<\/ul>\n\n\n\n<p>Vous repartirez avec une checklist concr\u00e8te et un repo GitHub contenant tous les exemples pr\u00e9sent\u00e9s. Id\u00e9al pour les d\u00e9veloppeurs de th\u00e8mes qui veulent professionnaliser leur workflow<\/p>\n","protected":false},"excerpt":{"rendered":"<p>On conna\u00eet tous les compositions : cr\u00e9er un groupe de blocs dans l&rsquo;\u00e9diteur, copier le markup, coller dans un fichier. Pratique, mais on reste en surface. C&rsquo;est un peu comme se contenter de tremper les pieds dans la M\u00e9diterran\u00e9e alors qu&rsquo;il y a tout un monde \u00e0 explorer en profondeur. Dans cette conf\u00e9rence, on met [&hellip;]<\/p>\n","protected":false},"author":7445838,"featured_media":0,"template":"","meta":{"jetpack_post_was_ever_published":false,"_wcpt_session_time":1772813700,"_wcpt_session_duration":3000,"_wcpt_session_type":"session","_wcpt_session_slides":"https:\/\/nice.wordcamp.org\/2026\/files\/2026\/03\/thierry-pigot-2026.pdf","_wcpt_session_video":"","_wcpt_speaker_id":[1602],"footnotes":""},"session_track":[39],"session_category":[52,46],"class_list":["post-1603","wcb_session","type-wcb_session","status-publish","hentry","wcb_track-massena","wcb_session_category-gutenberg","wcb_session_category-tech"],"jetpack_sharing_enabled":true,"session_date_time":{"date":"6 mars 2026","time":"17h15"},"session_speakers":[{"id":"1602","slug":"thierry-pigot","name":"Thierry PIGOT","link":"https:\/\/nice.wordcamp.org\/2026\/speaker\/thierry-pigot\/"}],"session_cats_rendered":"Gutenberg, Tech","_links":{"self":[{"href":"https:\/\/nice.wordcamp.org\/2026\/wp-json\/wp\/v2\/sessions\/1603","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nice.wordcamp.org\/2026\/wp-json\/wp\/v2\/sessions"}],"about":[{"href":"https:\/\/nice.wordcamp.org\/2026\/wp-json\/wp\/v2\/types\/wcb_session"}],"version-history":[{"count":3,"href":"https:\/\/nice.wordcamp.org\/2026\/wp-json\/wp\/v2\/sessions\/1603\/revisions"}],"predecessor-version":[{"id":2391,"href":"https:\/\/nice.wordcamp.org\/2026\/wp-json\/wp\/v2\/sessions\/1603\/revisions\/2391"}],"speakers":[{"embeddable":true,"href":"https:\/\/nice.wordcamp.org\/2026\/wp-json\/wp\/v2\/speakers\/1602"}],"author":[{"embeddable":true,"href":"https:\/\/nice.wordcamp.org\/2026\/wp-json\/wporg\/v1\/users\/thierrypigot"}],"wp:attachment":[{"href":"https:\/\/nice.wordcamp.org\/2026\/wp-json\/wp\/v2\/media?parent=1603"}],"wp:term":[{"taxonomy":"wcb_track","embeddable":true,"href":"https:\/\/nice.wordcamp.org\/2026\/wp-json\/wp\/v2\/session_track?post=1603"},{"taxonomy":"wcb_session_category","embeddable":true,"href":"https:\/\/nice.wordcamp.org\/2026\/wp-json\/wp\/v2\/session_category?post=1603"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}