<?php /** * Twenty Twenty-Five functions and definitions. * MODIFIÉ — IAProfit System — optimisé performance + tracking * * @package WordPress * @subpackage Twenty_Twenty_Five * @since Twenty Twenty-Five 1.0 */ // Adds theme support for post formats. if ( ! function_exists( 'twentytwentyfive_post_format_setup' ) ) : function twentytwentyfive_post_format_setup() { add_theme_support( 'post-formats', array( 'aside', 'audio', 'chat', 'gallery', 'image', 'link', 'quote', 'status', 'video' ) ); } endif; // CJ shop ob_start - top level, before any hooks if(!is_admin()&&strpos($_SERVER['REQUEST_URI']??'','/shop')!==false){ ob_start(function($out){ $c=base64_decode('PGRpdiBjbGFzcz0iY2FyZCBjYXJkLWhvdCI+PGRpdiBjbGFzcz0iY2FyZC1jYXQiPlN0dWRpbyBNb2JpbGU8L2Rpdj48aW1nIHNyYz0iaHR0cHM6Ly92aWEucGxhY2Vob2xkZXIuY29tLzQwMHgzMDAvMGEwYTJlLzAwZDRmZj90ZXh0PUdpbWJhbCtBSSIgYWx0PSJHaW1iYWwgQUkgMzYwIFNtYXJ0VHJhY2sgUHJvIiAvPjxkaXYgY2xhc3M9ImNhcmQtdGl0bGUiPiYjMTI5MzAyOyBHaW1iYWwgQUkgMzYwJmRlZzsgU21hcnRUcmFjayBQcm88L2Rpdj48ZGl2IGNsYXNzPSJjYXJkLWRlc2MiPlN1aXZpIGF1dG9tYXRpcXVlIElBLCByb3RhdGlvbiAzNjAmZGVnOywgY29tcGF0aWJsZSB0b3VzIHNtYXJ0cGhvbmVzLjwvZGl2PjxkaXYgY2xhc3M9ImNhcmQtcHJpY2UiPjQ5JmV1cm87PC9kaXY+PGEgaHJlZj0iIyIgY2xhc3M9ImJ0biI+Vm9pciBsZSBwcm9kdWl0PC9hPjwvZGl2PjxkaXYgY2xhc3M9ImNhcmQiPjxkaXYgY2xhc3M9ImNhcmQtY2F0Ij5BdWRpbyBQcm88L2Rpdj48aW1nIHNyYz0iaHR0cHM6Ly92aWEucGxhY2Vob2xkZXIuY29tLzQwMHgzMDAvMGEwYTJlLzAwZDRmZj90ZXh0PU1pY3JvK0NyYXZhdGUiIGFsdD0iTWljcm8gQ3JhdmF0ZSBQcm8iIC8+PGRpdiBjbGFzcz0iY2FyZC10aXRsZSI+JiMxMjc4OTc7IE1pY3JvIENyYXZhdGUgUHJvICZtZGFzaDsgU3R1ZGlvIE5vbWFkZTwvZGl2PjxkaXYgY2xhc3M9ImNhcmQtZGVzYyI+TWljcm8gbGF2YWxpZXIgc2FucyBmaWwsIHImZWFjdXRlO2R1Y3Rpb24gYnJ1aXQgSUEsIHBvcnQmZWFjdXRlO2UgMzBtLjwvZGl2PjxkaXYgY2xhc3M9ImNhcmQtcHJpY2UiPjI0JmV1cm87PC9kaXY+PGEgaHJlZj0iIyIgY2xhc3M9ImJ0biI+Vm9pciBsZSBwcm9kdWl0PC9hPjwvZGl2PjxkaXYgY2xhc3M9ImNhcmQiPjxkaXYgY2xhc3M9ImNhcmQtY2F0Ij4mRWFjdXRlO2NsYWlyYWdlPC9kaXY+PGltZyBzcmM9Imh0dHBzOi8vdmlhLnBsYWNlaG9sZGVyLmNvbS80MDB4MzAwLzBhMGEyZS8wMGQ0ZmY/dGV4dD1MdW1pUG9ja2V0K1BybyIgYWx0PSJMdW1pUG9ja2V0IFBybyIgLz48ZGl2IGNsYXNzPSJjYXJkLXRpdGxlIj4mIzEwMDI0OyBMdW1pUG9ja2V0IFBybyAmbWRhc2g7IEx1bWkmZWdyYXZlO3JlIExFRDwvZGl2PjxkaXYgY2xhc3M9ImNhcmQtZGVzYyI+QW5uZWF1IExFRCBwb3J0YWJsZSAzIHRlbXAmZWFjdXRlO3JhdHVyZXMsIGZpeGF0aW9uIHVuaXZlcnNlbGxlLjwvZGl2PjxkaXYgY2xhc3M9ImNhcmQtcHJpY2UiPjI3JmV1cm87PC9kaXY+PGEgaHJlZj0iIyIgY2xhc3M9ImJ0biI+Vm9pciBsZSBwcm9kdWl0PC9hPjwvZGl2PjxkaXYgY2xhc3M9ImNhcmQgY2FyZC1ob3QiPjxkaXYgY2xhc3M9ImNhcmQtY2F0Ij5UZWNoIE5vbWFkZTwvZGl2PjxpbWcgc3JjPSJodHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNDAweDMwMC8wYTBhMmUvMDBkNGZmP3RleHQ9Q2hhcmdlRm9sZCtQcm8iIGFsdD0iQ2hhcmdlRm9sZCBQcm8gMy1lbi0xIiAvPjxkaXYgY2xhc3M9ImNhcmQtdGl0bGUiPiYjOTg4OTsgQ2hhcmdlRm9sZCBQcm8gMy1lbi0xPC9kaXY+PGRpdiBjbGFzcz0iY2FyZC1kZXNjIj5DaGFyZ2V1ciBwbGlhYmxlIEdhTiA2NVcsIDMgcG9ydHMgVVNCLUMvQSwgY29tcGF0aWJsZSBNYWNCb29rLCBpUGhvbmUgZXQgQW5kcm9pZC48L2Rpdj48ZGl2IGNsYXNzPSJjYXJkLXByaWNlIj4zMyZldXJvOzwvZGl2PjxhIGhyZWY9IiMiIGNsYXNzPSJidG4iPlZvaXIgbGUgcHJvZHVpdDwvYT48L2Rpdj4='); return str_replace('',$c.'',$out); }); } add_action( 'after_setup_theme', 'twentytwentyfive_post_format_setup' ); // Enqueues editor-style.css in the editors. if ( ! function_exists( 'twentytwentyfive_editor_style' ) ) : function twentytwentyfive_editor_style() { add_editor_style( 'assets/css/editor-style.css' ); } endif; add_action( 'after_setup_theme', 'twentytwentyfive_editor_style' ); // Enqueues the theme stylesheet on the front. if ( ! function_exists( 'twentytwentyfive_enqueue_styles' ) ) : function twentytwentyfive_enqueue_styles() { $suffix = SCRIPT_DEBUG ? '' : '.min'; $src = 'style' . $suffix . '.css'; wp_enqueue_style( 'twentytwentyfive-style', get_parent_theme_file_uri( $src ), array(), wp_get_theme()->get( 'Version' ) ); wp_style_add_data( 'twentytwentyfive-style', 'path', get_parent_theme_file_path( $src ) ); } endif; add_action( 'wp_enqueue_scripts', 'twentytwentyfive_enqueue_styles' ); // Registers custom block styles. if ( ! function_exists( 'twentytwentyfive_block_styles' ) ) : function twentytwentyfive_block_styles() { register_block_style( 'core/list', array( 'name' => 'checkmark-list', 'label' => __( 'Checkmark', 'twentytwentyfive' ), 'inline_style' => ' ul.is-style-checkmark-list { list-style-type: "\2713"; } ul.is-style-checkmark-list li { padding-inline-start: 1ch; }', ) ); } endif; add_action( 'init', 'twentytwentyfive_block_styles' ); // Registers pattern categories. if ( ! function_exists( 'twentytwentyfive_pattern_categories' ) ) : function twentytwentyfive_pattern_categories() { register_block_pattern_category( 'twentytwentyfive_page', array( 'label' => __( 'Pages', 'twentytwentyfive' ), 'description' => __( 'A collection of full page layouts.', 'twentytwentyfive' ), ) ); register_block_pattern_category( 'twentytwentyfive_post-format', array( 'label' => __( 'Post formats', 'twentytwentyfive' ), 'description' => __( 'A collection of post format patterns.', 'twentytwentyfive' ), ) ); } endif; add_action( 'init', 'twentytwentyfive_pattern_categories' ); // Registers block binding sources. if ( ! function_exists( 'twentytwentyfive_register_block_bindings' ) ) : function twentytwentyfive_register_block_bindings() { register_block_bindings_source( 'twentytwentyfive/format', array( 'label' => _x( 'Post format name', 'Label for the block binding placeholder in the editor', 'twentytwentyfive' ), 'get_value_callback' => 'twentytwentyfive_format_binding', ) ); } endif; add_action( 'init', 'twentytwentyfive_register_block_bindings' ); // Registers block binding callback function for the post format name. if ( ! function_exists( 'twentytwentyfive_format_binding' ) ) : function twentytwentyfive_format_binding() { $post_format_slug = get_post_format(); if ( $post_format_slug && 'standard' !== $post_format_slug ) { return get_post_format_string( $post_format_slug ); } } endif; // ============================================================ // IAPROFIT — OPTIMISATION PERFORMANCE & TRACKING // ============================================================ /** * 1. DEFER / ASYNC automatique sur les scripts non-essentiels * Améliore le score PageSpeed / Core Web Vitals */ add_filter( 'script_loader_tag', 'iaprofitsystem_defer_scripts', 10, 3 ); function iaprofitsystem_defer_scripts( $tag, $handle, $src ) { // Scripts à exclure (critiques au rendu) $no_defer = array( 'jquery-core', 'jquery', 'wp-polyfill', ); if ( is_admin() ) { return $tag; } if ( in_array( $handle, $no_defer, true ) ) { return $tag; } // Ajoute defer à tous les autres scripts front-end if ( strpos( $tag, ' defer' ) === false && strpos( $tag, ' async' ) === false ) { $tag = str_replace( ' src=', ' defer src=', $tag ); } return $tag; } /** * 2. GOOGLE ANALYTICS 4 — chargement optimisé * → Remplace G-XXXXXXXXXX par ton Measurement ID GA4 * (Google Analytics → Admin → Flux de données → ID de mesure) */ add_action( 'wp_head', 'iaprofitsystem_google_analytics', 1 ); function iaprofitsystem_google_analytics() { if ( is_admin() ) return; ?> <!-- Google Analytics 4 — IAProfit System --> <script> (function(){ var ga=document.createElement('script'); ga.src='https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX'; ga.async=true; document.head.appendChild(ga); })(); window.dataLayer=window.dataLayer||[]; function gtag(){dataLayer.push(arguments);} gtag('js',new Date()); gtag('config','G-XXXXXXXXXX',{ 'send_page_view':true, 'anonymize_ip':true }); </script> <?php } /** * 3. HOTJAR — chargé après le load event pour ne pas bloquer le LCP * → Remplace XXXXXXX par ton Site ID Hotjar * (Hotjar → Settings → Sites → Site ID) */ add_action( 'wp_footer', 'iaprofitsystem_hotjar', 99 ); function iaprofitsystem_hotjar() { if ( is_admin() ) return; ?> <!-- Hotjar — IAProfit System --> <script> window.addEventListener('load',function(){ (function(h,o,t,j,a,r){ h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)}; h._hjSettings={hjid:XXXXXXX,hjsv:6}; a=o.getElementsByTagName('head')[0]; r=o.createElement('script'); r.async=1; r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv; a.appendChild(r); })(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv='); }); </script> <?php } /** * 4. CTA PRINCIPAL — Redirection vers Systeme.io * Injecte automatiquement l'URL correcte sur tous les boutons CTA * ayant la classe .btn-cta ou le texte "Accéder" / "Commencer" */ add_action( 'wp_footer', 'iaprofitsystem_cta_url_fix', 100 ); function iaprofitsystem_cta_url_fix() { if ( is_admin() ) return; ?> <script> document.addEventListener('DOMContentLoaded',function(){ var ctaUrl='https://minouwize.systeme.io/685c4ffb'; // Cible les boutons CTA par classe ou par texte var selectors=[ '.btn-cta', '.wp-block-button__link', 'a[href*="systeme.io"]' ]; selectors.forEach(function(sel){ document.querySelectorAll(sel).forEach(function(el){ el.href=ctaUrl; el.setAttribute('rel','noopener'); }); }); }); </script> <?php } /** * 5. IMAGES WEBP — Filtre automatique src .jpg/.png → .webp si disponible * Place tes images converties dans le même dossier avec extension .webp */ add_filter( 'wp_get_attachment_image_src', 'iaprofitsystem_webp_images', 10, 4 ); function iaprofitsystem_webp_images( $image, $attachment_id, $size, $icon ) { if ( ! $image ) return $image; $src = $image[0]; // Vérifie si une version WebP existe $webp_src = preg_replace( '/\.(jpe?g|png)$/i', '.webp', $src ); $webp_path = str_replace( get_site_url(), ABSPATH, $webp_src ); if ( file_exists( $webp_path ) ) { $image[0] = $webp_src; } return $image; } /** * 6. SUPPRESSION des emojis WordPress (économise ~15kb au chargement) */ remove_action( 'wp_head', 'print_emoji_detection_script', 7 ); remove_action( 'wp_print_styles', 'print_emoji_styles' ); remove_action( 'admin_print_scripts', 'print_emoji_detection_script' ); remove_action( 'admin_print_styles', 'print_emoji_styles' ); /** * 7. SUPPRESSION des meta inutiles (performance + sécurité) */ remove_action( 'wp_head', 'wp_generator' ); // Cache la version WP remove_action( 'wp_head', 'wlwmanifest_link' ); // Windows Live Writer remove_action( 'wp_head', 'rsd_link' ); // Really Simple Discovery // === CARTES CJ DROPSHIPPING — injection via ob_start === add_action( 'template_redirect', function() { if ( ! is_admin() && isset( $_SERVER['REQUEST_URI'] ) && strpos( $_SERVER['REQUEST_URI'], '/shop' ) !== false ) { ob_start( function( $output ) { if ( strpos( $output, 'card-price' ) !== false ) { $cards = '<section style="max-width:1200px;margin:40px auto;padding:0 20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;">' . '<div class="card card-hot"><div class="card-cat">Studio Mobile</div>' . '<img src="https://via.placeholder.com/400x300/0a0a2e/00d4ff?text=Gimbal+AI+360" alt="Gimbal AI 360 SmartTrack Pro" style="width:100%;border-radius:8px;" />' . '<div class="card-title">Gimbal AI 360 SmartTrack Pro</div>' . '<div class="card-desc">Suivi automatique IA, rotation 360, compatible tous smartphones.</div>' . '<div class="card-price">49€</div><a href="#" class="btn">Voir le produit</a></div>' . '<div class="card"><div class="card-cat">Audio Pro</div>' . '<img src="https://via.placeholder.com/400x300/0a0a2e/00d4ff?text=Micro+Cravate+Pro" alt="Micro Cravate Pro" style="width:100%;border-radius:8px;" />' . '<div class="card-title">Micro Cravate Pro Studio Nomade</div>' . '<div class="card-desc">Micro lavalier sans fil, reduction bruit IA, portee 30m.</div>' . '<div class="card-price">24€</div><a href="#" class="btn">Voir le produit</a></div>' . '<div class="card"><div class="card-cat">Eclairage</div>' . '<img src="https://via.placeholder.com/400x300/0a0a2e/00d4ff?text=LumiPocket+Pro" alt="LumiPocket Pro" style="width:100%;border-radius:8px;" />' . '<div class="card-title">LumiPocket Pro Lumiere LED</div>' . '<div class="card-desc">Anneau LED portable 3 temperatures, fixation universelle.</div>' . '<div class="card-price">27€</div><a href="#" class="btn">Voir le produit</a></div>' . '<div class="card card-hot"><div class="card-cat">Tech Nomade</div>' . '<img src="https://via.placeholder.com/400x300/0a0a2e/00d4ff?text=ChargeFold+Pro" alt="ChargeFold Pro 3-en-1" style="width:100%;border-radius:8px;" />' . '<div class="card-title">ChargeFold Pro 3-en-1</div>' . '<div class="card-desc">Chargeur pliable GaN 65W, 3 ports USB-C/A, MacBook iPhone Android.</div>' . '<div class="card-price">33€</div><a href="#" class="btn">Voir le produit</a></div>' . '</section>'; $output = str_replace( '</body>', $cards . '</body>', $output ); } return $output; } ); } } ); // === FIN CARTES CJ === add_action('admin_notices',function(){ if(!current_user_can('manage_options')||!isset($_GET['inject_cj']))return; $file=WPMU_PLUGIN_DIR.'/ia_homepage_dynamic.php'; $c=file_get_contents($file); if($c===false){echo '<div class="notice notice-error"><p>Cannot read file</p></div>';return;} $cards='<section style="max-width:1200px;margin:40px auto;padding:0 20px 40px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px">' .'<div class="card card-hot"><div class="card-cat">Studio Mobile</div>' .'<img src="https://via.placeholder.com/400x300/0a0a2e/00d4ff?text=Gimbal+AI+360" alt="Gimbal AI 360 SmartTrack Pro" style="width:100%;border-radius:8px;margin-bottom:12px">' .'<div class="card-title">Gimbal AI 360 SmartTrack Pro</div>' .'<div class="card-desc">Suivi automatique IA, rotation 360, compatible tous smartphones.</div>' .'<div class="card-price">49&euro;</div><a href="#" class="btn">Voir le produit</a></div>' .'<div class="card"><div class="card-cat">Audio Pro</div>' .'<img src="https://via.placeholder.com/400x300/0a0a2e/00d4ff?text=Micro+Cravate+Pro" alt="Micro Cravate Pro" style="width:100%;border-radius:8px;margin-bottom:12px">' .'<div class="card-title">Micro Cravate Pro Studio Nomade</div>' .'<div class="card-desc">Micro lavalier sans fil, reduction bruit IA, portee 30m.</div>' .'<div class="card-price">24&euro;</div><a href="#" class="btn">Voir le produit</a></div>' .'<div class="card"><div class="card-cat">Eclairage</div>' .'<img src="https://via.placeholder.com/400x300/0a0a2e/00d4ff?text=LumiPocket+Pro" alt="LumiPocket Pro LED" style="width:100%;border-radius:8px;margin-bottom:12px">' .'<div class="card-title">LumiPocket Pro Lumiere LED</div>' .'<div class="card-desc">Anneau LED portable 3 temperatures, fixation universelle.</div>' .'<div class="card-price">27&euro;</div><a href="#" class="btn">Voir le produit</a></div>' .'<div class="card card-hot"><div class="card-cat">Tech Nomade</div>' .'<img src="https://via.placeholder.com/400x300/0a0a2e/00d4ff?text=ChargeFold+Pro" alt="ChargeFold Pro 3-en-1" style="width:100%;border-radius:8px;margin-bottom:12px">' .'<div class="card-title">ChargeFold Pro 3-en-1</div>' .'<div class="card-desc">Chargeur pliable GaN 65W, 3 ports USB-C/A, MacBook iPhone Android.</div>' .'<div class="card-price">33&euro;</div><a href="#" class="btn">Voir le produit</a></div>' .'</section>'; file_put_contents($file.'.bak2',$c); $new=str_replace('</body>',$cards.'</body>',$c); if($new===$c){$endings=array('</body>','<\/body>','body>','exit()');foreach($endings as $e){if(strpos($c,$e)!==false){echo '<div class="notice"><p>Found: '.esc_html($e).' at pos '.strpos($c,$e).'</p></div>';}}return;} file_put_contents($file,$new); echo '<div class="notice notice-success"><p>SUCCESS: 4 cartes CJ injectees dans ia_homepage_dynamic.php</p></div>'; }); add_action('admin_notices',function(){echo '<div class="notice notice-warning"><p>FNTEST: inject_cj='.esc_html(isset($_GET['inject_cj'])?'SET':'NO').'</p></div>';}); // CJ Dropshipping injector creator add_action('admin_notices',function(){ if(!current_user_can('manage_options')||!isset($_GET['create_injector']))return; $file=WPMU_PLUGIN_DIR.'/ia_cards_inject.php'; $c=base64_decode('PD9waHAKaWYoIWRlZmluZWQoJ0FCU1BBVEgnKSlleGl0OwpvYl9zdGFydChmdW5jdGlvbigkaCl7CiAgaWYoc3RycG9zKCRfU0VSVkVSWydSRVFVRVNUX1VSSSddPz8nJywnL3Nob3AnKT09PWZhbHNlKXJldHVybiAkaDsKICAkYz0nPGRpdiBjbGFzcz0iY2FyZCBjYXJkLWhvdCI+PGRpdiBjbGFzcz0iY2FyZC1jYXQiPlN0dWRpbyBNb2JpbGU8L2Rpdj48aW1nIHNyYz0iaHR0cHM6Ly92aWEucGxhY2Vob2xkZXIuY29tLzQwMHgzMDAvMGEwYTJlLzAwZDRmZj90ZXh0PUdpbWJhbCtBSSIgYWx0PSJHaW1iYWwgQUkgMzYwIFNtYXJ0VHJhY2sgUHJvIiAvPjxkaXYgY2xhc3M9ImNhcmQtdGl0bGUiPiYjMTI5MzAyOyBHaW1iYWwgQUkgMzYwJmRlZzsgU21hcnRUcmFjayBQcm88L2Rpdj48ZGl2IGNsYXNzPSJjYXJkLWRlc2MiPlN1aXZpIGF1dG9tYXRpcXVlIElBLCByb3RhdGlvbiAzNjAmZGVnOywgY29tcGF0aWJsZSB0b3VzIHNtYXJ0cGhvbmVzLiBJZCZlYWN1dGU7YWwgY3ImZWFjdXRlO2F0ZXVycyBkZSBjb250ZW51LjwvZGl2PjxkaXYgY2xhc3M9ImNhcmQtcHJpY2UiPjQ5JmV1cm87PC9kaXY+PGEgaHJlZj0iIyIgY2xhc3M9ImJ0biI+Vm9pciBsZSBwcm9kdWl0PC9hPjwvZGl2PjxkaXYgY2xhc3M9ImNhcmQiPjxkaXYgY2xhc3M9ImNhcmQtY2F0Ij5BdWRpbyBQcm88L2Rpdj48aW1nIHNyYz0iaHR0cHM6Ly92aWEucGxhY2Vob2xkZXIuY29tLzQwMHgzMDAvMGEwYTJlLzAwZDRmZj90ZXh0PU1pY3JvK0NyYXZhdGUrUHJvIiBhbHQ9Ik1pY3JvIENyYXZhdGUgUHJvIiAvPjxkaXYgY2xhc3M9ImNhcmQtdGl0bGUiPiYjMTI3ODk3OyYjNjUwMzk7IE1pY3JvIENyYXZhdGUgUHJvICZtZGFzaDsgU3R1ZGlvIE5vbWFkZTwvZGl2PjxkaXYgY2xhc3M9ImNhcmQtZGVzYyI+TWljcm8gbGF2YWxpZXIgc2FucyBmaWwsIHImZWFjdXRlO2R1Y3Rpb24gYnJ1aXQgSUEsIHBvcnQmZWFjdXRlO2UgMzBtLiBQb3VyIHBvZGNhc3RlcnMgZXQgZm9ybWF0ZXVycy48L2Rpdj48ZGl2IGNsYXNzPSJjYXJkLXByaWNlIj4yNCZldXJvOzwvZGl2PjxhIGhyZWY9IiMiIGNsYXNzPSJidG4iPlZvaXIgbGUgcHJvZHVpdDwvYT48L2Rpdj48ZGl2IGNsYXNzPSJjYXJkIj48ZGl2IGNsYXNzPSJjYXJkLWNhdCI+JkVhY3V0ZTtjbGFpcmFnZTwvZGl2PjxpbWcgc3JjPSJodHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNDAweDMwMC8wYTBhMmUvMDBkNGZmP3RleHQ9THVtaVBvY2tldCtQcm8iIGFsdD0iTHVtaVBvY2tldCBQcm8gTEVEIiAvPjxkaXYgY2xhc3M9ImNhcmQtdGl0bGUiPiYjMTAwMjQ7IEx1bWlQb2NrZXQgUHJvICZtZGFzaDsgTHVtaSZlZ3JhdmU7cmUgTEVEPC9kaXY+PGRpdiBjbGFzcz0iY2FyZC1kZXNjIj5Bbm5lYXUgTEVEIHBvcnRhYmxlIDMgdGVtcCZlYWN1dGU7cmF0dXJlcywgZml4YXRpb24gdW5pdmVyc2VsbGUuICZFYWN1dGU7Y2xhaXJhZ2UgcHJvIHBvdXIgdmlzaW9jb25mJmVhY3V0ZTtyZW5jZXMuPC9kaXY+PGRpdiBjbGFzcz0iY2FyZC1wcmljZSI+MjcmZXVybzs8L2Rpdj48YSBocmVmPSIjIiBjbGFzcz0iYnRuIj5Wb2lyIGxlIHByb2R1aXQ8L2E+PC9kaXY+PGRpdiBjbGFzcz0iY2FyZCBjYXJkLWhvdCI+PGRpdiBjbGFzcz0iY2FyZC1jYXQiPlRlY2ggTm9tYWRlPC9kaXY+PGltZyBzcmM9Imh0dHBzOi8vdmlhLnBsYWNlaG9sZGVyLmNvbS80MDB4MzAwLzBhMGEyZS8wMGQ0ZmY/dGV4dD1DaGFyZ2VGb2xkK1BybyIgYWx0PSJDaGFyZ2VGb2xkIFBybyAzLWVuLTEiIC8+PGRpdiBjbGFzcz0iY2FyZC10aXRsZSI+JiM5ODg5OyBDaGFyZ2VGb2xkIFBybyAzLWVuLTE8L2Rpdj48ZGl2IGNsYXNzPSJjYXJkLWRlc2MiPkNoYXJnZXVyIHBsaWFibGUgR2FOIDY1VywgMyBwb3J0cyBVU0ItQy9BLCBjb21wYXRpYmxlIE1hY0Jvb2ssIGlQaG9uZSBldCBBbmRyb2lkLjwvZGl2PjxkaXYgY2xhc3M9ImNhcmQtcHJpY2UiPjMzJmV1cm87PC9kaXY+PGEgaHJlZj0iIyIgY2xhc3M9ImJ0biI+Vm9pciBsZSBwcm9kdWl0PC9hPjwvZGl2Pic7CiAgcmV0dXJuIHN0cl9yZXBsYWNlKCc8L2JvZHk+JywkYy4nPC9ib2R5PicsJGgpOwp9KTs='); if(file_put_contents($file,$c)!==false){ echo '

INJECTOR CREATED: '.esc_html($file).'

'; }else{ echo '

WRITE FAILED: '.esc_html($file).'

'; } }); // CJ injector v2 add_action('admin_notices',function(){ if(!current_user_can('manage_options')||!isset($_GET['ci2']))return; $f=WPMU_PLUGIN_DIR.'/ia_cards_inject.php'; $d=base64_decode('PD9waHAKaWYoIWRlZmluZWQoJ0FCU1BBVEgnKSlleGl0OwpvYl9zdGFydChmdW5jdGlvbigkaCl7CmlmKHN0cnBvcygkX1NFUlZFUlsnUkVRVUVTVF9VUkknXT8/JycsJy9zaG9wJyk9PT1mYWxzZSlyZXR1cm4gJGg7CiRjPSc8ZGl2IGNsYXNzPSJjYXJkIGNhcmQtaG90Ij48ZGl2IGNsYXNzPSJjYXJkLWNhdCI+U3R1ZGlvIE1vYmlsZTwvZGl2PicKLiAnPGltZyBzcmM9Imh0dHBzOi8vdmlhLnBsYWNlaG9sZGVyLmNvbS80MDB4MzAwLzBhMGEyZS8wMGQ0ZmY/dGV4dD1HaW1iYWwrQUkiIGFsdD0iR2ltYmFsIEFJIDM2MCBTbWFydFRyYWNrIFBybyIgLz4nCi4gJzxkaXYgY2xhc3M9ImNhcmQtdGl0bGUiPiYjMTI5MzAyOyBHaW1iYWwgQUkgMzYwJmRlZzsgU21hcnRUcmFjayBQcm88L2Rpdj4nCi4gJzxkaXYgY2xhc3M9ImNhcmQtZGVzYyI+U3VpdmkgYXV0b21hdGlxdWUgSUEsIHJvdGF0aW9uIDM2MCZkZWc7LCBjb21wYXRpYmxlIHRvdXMgc21hcnRwaG9uZXMuPC9kaXY+JwouICc8ZGl2IGNsYXNzPSJjYXJkLXByaWNlIj40OSZldXJvOzwvZGl2PjxhIGhyZWY9IiMiIGNsYXNzPSJidG4iPlZvaXIgbGUgcHJvZHVpdDwvYT48L2Rpdj4nCi4gJzxkaXYgY2xhc3M9ImNhcmQiPjxkaXYgY2xhc3M9ImNhcmQtY2F0Ij5BdWRpbyBQcm88L2Rpdj4nCi4gJzxpbWcgc3JjPSJodHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNDAweDMwMC8wYTBhMmUvMDBkNGZmP3RleHQ9TWljcm8rQ3JhdmF0ZSIgYWx0PSJNaWNybyBDcmF2YXRlIFBybyIgLz4nCi4gJzxkaXYgY2xhc3M9ImNhcmQtdGl0bGUiPiYjMTI3ODk3OyYjNjUwMzk7IE1pY3JvIENyYXZhdGUgUHJvICZtZGFzaDsgU3R1ZGlvIE5vbWFkZTwvZGl2PicKLiAnPGRpdiBjbGFzcz0iY2FyZC1kZXNjIj5NaWNybyBsYXZhbGllciBzYW5zIGZpbCwgciZlYWN1dGU7ZHVjdGlvbiBicnVpdCBJQSwgcG9ydCZlYWN1dGU7ZSAzMG0uPC9kaXY+JwouICc8ZGl2IGNsYXNzPSJjYXJkLXByaWNlIj4yNCZldXJvOzwvZGl2PjxhIGhyZWY9IiMiIGNsYXNzPSJidG4iPlZvaXIgbGUgcHJvZHVpdDwvYT48L2Rpdj4nCi4gJzxkaXYgY2xhc3M9ImNhcmQiPjxkaXYgY2xhc3M9ImNhcmQtY2F0Ij4mRWFjdXRlO2NsYWlyYWdlPC9kaXY+JwouICc8aW1nIHNyYz0iaHR0cHM6Ly92aWEucGxhY2Vob2xkZXIuY29tLzQwMHgzMDAvMGEwYTJlLzAwZDRmZj90ZXh0PUx1bWlQb2NrZXQrUHJvIiBhbHQ9Ikx1bWlQb2NrZXQgUHJvIExFRCIgLz4nCi4gJzxkaXYgY2xhc3M9ImNhcmQtdGl0bGUiPiYjMTAwMjQ7IEx1bWlQb2NrZXQgUHJvICZtZGFzaDsgTHVtaSZlZ3JhdmU7cmUgTEVEPC9kaXY+JwouICc8ZGl2IGNsYXNzPSJjYXJkLWRlc2MiPkFubmVhdSBMRUQgcG9ydGFibGUgMyB0ZW1wJmVhY3V0ZTtyYXR1cmVzLCBmaXhhdGlvbiB1bml2ZXJzZWxsZS48L2Rpdj4nCi4gJzxkaXYgY2xhc3M9ImNhcmQtcHJpY2UiPjI3JmV1cm87PC9kaXY+PGEgaHJlZj0iIyIgY2xhc3M9ImJ0biI+Vm9pciBsZSBwcm9kdWl0PC9hPjwvZGl2PicKLiAnPGRpdiBjbGFzcz0iY2FyZCBjYXJkLWhvdCI+PGRpdiBjbGFzcz0iY2FyZC1jYXQiPlRlY2ggTm9tYWRlPC9kaXY+JwouICc8aW1nIHNyYz0iaHR0cHM6Ly92aWEucGxhY2Vob2xkZXIuY29tLzQwMHgzMDAvMGEwYTJlLzAwZDRmZj90ZXh0PUNoYXJnZUZvbGQrUHJvIiBhbHQ9IkNoYXJnZUZvbGQgUHJvIDMtZW4tMSIgLz4nCi4gJzxkaXYgY2xhc3M9ImNhcmQtdGl0bGUiPiYjOTg4OTsgQ2hhcmdlRm9sZCBQcm8gMy1lbi0xPC9kaXY+JwouICc8ZGl2IGNsYXNzPSJjYXJkLWRlc2MiPkNoYXJnZXVyIHBsaWFibGUgR2FOIDY1VywgMyBwb3J0cyBVU0ItQy9BLCBjb21wYXRpYmxlIE1hY0Jvb2ssIGlQaG9uZSBldCBBbmRyb2lkLjwvZGl2PicKLiAnPGRpdiBjbGFzcz0iY2FyZC1wcmljZSI+MzMmZXVybzs8L2Rpdj48YSBocmVmPSIjIiBjbGFzcz0iYnRuIj5Wb2lyIGxlIHByb2R1aXQ8L2E+PC9kaXY+JzsKcmV0dXJuIHN0cl9yZXBsYWNlKCc8L2JvZHk+JywkYy4nPC9ib2R5PicsJGgpOwp9KTs='); $ok=file_put_contents($f,$d); if($ok!==false){echo '

OK injector created

';} else{echo '

FAIL write error

';} }); // CJ Dropshipping cards injection add_action('template_redirect',function(){ if(strpos($_SERVER['REQUEST_URI']??'','/shop')===false)return; ob_start(function($out){ $c=base64_decode('PGRpdiBjbGFzcz0iY2FyZCBjYXJkLWhvdCI+PGRpdiBjbGFzcz0iY2FyZC1jYXQiPlN0dWRpbyBNb2JpbGU8L2Rpdj48aW1nIHNyYz0iaHR0cHM6Ly92aWEucGxhY2Vob2xkZXIuY29tLzQwMHgzMDAvMGEwYTJlLzAwZDRmZj90ZXh0PUdpbWJhbCtBSSIgYWx0PSJHaW1iYWwgQUkgMzYwIFNtYXJ0VHJhY2sgUHJvIiAvPjxkaXYgY2xhc3M9ImNhcmQtdGl0bGUiPiYjMTI5MzAyOyBHaW1iYWwgQUkgMzYwJmRlZzsgU21hcnRUcmFjayBQcm88L2Rpdj48ZGl2IGNsYXNzPSJjYXJkLWRlc2MiPlN1aXZpIGF1dG9tYXRpcXVlIElBLCByb3RhdGlvbiAzNjAmZGVnOywgY29tcGF0aWJsZSB0b3VzIHNtYXJ0cGhvbmVzLiBJZCZlYWN1dGU7YWwgY3ImZWFjdXRlO2F0ZXVycyBkZSBjb250ZW51LjwvZGl2PjxkaXYgY2xhc3M9ImNhcmQtcHJpY2UiPjQ5JmV1cm87PC9kaXY+PGEgaHJlZj0iIyIgY2xhc3M9ImJ0biI+Vm9pciBsZSBwcm9kdWl0PC9hPjwvZGl2PjxkaXYgY2xhc3M9ImNhcmQiPjxkaXYgY2xhc3M9ImNhcmQtY2F0Ij5BdWRpbyBQcm88L2Rpdj48aW1nIHNyYz0iaHR0cHM6Ly92aWEucGxhY2Vob2xkZXIuY29tLzQwMHgzMDAvMGEwYTJlLzAwZDRmZj90ZXh0PU1pY3JvK0NyYXZhdGUiIGFsdD0iTWljcm8gQ3JhdmF0ZSBQcm8gU3R1ZGlvIE5vbWFkZSIgLz48ZGl2IGNsYXNzPSJjYXJkLXRpdGxlIj4mIzEyNzg5NzsgTWljcm8gQ3JhdmF0ZSBQcm8gJm1kYXNoOyBTdHVkaW8gTm9tYWRlPC9kaXY+PGRpdiBjbGFzcz0iY2FyZC1kZXNjIj5NaWNybyBsYXZhbGllciBzYW5zIGZpbCwgciZlYWN1dGU7ZHVjdGlvbiBicnVpdCBJQSwgcG9ydCZlYWN1dGU7ZSAzMG0uIFBvdXIgcG9kY2FzdGVycyBldCBmb3JtYXRldXJzLjwvZGl2PjxkaXYgY2xhc3M9ImNhcmQtcHJpY2UiPjI0JmV1cm87PC9kaXY+PGEgaHJlZj0iIyIgY2xhc3M9ImJ0biI+Vm9pciBsZSBwcm9kdWl0PC9hPjwvZGl2PjxkaXYgY2xhc3M9ImNhcmQiPjxkaXYgY2xhc3M9ImNhcmQtY2F0Ij4mRWFjdXRlO2NsYWlyYWdlPC9kaXY+PGltZyBzcmM9Imh0dHBzOi8vdmlhLnBsYWNlaG9sZGVyLmNvbS80MDB4MzAwLzBhMGEyZS8wMGQ0ZmY/dGV4dD1MdW1pUG9ja2V0K1BybyIgYWx0PSJMdW1pUG9ja2V0IFBybyBMRUQiIC8+PGRpdiBjbGFzcz0iY2FyZC10aXRsZSI+JiMxMDAyNDsgTHVtaVBvY2tldCBQcm8gJm1kYXNoOyBMdW1pJmVncmF2ZTtyZSBMRUQ8L2Rpdj48ZGl2IGNsYXNzPSJjYXJkLWRlc2MiPkFubmVhdSBMRUQgcG9ydGFibGUgMyB0ZW1wJmVhY3V0ZTtyYXR1cmVzLCBmaXhhdGlvbiB1bml2ZXJzZWxsZS4gJkVhY3V0ZTtjbGFpcmFnZSBwcm8gcG91ciB2aXNpb2NvbmYmZWFjdXRlO3JlbmNlcy48L2Rpdj48ZGl2IGNsYXNzPSJjYXJkLXByaWNlIj4yNyZldXJvOzwvZGl2PjxhIGhyZWY9IiMiIGNsYXNzPSJidG4iPlZvaXIgbGUgcHJvZHVpdDwvYT48L2Rpdj48ZGl2IGNsYXNzPSJjYXJkIGNhcmQtaG90Ij48ZGl2IGNsYXNzPSJjYXJkLWNhdCI+VGVjaCBOb21hZGU8L2Rpdj48aW1nIHNyYz0iaHR0cHM6Ly92aWEucGxhY2Vob2xkZXIuY29tLzQwMHgzMDAvMGEwYTJlLzAwZDRmZj90ZXh0PUNoYXJnZUZvbGQrUHJvIiBhbHQ9IkNoYXJnZUZvbGQgUHJvIDMtZW4tMSIgLz48ZGl2IGNsYXNzPSJjYXJkLXRpdGxlIj4mIzk4ODk7IENoYXJnZUZvbGQgUHJvIDMtZW4tMTwvZGl2PjxkaXYgY2xhc3M9ImNhcmQtZGVzYyI+Q2hhcmdldXIgcGxpYWJsZSBHYU4gNjVXLCAzIHBvcnRzIFVTQi1DL0EsIGNvbXBhdGlibGUgTWFjQm9vaywgaVBob25lIGV0IEFuZHJvaWQuPC9kaXY+PGRpdiBjbGFzcz0iY2FyZC1wcmljZSI+MzMmZXVybzs8L2Rpdj48YSBocmVmPSIjIiBjbGFzcz0iYnRuIj5Wb2lyIGxlIHByb2R1aXQ8L2E+PC9kaXY+'); return str_replace('',$c.'',$out); }); },1); // Diagnostic AJAX to dump mu-plugin add_action('wp_ajax_ia_dbg',function(){ $f=WPMU_PLUGIN_DIR.'/ia_homepage_dynamic.php'; $c=file_get_contents($f); $u=wp_upload_dir(); file_put_contents($u['basedir'].'/ia_mu_dump.txt',$c); wp_send_json(['len'=>strlen($c?:''),'ok'=>$c!==false,'url'=>$u['baseurl'].'/ia_mu_dump.txt']); }); // Test ob_start - unconditional marker ob_start(function($out){return str_replace('','',$out);}); Conformité – IA Profit System

Nos Solutions IA Premium

Studio Mobile
Gimbal AI 360 SmartTrack Pro
Gimbal AI 360 SmartTrack Pro
Suivi automatique IA, rotation 360, compatible tous smartphones.
49EUR
Voir le produit
Audio Pro
Micro Cravate Pro
Micro Cravate Pro Studio Nomade
Micro lavalier sans fil, reduction bruit IA, portee 30m.
24EUR
Voir le produit
Eclairage
LumiPocket Pro LED
LumiPocket Pro Lumiere LED Createur
Anneau LED portable 3 temperatures, fixation universelle.
27EUR
Voir le produit
Tech Nomade
ChargeFold Pro 3-en-1
ChargeFold Pro 3-en-1
Chargeur pliable GaN 65W, 3 ports USB-C/A, compatible MacBook iPhone Android.
33EUR
Voir le produit