{"id":38,"date":"2026-02-03T15:35:37","date_gmt":"2026-02-03T15:35:37","guid":{"rendered":"https:\/\/alys-portfolio.fr\/?page_id=38"},"modified":"2026-02-05T15:01:30","modified_gmt":"2026-02-05T15:01:30","slug":"projets-professionnels","status":"publish","type":"page","link":"https:\/\/alys-portfolio.fr\/index.php\/projets-professionnels\/","title":{"rendered":"Portfolio professionnel"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"38\" class=\"elementor elementor-38\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e4e26f8 e-con-full e-flex e-con e-parent\" data-id=\"e4e26f8\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d96c685 elementor-widget elementor-widget-heading\" data-id=\"d96c685\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Mes r\u00e9alisations professionnelles<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0a1cfd5 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"0a1cfd5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Filtres<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-83b5025 elementor-widget elementor-widget-html\" data-id=\"83b5025\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div id=\"wp-portfolio-filter\" class=\"pf\">\n\n  <!-- FILTRES -->\n  <div class=\"pf__groups\">\n\n    <!-- POLE -->\n    <fieldset class=\"pf__group\" data-filter-group=\"pole\">\n      <legend>P\u00f4le<\/legend>\n\n      <label class=\"pf__btn\">\n        <input type=\"radio\" name=\"pf-pole\" value=\"project-all\" checked>\n        <span>Tous<\/span>\n      <\/label>\n\n      <label class=\"pf__btn\">\n        <input type=\"radio\" name=\"pf-pole\" value=\"pole-communication\">\n        <span>Communication<\/span>\n      <\/label>\n\n      <label class=\"pf__btn\">\n        <input type=\"radio\" name=\"pf-pole\" value=\"pole-audiovisuel\">\n        <span>Audiovisuel<\/span>\n      <\/label>\n\n      <label class=\"pf__btn\">\n        <input type=\"radio\" name=\"pf-pole\" value=\"pole-creation-numerique\">\n        <span>Cr\u00e9ation num\u00e9rique<\/span>\n      <\/label>\n\n      <label class=\"pf__btn\">\n        <input type=\"radio\" name=\"pf-pole\" value=\"pole-developpement-web\">\n        <span>D\u00e9veloppement web<\/span>\n      <\/label>\n    <\/fieldset>\n\n    <!-- COMPETENCE -->\n\n\n  <!-- Compteur -->\n  <div class=\"pf__meta\">\n    <span class=\"pf__count\">0<\/span> projet(s) affich\u00e9(s)\n    <span class=\"pf__empty\" aria-live=\"polite\">Aucun projet ne correspond \u00e0 ces filtres.<\/span>\n  <\/div>\n\n<\/div>\n\n<style>\n  \/* ---- Scope: #wp-portfolio-filter ---- *\/\n  #wp-portfolio-filter.pf {\n    display: grid;\n    gap: 14px;\n    margin-bottom: 18px;\n  }\n\n  #wp-portfolio-filter .pf__groups{\n    display: grid;\n    gap: 14px;\n  }\n\n  #wp-portfolio-filter .pf__group{\n    border: 0;\n    padding: 0;\n    margin: 0;\n    display: flex;\n    flex-wrap: wrap;\n    gap: 10px;\n    align-items: center;\n  }\n\n  #wp-portfolio-filter legend{\n    font-weight: 600;\n    margin-right: 10px;\n    padding: 0;\n    color: inherit;\n  }\n\n  \/* Radios hidden, label devient bouton *\/\n  #wp-portfolio-filter .pf__btn input{\n    position: absolute;\n    opacity: 0;\n    pointer-events: none;\n  }\n\n  #wp-portfolio-filter .pf__btn{\n    position: relative;\n    cursor: pointer;\n    user-select: none;\n  }\n\n  #wp-portfolio-filter .pf__btn span{\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    padding: 10px 14px;\n    border-radius: 999px;\n    border: 1px solid rgba(0,0,0,.12);\n    background: rgba(255,255,255,.7);\n    transition: transform .12s ease, background .12s ease, border-color .12s ease;\n    line-height: 1;\n    font-size: 14px;\n    gap: 8px;\n  }\n\n  #wp-portfolio-filter .pf__btn:hover span{\n    transform: translateY(-1px);\n    border-color: rgba(0,0,0,.25);\n  }\n\n  #wp-portfolio-filter .pf__btn input:checked + span{\n    background: rgba(0,0,0,.08);\n    border-color: rgba(0,0,0,.35);\n  }\n\n  #wp-portfolio-filter .pf__meta{\n    display: flex;\n    gap: 10px;\n    align-items: center;\n    flex-wrap: wrap;\n    font-size: 14px;\n    opacity: .9;\n  }\n\n  #wp-portfolio-filter .pf__empty{\n    display: none;\n    padding: 6px 10px;\n    border-radius: 10px;\n    background: rgba(0,0,0,.06);\n  }\n\n  \/* Optionnel: petite anim de disparition sur les projets *\/\n  .project-item{\n    transition: opacity .18s ease, transform .18s ease;\n  }\n  .project-item.is-hidden{\n    opacity: 0;\n    transform: scale(.98);\n    pointer-events: none;\n  }\n<\/style>\n\n<script>\n(function(){\n  function ready(fn){\n    if(document.readyState !== 'loading') fn();\n    else document.addEventListener('DOMContentLoaded', fn);\n  }\n\n  ready(function(){\n    const root = document.getElementById('wp-portfolio-filter');\n    if(!root) return;\n\n    \/\/ IMPORTANT: adapte ce s\u00e9lecteur si ta grille n'a pas \"projects-grid\"\n    const grid = document.querySelector('.projects-grid');\n    if(!grid) {\n      console.warn('[Portfolio Filter] .projects-grid introuvable. Ajoute cette classe \u00e0 ton conteneur de projets.');\n      return;\n    }\n\n    const items = Array.from(grid.querySelectorAll('.project-item'));\n    const countEl = root.querySelector('.pf__count');\n    const emptyEl = root.querySelector('.pf__empty');\n\n    function getSelectedValue(groupName){\n      const checked = root.querySelector(`input[name=\"${groupName}\"]:checked`);\n      return checked ? checked.value : 'project-all';\n    }\n\n    function matchesFilters(el, poleVal, compVal, typeVal){\n      const c = el.classList;\n\n      const poleOK = (poleVal === 'project-all') ? true : c.contains(poleVal);\n      const compOK = (compVal === 'project-all') ? true : c.contains(compVal);\n      const typeOK = (typeVal === 'project-all') ? true : c.contains(typeVal);\n\n      return poleOK && compOK && typeOK;\n    }\n\n    function applyFilters(){\n      const poleVal = getSelectedValue('pf-pole');\n      const compVal = getSelectedValue('pf-comp');\n      const typeVal = getSelectedValue('pf-type');\n\n      let visible = 0;\n\n      items.forEach(el => {\n        const ok = matchesFilters(el, poleVal, compVal, typeVal);\n\n        if(ok){\n          el.classList.remove('is-hidden');\n          el.style.display = '';\n          visible++;\n        } else {\n          el.classList.add('is-hidden');\n          \/\/ Laisse une micro-transition puis retire de la grille\n          setTimeout(() => { el.style.display = 'none'; }, 180);\n        }\n      });\n\n      if(countEl) countEl.textContent = String(visible);\n      if(emptyEl) emptyEl.style.display = (visible === 0) ? 'inline-flex' : 'none';\n    }\n\n    \/\/ \u00e9coute sur tous les radios du filtre\n    root.addEventListener('change', function(e){\n      if(e.target && e.target.matches('input[type=\"radio\"]')) applyFilters();\n    });\n\n    \/\/ init\n    applyFilters();\n  });\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-5b3211d e-flex e-con-boxed e-con e-parent\" data-id=\"5b3211d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-c41401a e-con-full projects-grid e-grid e-con e-child\" data-id=\"c41401a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a7c07df elementor-widget-mobile__width-initial project-item pole-communication pole-audiovisuel project-image-round elementor-widget__width-initial elementor-widget elementor-widget-image\" data-id=\"a7c07df\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/alys-portfolio.fr\/index.php\/ben-burger\">\n\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"545\" height=\"903\" src=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/images2-01.png\" class=\"elementor-animation-pulse-grow attachment-large size-large wp-image-329\" alt=\"\" srcset=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/images2-01.png 545w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/images2-01-181x300.png 181w\" sizes=\"(max-width: 545px) 100vw, 545px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-afe83ff elementor-widget-mobile__width-initial project-item pole-audiovisuel project-image-round elementor-widget__width-initial elementor-widget elementor-widget-image\" data-id=\"afe83ff\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/alys-portfolio.fr\/index.php\/film-evenement\">\n\t\t\t\t\t\t\t<img decoding=\"async\" width=\"545\" height=\"903\" src=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/image-01-2.png\" class=\"elementor-animation-pulse-grow attachment-large size-large wp-image-320\" alt=\"\" srcset=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/image-01-2.png 545w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/image-01-2-181x300.png 181w\" sizes=\"(max-width: 545px) 100vw, 545px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ec47939 elementor-widget-mobile__width-initial elementor-hidden-mobile project-item pole-communication pole-audiovisuel project-image-round elementor-widget__width-initial elementor-widget elementor-widget-image\" data-id=\"ec47939\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/alys-portfolio.fr\/index.php\/su-and-shi\/\">\n\t\t\t\t\t\t\t<img decoding=\"async\" width=\"586\" height=\"1024\" src=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/Capture-decran-.-2026-02-04-a-11.14.43-586x1024.png\" class=\"elementor-animation-pulse-grow attachment-large size-large wp-image-313\" alt=\"\" srcset=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/Capture-decran-.-2026-02-04-a-11.14.43-586x1024.png 586w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/Capture-decran-.-2026-02-04-a-11.14.43-172x300.png 172w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/Capture-decran-.-2026-02-04-a-11.14.43-768x1342.png 768w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/Capture-decran-.-2026-02-04-a-11.14.43-879x1536.png 879w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/Capture-decran-.-2026-02-04-a-11.14.43-1172x2048.png 1172w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/Capture-decran-.-2026-02-04-a-11.14.43.png 1179w\" sizes=\"(max-width: 586px) 100vw, 586px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-25e2d4d elementor-widget-mobile__width-initial project-item pole-audiovisuel project-image-round elementor-widget__width-initial elementor-widget elementor-widget-image\" data-id=\"25e2d4d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/alys-portfolio.fr\/index.php\/ski-nautique\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"544\" height=\"885\" src=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/images2-02.png\" class=\"elementor-animation-pulse-grow attachment-large size-large wp-image-330\" alt=\"\" srcset=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/images2-02.png 544w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/images2-02-184x300.png 184w\" sizes=\"(max-width: 544px) 100vw, 544px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8838f90 elementor-widget-mobile__width-initial project-item pole-creation-numerique pole-audiovisuel project-image-round elementor-widget__width-initial elementor-widget elementor-widget-image\" data-id=\"8838f90\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/alys-portfolio.fr\/index.php\/car-basket\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"534\" src=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/IMG_0174-1024x683.jpg\" class=\"elementor-animation-pulse-grow attachment-large size-large wp-image-311\" alt=\"\" srcset=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/IMG_0174-1024x683.jpg 1024w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/IMG_0174-300x200.jpg 300w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/IMG_0174-768x512.jpg 768w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/IMG_0174-1536x1024.jpg 1536w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/IMG_0174-2048x1365.jpg 2048w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-15c552a elementor-widget-mobile__width-initial elementor-hidden-mobile project-item pole-creation-numerique pole-audiovisuel project-image-round elementor-widget__width-initial elementor-widget elementor-widget-image\" data-id=\"15c552a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/alys-portfolio.fr\/index.php\/natif-festival\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"1024\" src=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/IMG_5150-768x1024.jpg\" class=\"elementor-animation-pulse-grow attachment-large size-large wp-image-312\" alt=\"\" srcset=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/IMG_5150-768x1024.jpg 768w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/IMG_5150-225x300.jpg 225w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/IMG_5150-1152x1536.jpg 1152w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/IMG_5150-1536x2048.jpg 1536w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/IMG_5150-scaled.jpg 1920w\" sizes=\"(max-width: 768px) 100vw, 768px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-014c01c elementor-widget-mobile__width-initial project-item pole-creation-numerique pole-audiovisuel project-image-round elementor-widget__width-initial elementor-widget elementor-widget-image\" data-id=\"014c01c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/alys-portfolio.fr\/index.php\/book-photo\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"545\" height=\"911\" src=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/images2-03.png\" class=\"elementor-animation-pulse-grow attachment-large size-large wp-image-331\" alt=\"\" srcset=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/images2-03.png 545w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/images2-03-179x300.png 179w\" sizes=\"(max-width: 545px) 100vw, 545px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ee74f8b elementor-widget-mobile__width-initial project-item pole-creation-numerique project-image-round elementor-widget__width-initial elementor-widget elementor-widget-image\" data-id=\"ee74f8b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/alys-portfolio.fr\/index.php\/wise-waste-consulting\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"534\" src=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/logo-wise-waste-1024x683.png\" class=\"elementor-animation-pulse-grow attachment-large size-large wp-image-1017\" alt=\"\" srcset=\"https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/logo-wise-waste-1024x683.png 1024w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/logo-wise-waste-300x200.png 300w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/logo-wise-waste-768x512.png 768w, https:\/\/alys-portfolio.fr\/wp-content\/uploads\/2026\/02\/logo-wise-waste.png 1536w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Mes r\u00e9alisations professionnelles Filtres P\u00f4le Tous Communication Audiovisuel Cr\u00e9ation num\u00e9rique D\u00e9veloppement web 0 projet(s) affich\u00e9(s) Aucun projet ne correspond \u00e0 ces filtres.<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-38","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/alys-portfolio.fr\/index.php\/wp-json\/wp\/v2\/pages\/38","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/alys-portfolio.fr\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/alys-portfolio.fr\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/alys-portfolio.fr\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/alys-portfolio.fr\/index.php\/wp-json\/wp\/v2\/comments?post=38"}],"version-history":[{"count":179,"href":"https:\/\/alys-portfolio.fr\/index.php\/wp-json\/wp\/v2\/pages\/38\/revisions"}],"predecessor-version":[{"id":1201,"href":"https:\/\/alys-portfolio.fr\/index.php\/wp-json\/wp\/v2\/pages\/38\/revisions\/1201"}],"wp:attachment":[{"href":"https:\/\/alys-portfolio.fr\/index.php\/wp-json\/wp\/v2\/media?parent=38"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}