WPML
Statut
Ouvert
Signalé pour
WPML Multilingual CMS 4.6.11
Étiquettes de sujet
Bug

Aperçu de l’anomalie

Si vous utilisez le bloc Sélecteur de langue de l’éditeur Gutenberg et son option Clic sur le menu déroulant, vous remarquerez qu’en cliquant en dehors de la zone du menu déroulant, celui-ci ne se ferme pas comme prévu.

Solution de contournement

Assurez-vous d’avoir une sauvegarde complète de votre site avant de continuer.


  • Ouvrez le fichier …/wp-content/plugins/sitepress-multilingual-cms/classes/block-editor/Blocks/LanguageSwitcher/Render.php.

  • Cherchez la ligne 123.

  • Remplacez :
    				if ( $dpFirstItem ) {
    					$dpFirstItem->setAttribute(
    						'onclick',
    						"(()=>{const ariaExpanded = this.children[0].getAttribute('aria-expanded');
    					this.children[0].setAttribute('aria-expanded', ariaExpanded === 'true' ? 'false' : 'true');})(this);"
    					);
    				}

  • Par :
    if ($dpFirstItem) {
        $dpFirstItem->setAttribute(
            'onclick',
            "(()=>{
                const ariaExpanded = this.children[0].getAttribute('aria-expanded');
                this.children[0].setAttribute('aria-expanded', ariaExpanded === 'true' ? 'false' : 'true');
                
                if (ariaExpanded !== 'true') {
                    const expandedItem = this;
                    const closeExpandedItem = (event) => {
                        if (!expandedItem.contains(event.target)) {
                            expandedItem.children[0].setAttribute('aria-expanded', 'false');
                            document.removeEventListener('click', closeExpandedItem);
                        }
                    };
                    document.addEventListener('click', closeExpandedItem);
                }
            })(this);"
        );
    }

Toutes les anomalies connues →