function jbn_img_from_url ($url, $size = 'jbn_half', array $extra = []) {
    if (empty($url)) return '';
    static $cache = [];
    if (!isset($cache[$url])) {
        $id = attachment_url_to_postid($url);
        if (!$id) {
            $stripped = preg_replace('/\.webp$/i', '', $url);
            if ($stripped !== $url) $id = attachment_url_to_postid($stripped);
        }
        $cache[$url] = $id;
    }
    $id = $cache[$url];
    $extra = array_merge(['loading' => 'lazy', 'decoding' => 'async'], $extra);
    if ($id) {
        $tag = wp_get_attachment_image($id, $size, false, $extra);
        if ($tag) return $tag;
    }
    // Fallback — plain <img>
    $attr_html = '';
    foreach ($extra as $k => $v) $attr_html .= ' ' . esc_attr($k) . '="' . esc_attr($v) . '"';
    return '<img src="' . esc_url($url) . '"' . $attr_html . '>';
}
{"id":92596,"date":"2022-10-03T05:36:04","date_gmt":"2022-10-03T04:36:04","guid":{"rendered":"https:\/\/www.testing.devjibble.net\/construction-timesheet-template"},"modified":"2026-04-01T13:13:50","modified_gmt":"2026-04-01T12:13:50","slug":"modeles-de-feuilles-de-temps-pour-la-construction","status":"publish","type":"page","link":"https:\/\/www.testing.devjibble.net\/fr\/modeles-de-feuilles-de-temps-pour-la-construction","title":{"rendered":"Construction Timesheet Template"},"content":{"rendered":"","protected":false},"excerpt":{"rendered":"","protected":false},"author":34,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"template-list-downloads.php","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-92596","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.8 (Yoast SEO v26.8) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Mod\u00e8les de feuilles de temps pour la construction<\/title>\n<meta name=\"description\" content=\"Feuilles de temps quotidiennes, hebdomadaires et mensuelles pour la construction dans Google Docs, Google Sheets, Word, Excel ou PDF.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.testing.devjibble.net\/fr\/modeles-de-feuilles-de-temps-pour-la-construction\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Mod\u00e8les de feuilles de temps pour la construction\" \/>\n<meta property=\"og:description\" content=\"Feuilles de temps quotidiennes, hebdomadaires et mensuelles pour la construction dans Google Docs, Google Sheets, Word, Excel ou PDF.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.testing.devjibble.net\/fr\/modeles-de-feuilles-de-temps-pour-la-construction\" \/>\n<meta property=\"og:site_name\" content=\"Jibble\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-01T12:13:50+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data1\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.testing.devjibble.net\/fr\/modeles-de-feuilles-de-temps-pour-la-construction\",\"url\":\"https:\/\/www.testing.devjibble.net\/fr\/modeles-de-feuilles-de-temps-pour-la-construction\",\"name\":\"Mod\u00e8les de feuilles de temps pour la construction\",\"isPartOf\":{\"@id\":\"https:\/\/www.testing.devjibble.net\/fr#website\"},\"datePublished\":\"2022-10-03T04:36:04+00:00\",\"dateModified\":\"2026-04-01T12:13:50+00:00\",\"description\":\"Feuilles de temps quotidiennes, hebdomadaires et mensuelles pour la construction dans Google Docs, Google Sheets, Word, Excel ou PDF.\",\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.testing.devjibble.net\/fr\/modeles-de-feuilles-de-temps-pour-la-construction\"]}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.testing.devjibble.net\/fr#website\",\"url\":\"https:\/\/www.testing.devjibble.net\/fr\",\"name\":\"Jibble\",\"description\":\"Meet the new standard in time tracking software\",\"publisher\":{\"@id\":\"https:\/\/www.testing.devjibble.net\/fr#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.testing.devjibble.net\/fr?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.testing.devjibble.net\/fr#organization\",\"name\":\"Jibble\",\"url\":\"https:\/\/www.testing.devjibble.net\/fr\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/www.testing.devjibble.net\/fr#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.testing.devjibble.net\/wp-content\/uploads\/2022\/05\/Original-copy-923x1024.png\",\"contentUrl\":\"https:\/\/www.testing.devjibble.net\/wp-content\/uploads\/2022\/05\/Original-copy-923x1024.png\",\"width\":\"923\",\"height\":\"1024\",\"caption\":\"Jibble\"},\"image\":{\"@id\":\"https:\/\/www.testing.devjibble.net\/fr#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.linkedin.com\/company\/jibble\/\"]}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Mod\u00e8les de feuilles de temps pour la construction","description":"Feuilles de temps quotidiennes, hebdomadaires et mensuelles pour la construction dans Google Docs, Google Sheets, Word, Excel ou PDF.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.testing.devjibble.net\/fr\/modeles-de-feuilles-de-temps-pour-la-construction","og_locale":"fr_FR","og_type":"article","og_title":"Mod\u00e8les de feuilles de temps pour la construction","og_description":"Feuilles de temps quotidiennes, hebdomadaires et mensuelles pour la construction dans Google Docs, Google Sheets, Word, Excel ou PDF.","og_url":"https:\/\/www.testing.devjibble.net\/fr\/modeles-de-feuilles-de-temps-pour-la-construction","og_site_name":"Jibble","article_modified_time":"2026-04-01T12:13:50+00:00","twitter_card":"summary_large_image","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.testing.devjibble.net\/fr\/modeles-de-feuilles-de-temps-pour-la-construction","url":"https:\/\/www.testing.devjibble.net\/fr\/modeles-de-feuilles-de-temps-pour-la-construction","name":"Mod\u00e8les de feuilles de temps pour la construction","isPartOf":{"@id":"https:\/\/www.testing.devjibble.net\/fr#website"},"datePublished":"2022-10-03T04:36:04+00:00","dateModified":"2026-04-01T12:13:50+00:00","description":"Feuilles de temps quotidiennes, hebdomadaires et mensuelles pour la construction dans Google Docs, Google Sheets, Word, Excel ou PDF.","inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.testing.devjibble.net\/fr\/modeles-de-feuilles-de-temps-pour-la-construction"]}]},{"@type":"WebSite","@id":"https:\/\/www.testing.devjibble.net\/fr#website","url":"https:\/\/www.testing.devjibble.net\/fr","name":"Jibble","description":"Meet the new standard in time tracking software","publisher":{"@id":"https:\/\/www.testing.devjibble.net\/fr#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.testing.devjibble.net\/fr?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Organization","@id":"https:\/\/www.testing.devjibble.net\/fr#organization","name":"Jibble","url":"https:\/\/www.testing.devjibble.net\/fr","logo":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.testing.devjibble.net\/fr#\/schema\/logo\/image\/","url":"https:\/\/www.testing.devjibble.net\/wp-content\/uploads\/2022\/05\/Original-copy-923x1024.png","contentUrl":"https:\/\/www.testing.devjibble.net\/wp-content\/uploads\/2022\/05\/Original-copy-923x1024.png","width":"923","height":"1024","caption":"Jibble"},"image":{"@id":"https:\/\/www.testing.devjibble.net\/fr#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.linkedin.com\/company\/jibble\/"]}]}},"_links":{"self":[{"href":"https:\/\/www.testing.devjibble.net\/fr\/wp-json\/wp\/v2\/pages\/92596","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.testing.devjibble.net\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.testing.devjibble.net\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.testing.devjibble.net\/fr\/wp-json\/wp\/v2\/users\/34"}],"replies":[{"embeddable":true,"href":"https:\/\/www.testing.devjibble.net\/fr\/wp-json\/wp\/v2\/comments?post=92596"}],"version-history":[{"count":3,"href":"https:\/\/www.testing.devjibble.net\/fr\/wp-json\/wp\/v2\/pages\/92596\/revisions"}],"predecessor-version":[{"id":392609,"href":"https:\/\/www.testing.devjibble.net\/fr\/wp-json\/wp\/v2\/pages\/92596\/revisions\/392609"}],"wp:attachment":[{"href":"https:\/\/www.testing.devjibble.net\/fr\/wp-json\/wp\/v2\/media?parent=92596"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}