Sujet fermé
Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5

[Résolu]Récupérer variable d'une autre instance de module dans mm page
#1

Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: #1.10.3
#~ Url du site :
#~ Hébergeur / Soft :
#~ Informations Système :
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~



Bonjour,

Je suis en train de chercher une méthode propre pour récupérer une valeur passée à l'appel d'un module (appel réalisé via un lien créé par $this->CreateFrontendLink).

J'ai besoin d'une valeur passée dynamiquement dans une action d'une autre instance du même module.

Il s'agit en fait de l'ID du détail du contenu à afficher. Et j'aimerais en quelque sorte faire une variable "globale" pour tous les modules de la page en cours.

Est-ce que cette pratique est possible ? Et si oui, comment ? J'ai vu que les valeurs étaient toutes dans $_REQUEST mais je n'ai pas trop envie d'aller chipoter en direct dans cette variable.

D'avance un grand merci !

www.web-ep.be - Développeur Web Freelance - Développeur/Intégrateur CMS Made Simple (création de sites, développement de modules/plugins/templates sur mesure), spécialisé dans les sites pour l'immobilier.
#2

tout est toujours disponible dans $params[]

regarde si ca te convient
#3

Justement non ;-).

$params te donne les paramètres passés à l'instance courante du module, pas les paramètres passés à d'autres instances du module.

Pour me dépanner, à défaut de rien et sans avoir le temps de chercher pendant des jours, j'ai écrit le code suivant (mais qui d'un point de vue conceptuel n'est pas une solution recommandable) :

Code :
[== PHP ==]
$estate_id = '';
$lang = '';

// get estate_id
foreach ($_REQUEST as $key=>$val)
{
    if(preg_match("/".preg_quote('estate_id') .'$/', $key))
    {
        $prefix = substr($key, 0, 7);
        
        if(isset($_REQUEST[$prefix.'module']))
        {
            $module = $_REQUEST[$prefix.'module'];
        
            if($module === $this->GetName() && $_REQUEST[$prefix.'action'] === 'estate_view')
            {
                $estate_id = $_REQUEST[$prefix.'estate_id'];
                $lang = $_REQUEST[$prefix.'lang'];
            }
        }
    }
}

Mais c'est vraiment du dépannage quoi...

www.web-ep.be - Développeur Web Freelance - Développeur/Intégrateur CMS Made Simple (création de sites, développement de modules/plugins/templates sur mesure), spécialisé dans les sites pour l'immobilier.
#4

ouais, je vois pas comment faire du coup Sad
#5

Ok... Bah si quelqu'un a une meilleur solution ;-).

La mienne est barbare mais à le mérite d'exister...

www.web-ep.be - Développeur Web Freelance - Développeur/Intégrateur CMS Made Simple (création de sites, développement de modules/plugins/templates sur mesure), spécialisé dans les sites pour l'immobilier.
#6

Et bien voila. Ma fonctionnalité est terminée et le module est maintenant entièrement multilingue. J'ai couplé mon module à MleCMS pour pouvoir switcher d'une langue à l'autre au sein d'un même contenu. L'output se fait avec des url réécrites et sur des pages différentes.

www.web-ep.be - Développeur Web Freelance - Développeur/Intégrateur CMS Made Simple (création de sites, développement de modules/plugins/templates sur mesure), spécialisé dans les sites pour l'immobilier.
Sujet fermé


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)