Title: wpformation's Replies | WordPress.org

---

# wpformation

  [  ](https://wordpress.org/support/users/wpformation/)

 *   [Profile](https://wordpress.org/support/users/wpformation/)
 *   [Topics Started](https://wordpress.org/support/users/wpformation/topics/)
 *   [Replies Created](https://wordpress.org/support/users/wpformation/replies/)
 *   [Reviews Written](https://wordpress.org/support/users/wpformation/reviews/)
 *   [Topics Replied To](https://wordpress.org/support/users/wpformation/replied-to/)
 *   [Engagements](https://wordpress.org/support/users/wpformation/engagements/)
 *   [Favorites](https://wordpress.org/support/users/wpformation/favorites/)

 Search replies:

## Forum Replies Created

Viewing 15 replies - 1 through 15 (of 27 total)

1 [2](https://wordpress.org/support/users/wpformation/replies/page/2/?output_format=md)
[→](https://wordpress.org/support/users/wpformation/replies/page/2/?output_format=md)

 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[Login Armor] URL Hide Login](https://wordpress.org/support/topic/url-hide-login/)
 *  Plugin Author [wpformation](https://wordpress.org/support/users/wpformation/)
 * (@wpformation)
 * [6 days, 20 hours ago](https://wordpress.org/support/topic/url-hide-login/#post-18899947)
 * Bravo pour le diagnostic ! Effectivement, pas de .htaccess sur Docker + Caddy
   = pas de RewriteRule WordPress = boucle 302 sur /wp-admin/ indépendamment de 
   Login Armor. Confirmé par votre test avec LA désactivé.
 * Pour info, V2.1.11 a quand même été publiée entre temps (HideLogin::build_login_url()
   host-aware + dual-base matching dans intercept_request) => c’est une amélioration
   robuste pour les setups multisite + domain mapping en général, même si dans votre
   cas spécifique c’était la config web server qui posait souci. Donc rien à perdre
   à mettre à jour, et ça vous protège contre des cas similaires futurs.
 * Merci d’avoir creusé jusqu’à la cause root et de l’avoir partagé ici — votre 
   stack Docker + Caddy n’est pas la plus courante côté WordPress, et votre retour
   aidera d’autres utilisateurs qui tombent sur le même symptôme. Bonne continuation!
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[Login Armor] URL Hide Login](https://wordpress.org/support/topic/url-hide-login/)
 *  Plugin Author [wpformation](https://wordpress.org/support/users/wpformation/)
 * (@wpformation)
 * [6 days, 23 hours ago](https://wordpress.org/support/topic/url-hide-login/#post-18899789)
 * Re-bonjour graphandco,
   Petit complément après inspection du code de Defender (
   que je suspecte être l’autre plugin qui fonctionnait pour vous) : Defender ne
   fait pas de SSO cross-domain, il fait simplement du multisite-aware site_url()
   avec switch_to_blog(). C’est exactement ce que Login Armor V2.1.9 fait depuis
   ce matin.
 * Donc en pratique, votre setup multisite + domain mapping devrait marcher avec
   Login Armor 2.1.10 si vous accédez directement à domaineexterne1.com// au lieu
   de passer par admin.monsupersite.com. Chaque sous-site a son propre flow login
   indépendant sur son domaine, cookie posé sur le bon hostname, redirect /wp-admin
   sur ce hostname, no cross-domain issue.
 * N’hésitez pas à tester si c’est ce que vous cherchez. Bonne soirée.
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[Login Armor] URL Hide Login](https://wordpress.org/support/topic/url-hide-login/)
 *  Plugin Author [wpformation](https://wordpress.org/support/users/wpformation/)
 * (@wpformation)
 * [6 days, 23 hours ago](https://wordpress.org/support/topic/url-hide-login/#post-18899781)
 * Merci infiniment pour ce retour, ça fait vraiment plaisir.
 * L’info sur les autres plugins qui gèrent les domaines externes est précieuse —
   c’est probablement effectivement un mécanisme de SSO style WP MU Domain Mapping(
   token signé en URL pour transiter d’un domaine à l’autre, qui se traduit en cookie
   auth de l’autre côté). On l’a noté dans notre backlog roadmap pour V2.2+, si 
   la demande remonte d’autres utilisateurs en multisite domain-mapping on regardera
   comment l’intégrer proprement dans Login Armor sans casser le périmètre actuel“
   Hide / Block / Watch”.
 * Et merci pour le bouche-à-oreille, c’est exactement ça qui fait vivre les plugins
   gratuits et indépendants. Bonne continuation sur votre projet multisite, et n’hésitez
   pas à revenir sur le forum si vous croisez d’autres edge cases.
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[Login Armor] URL Hide Login](https://wordpress.org/support/topic/url-hide-login/)
 *  Plugin Author [wpformation](https://wordpress.org/support/users/wpformation/)
 * (@wpformation)
 * [1 week ago](https://wordpress.org/support/topic/url-hide-login/#post-18899721)
 * Bonjour graphandco,
   Merci d’avoir confirmé que V2.1.9/V2.1.10 résolvent votre
   cas principal. Pour vos sous-sites mappés sur des domaines externes : de notre
   côté on s’arrête là sur Login Armor, pour la raison que vous avez identifiée 
   vous-même : un cookie d’auth ne peut pas traverser deux domaines DNS distincts(`
   monsupersite.com` ≠ `domaineexterne1.com`). C’est une limite cookie HTTP, pas
   quelque chose qu’un plugin peut contourner sans monter un système SSO complet(
   avec tokens + redirects), ce qui sort du périmètre de Login Armor.
 * Deux pistes pour vous selon ce que vous voulez :
 * **1. Auth séparée par domaine externe (le plus simple)**
 * Chaque sous-site garde son propre flow login. Vos admins se connectent directement
   sur `domaineexterne1.com/<slug-du-sous-site>/`, le cookie est posé sur `domaineexterne1.
   com`, le redirect post-login va sur `domaineexterne1.com/wp-admin/`. Login Armor
   stocke le slug en `blog_option` (per-site) et V2.1.9+ génère l’URL de login depuis`
   site_url()` — donc si vos sous-sites ont leur `siteurl` correctement mappé sur
   le domaine externe (cas standard du domain mapping), ça fonctionne sans rien 
   faire de plus.
 * Si pour une raison X vous voulez forcer un hostname différent de `site_url()`(
   par exemple `siteurl` reste sur le réseau d’origine mais vous voulez que la page
   de login soit servie sur le domaine externe), le filtre `login_armor_login_url_base`
   introduit en V2.1.9 permet de l’overrider per-site. Snippet générique à laisser
   ici pour quiconque tombe sur ce thread avec un cas similaire — à déposer dans`
   wp-content/mu-plugins/la-multisite-login-domain.php` :
 *     ```wp-block-code
       <?php
       /**
        * Plugin Name: Login Armor — Per-Site Login Domain Override
        * Description: Override Login Armor's login URL hostname per blog_id
        *              when site_url() doesn't match where you want the login
        *              page to be served (typical: multisite + external domain
        *              mapping with siteurl on a different host than the public one).
        */
       if ( ! defined( 'ABSPATH' ) ) { exit; }
   
       add_filter( 'login_armor_login_url_base', function ( $url, $path, $scheme, $slug ) {
           $custom_hosts = [
               // blog_id => hostname (avec scheme)
               2 => 'https://domaineexterne1.com',
               3 => 'https://domaineexterne2.com',
               // une ligne par sous-site à customiser
           ];
           $blog_id = get_current_blog_id();
           if ( isset( $custom_hosts[ $blog_id ] ) ) {
               return $custom_hosts[ $blog_id ] . $path;
           }
           return $url; // default site_url() pour les autres
       }, 10, 4 );
       ```
   
 * **2. SSO centralisé** sur `admin.monsupersite.com`
 * Tous les admins se connectent au même endroit puis sont redirigés vers leur sous-
   site via tokens. Le plugin **WP MU Domain Mapping** (gratuit, mature) propose
   exactement ça avec son option “Login Mapping”. C’est la voie standard pour ce
   cas, hors périmètre Login Armor.
 * Votre retour a directement déclenché V2.1.9 + V2.1.10 sur WP.org, encore merci.
   Bonne route !
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[Login Armor] URL Hide Login](https://wordpress.org/support/topic/url-hide-login/)
 *  Plugin Author [wpformation](https://wordpress.org/support/users/wpformation/)
 * (@wpformation)
 * [1 week ago](https://wordpress.org/support/topic/url-hide-login/#post-18899634)
 * Bonjour graphandco,
   Bonne nouvelle, j’ai aussi shippé V2.1.10 entre temps — un
   fix cosmétique sur la page 404 servie quand un anonyme tape `/wp-admin/` (le 
   404 affichait à tort le menu du site dupliqué + sticky header). Ça touchait votre
   cas aussi puisque vous êtes en redirect vers `/wp-admin/`.
 * Pour le 404 sur `admin.monsupersite.com/wp-admin/` après login, j’ai investigué
   en reproduisant votre setup en local (siteurl admin.X.local, home X.local). Conclusion:**
   le code Login Armor V2.1.9/V2.1.10 fonctionne correctement** — quand le navigateur
   envoie ses cookies d’auth (`wordpress_logged_in_*` + `wordpress_sec_*`) sur `
   admin.monsupersite.com/wp-admin/`, Login Armor laisse passer la requête, WordPress
   charge l’admin normalement.
 * Le 404 que vous voyez signifie donc que **vos cookies d’auth ne sont pas envoyés
   à `admin.monsupersite.com`** par votre navigateur. C’est typique d’une config
   multisite headless où `COOKIE_DOMAIN` n’est pas défini avec le wildcard sous-
   domaine. Sans cette définition, WordPress crée le cookie scopé sur le hostname
   exact où vous vous êtes connecté, et il n’est plus envoyé sur les autres sous-
   domaines.
 * Solution à tester : ajoutez dans votre `wp-config.php` (avant la ligne `/* That's
   all, stop editing! */`) :
 *     ```wp-block-code
       define( 'COOKIE_DOMAIN', '.monsupersite.com' ); // remplacez par votre domaine, le point initial est important
       ```
   
 * Le `.` initial autorise le cookie sur tous les sous-domaines (`admin.monsupersite.
   com`, `monsupersite.com`, et tout autre `*.monsupersite.com`). Reconnectez-vous
   via `admin.monsupersite.com/<votre-slug>/` après ce changement, le redirect vers`/
   wp-admin/` devrait passer.
 * Si ça ne suffit pas (par exemple si un plugin tiers force un autre `COOKIE_DOMAIN`),
   je peux aussi vous fournir un mu-plugin de debug qui dump l’état des cookies 
   au moment de la requête sur `/wp-admin/`. Dites-moi.
 * Merci encore pour le retour, ça a directement déclenché V2.1.9 + V2.1.10 sur 
   WP.org.
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[Login Armor] URL Hide Login](https://wordpress.org/support/topic/url-hide-login/)
 *  Plugin Author [wpformation](https://wordpress.org/support/users/wpformation/)
 * (@wpformation)
 * [1 week ago](https://wordpress.org/support/topic/url-hide-login/#post-18899498)
 * Bonjour graphandco,
 * Merci pour ce retour très précis : c’est exactement le cas limite qu’on ne voit
   qu’avec un setup headless réel.
 * Vous avez raison sur toute la ligne. Login Armor utilisait `home_url()` pour 
   générer l’URL de login alors que WordPress core lui-même utilise `site_url()`
   dans sa fonction `wp_login_url()`. C’est un héritage du fork d’origine du module
   Hide Login, et ça casse silencieusement dès que `siteurl` ≠ `home` (multisite
   headless, WordPress dans un sous-dossier `/wp/`, reverse-proxy avec `WP_HOME`
   ≠ `WP_SITEURL`). Sur les installs standard les deux valeurs sont identiques donc
   personne ne s’en rend compte.
 * **C’est corrigé en 2.1.9, publiée à l’instant sur WP.org.** Tout le flux Hide
   Login bascule sur `site_url()` (URL login, redirections, password-reset cookie
   scope, lostpassword, register, logout, lockout page, prévisualisation Settings).
   Côté multisite Network Admin, les liens “Dashboard” utilisaient déjà `get_site_url(
   $blog_id, $slug)`, ce qui était correct, donc rien à toucher de ce côté.
 * J’ai aussi ajouté un filtre `login_armor_login_url_base` au cas où vous auriez
   encore un setup plus exotique (3e hostname behind reverse-proxy, plugin de subdomain
   mapping qui réécrit l’admin URL) :
 *     ```wp-block-code
       add_filter( 'login_armor_login_url_base', function( $url, $path, $scheme, $slug ) {
           // $url contient site_url($path, $scheme) par défaut
           return 'https://votre-hostname-custom.com' . $path;
       }, 10, 4 );
       ```
   
 * Mettez à jour depuis Extensions > Mises à jour et l’URL de login devrait pointer
   sur `admin.monsupersite.com/<votre-slug>/` comme attendu. Je suis preneur d’un
   retour si quelque chose cloche.
 * Merci d’avoir signalé : c’est notre premier retour terrain sur du multisite headless
   avec Login Armor, et ça aurait pu rester silencieux longtemps.
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[OGEEAT] Short answer validation](https://wordpress.org/support/topic/short-answer-validation/)
 *  Plugin Author [wpformation](https://wordpress.org/support/users/wpformation/)
 * (@wpformation)
 * [2 weeks ago](https://wordpress.org/support/topic/short-answer-validation/#post-18892969)
 * Merci de ton retour. Je vais regarder ça et voir si je peux l’intégrer nativement
   en détectant ce qui est utilisé en termes de builder
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[OGEEAT] Organisation detection](https://wordpress.org/support/topic/organisation-detection/)
 *  Plugin Author [wpformation](https://wordpress.org/support/users/wpformation/)
 * (@wpformation)
 * [3 weeks, 5 days ago](https://wordpress.org/support/topic/organisation-detection/#post-18882037)
 * Hi martineva,
   Thank you for your kind words, and congratulations on reaching 
   11/12 so quickly!
 * You’ve found a genuine bug : the GEO score check was looking for the organization
   data under the wrong internal key, so it could never detect it even when everything
   is properly configured.
 * I checked your site and I can confirm that everything is actually working perfectly
   on the front-end:
 * Your Organization schema (ProfessionalService) is properly generated with your
   name, address, phone, logo, sameAs, geo coordinates, etc.
   Your Person schema 
   for your author profile is there tooThe Article schema correctly links author
   => publisher => organizationOGEEAT properly defers Open Graph to Yoast, no conflictsSo
   the only issue is the GEO score display : it shows 11/12 instead of 12/12. Your
   actual SEO structured data is already complete and correct.
 * I’ve already fixed it and it will be included in the next update (v2.2.1). In
   the meantime, you can safely ignore that one missing point : your organization
   is properly detected by search engines and AI.
 * Thanks for reporting this, first bug report and it’s a real one!
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[Microsoft Clarity] “Please setup Clarity” notification is always displayed](https://wordpress.org/support/topic/please-setup-clarity-notification-is-always-displayed/)
 *  Thread Starter [wpformation](https://wordpress.org/support/users/wpformation/)
 * (@wpformation)
 * [3 years, 2 months ago](https://wordpress.org/support/topic/please-setup-clarity-notification-is-always-displayed/#post-16475835)
 * Thanks it works now 😉
 *   Forum: [Reviews](https://wordpress.org/support/forum/reviews/)
    In reply to:
   [[WPS Hide Login] No support](https://wordpress.org/support/topic/no-support-456/)
 *  Plugin Contributor [wpformation](https://wordpress.org/support/users/wpformation/)
 * (@wpformation)
 * [5 years ago](https://wordpress.org/support/topic/no-support-456/#post-14341673)
 * As written in the plugin description : This plugin is only maintained, which 
   means we do not guarantee free support. Consider reporting a problem **and be
   patient**.
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[Matomo Analytics - Powerful, Privacy-First Insights for WordPress] Matomo Widget on dashbooard](https://wordpress.org/support/topic/matomo-widget-on-dashbooard/)
 *  Thread Starter [wpformation](https://wordpress.org/support/users/wpformation/)
 * (@wpformation)
 * [5 years, 1 month ago](https://wordpress.org/support/topic/matomo-widget-on-dashbooard/#post-14237069)
 * Hi [@thomas](https://wordpress.org/support/users/thomas/),
    Thanks for your reply
   I’ve found the “pin” icon in top right of the report
 * In fact, my resquest was the same as [https://github.com/matomo-org/wp-matomo/issues/323#issuecomment-660842071](https://github.com/matomo-org/wp-matomo/issues/323#issuecomment-660842071)
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[Complianz - GDPR/CCPA Cookie Consent] How to avoid cookie wall ?](https://wordpress.org/support/topic/how-to-avoid-cookie-wall/)
 *  Thread Starter [wpformation](https://wordpress.org/support/users/wpformation/)
 * (@wpformation)
 * [5 years, 1 month ago](https://wordpress.org/support/topic/how-to-avoid-cookie-wall/#post-14232075)
 * Thank you,
    it would be great !
 * Do not hesitate to notify me of this update so that I can edit my post about 
   it : [Complianz Tuto](https://wpformation.com/tutoriel-complianz-gdpr-ccpa-wordpress/)
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[Complianz - GDPR/CCPA Cookie Consent] How to avoid cookie wall ?](https://wordpress.org/support/topic/how-to-avoid-cookie-wall/)
 *  Thread Starter [wpformation](https://wordpress.org/support/users/wpformation/)
 * (@wpformation)
 * [5 years, 1 month ago](https://wordpress.org/support/topic/how-to-avoid-cookie-wall/#post-14232013)
 * Hello Jarno,
    Thanks for your reply !
 * Yes I disabled Complianz because more than half of my Google Analytics statistics
   were not counted ^^
 * That’s why I wouldn’t put a cookie notice plugin back in place before I have 
   this type of script available.
 * Regards,
    Fabrice
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[Complianz - GDPR/CCPA Cookie Consent] How to avoid cookie wall ?](https://wordpress.org/support/topic/how-to-avoid-cookie-wall/)
 *  Thread Starter [wpformation](https://wordpress.org/support/users/wpformation/)
 * (@wpformation)
 * [5 years, 1 month ago](https://wordpress.org/support/topic/how-to-avoid-cookie-wall/#post-14213722)
 * Thank you for your feedback, I already managed to do what I wanted to, thanks
   to your advice. However a script to close the banner on scroll or a timer would
   be a significant bonus. I do know what it means regarding to France new law.
 * And if it was possible to have an option so that cookies are accepted by default,
   because many users do not choose anything and therefore no more statistics concerning
   them
 * Regards,
    Fabrice
    -  This reply was modified 5 years, 1 month ago by [Jan Dembowski](https://wordpress.org/support/users/jdembowski/).
    -  This reply was modified 5 years, 1 month ago by [wpformation](https://wordpress.org/support/users/wpformation/).
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[WPS Hide Login] Locked out of my site](https://wordpress.org/support/topic/locked-out-of-my-site-28/)
 *  Plugin Contributor [wpformation](https://wordpress.org/support/users/wpformation/)
 * (@wpformation)
 * [8 years, 2 months ago](https://wordpress.org/support/topic/locked-out-of-my-site-28/#post-10018485)
 * Just read the FAQ
    [https://wordpress.org/plugins/wps-hide-login/#i%20forgot%20my%20login%20url](https://wordpress.org/plugins/wps-hide-login/#i%20forgot%20my%20login%20url)!

Viewing 15 replies - 1 through 15 (of 27 total)

1 [2](https://wordpress.org/support/users/wpformation/replies/page/2/?output_format=md)
[→](https://wordpress.org/support/users/wpformation/replies/page/2/?output_format=md)