Ergebnis 1 bis 5 von 5

Thema: Modul wird immer doppelt ausgeführt

  1. #1
    Contao-Fan Avatar von dhe
    Registriert seit
    25.10.2010.
    Ort
    Esslingen a.N.
    Beiträge
    657

    Standard Modul wird immer doppelt ausgeführt

    Hallo Freunde,
    ich brauche eure Hilfe, da ich wohl ein Verständnisproblem habe.
    Ich habe eine Modul erstellt, das eine Adresse (via Google Geocode) in Koordinaten umwandelt, um dann entsprechende Mitglieder zu finden.
    Wenn ich jetzt zum testen in generate() oder compile() mal eine Ausgabe einfüge (z.b. print('test'), sehe ich im Quellcode die Ausgabe immer doppelt (auf der Seite mit dem Modul), aber auch einzeln auf jeder anderen Seite. So wie aussieht, wird mein Modul auf jeder Seite aufgerufen.
    Was mache ich falsch?

    config.php
    PHP-Code:
    array_insert($GLOBALS['FE_MOD']['miscellaneous'], 9, array
    (
        
    'npmembersearch' => 'neckarpixel\npmembermaps\memberSearch'
    )
    ); 
    autoload.php
    PHP-Code:
    ClassLoader::addNamespaces(array
    (
        
    'neckarpixel\npmembermaps',
    ));


    ClassLoader::addClasses(array
    (
        
    // Modules
        
    'neckarpixel\npmembermaps\memberSearch' => 'system/modules/npmembermaps/modules/memberSearch.php',
        
    'neckarpixel\npmembermaps\npMapLibs'    => 'system/modules/npmembermaps/modules/npMapLibs.php',
        
    ));

    TemplateLoader::addFiles(array
    (
        
    'mod_npmembersearch' => 'system/modules/npmembermaps/templates',
    )); 
    memberSearch.php
    PHP-Code:
    namespace neckarpixel\npmembermaps;

    class 
    memberSearch extends \Module
    {
        
    /**
         * Template
         * @var string
         */

        
    protected $strTemplate 'mod_npmembersearch';

        public function 
    generate()
        {

            if (
    TL_MODE == 'BE')        {

                
    $objTemplate = new \BackendTemplate('be_wildcard');
                
    $objTemplate->wildcard '### Member Search ###';
                
    $objTemplate->title $this->headline;
                
    $objTemplate->id $this->id;
                
    $objTemplate->link $this->title;
                
    $objTemplate->href 'contao/main.php?do=themes&table=tl_module&act=edit&id=' $this->id;
                
                return 
    $objTemplate->parse();

            }
            
            return 
    parent::generate();

        }

        protected function 
    compile(){

            global 
    $objPage;
            
    $this->import('npMapLibs''npLib');

            
    /* PROCESSING TEMPLATE DATA.... */

            
    $this->Template->id $this->id;
            print(
    'test');
        }

    Hat jemand eine Idee, wo mein Fehler liegen könnte? Braucht ihr noch weitere Infos?

    Grüße

  2. #2
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.051
    User beschenken
    Wunschliste

    Standard

    Na schau doch einfach mal ob du das Modul nicht über das Layout eingebunden hast, oder ob du nicht irgendwo noch einen HOOK nutzt über den das Modul aufgerufen wird, z.B. generatePage oder outputFrontendTemplate etc.
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

  3. #3
    Contao-Fan Avatar von dhe
    Registriert seit
    25.10.2010.
    Ort
    Esslingen a.N.
    Beiträge
    657

    Standard

    Alles nicht der Fall, weder im Layout noch nutzt das Modul irgendeinen Hook.
    Das komische ist, ich habe mir jetzt andere Module von anderen Entwicklern angeschaut, vom Prinzip her (bis auf die Komplexität) sehe ich keinen Unterschied.

    Hat sonst noch jemand eine Idee?

    Grüße

  4. #4
    Wandelndes Contao-Lexikon Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    10.518
    User beschenken
    Wunschliste

    Standard

    aber auch einzeln auf jeder anderen Seite.
    Dann muss es im Layout sein. In welchem Abschnitt taucht es denn auf jeder Seite auf? (Header,main, left, ...) Vielleichjt kommst du so an die Ursache ran.
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  5. #5
    Contao-Urgestein Avatar von Toflar
    Registriert seit
    15.06.2009.
    Beiträge
    4.467
    Partner-ID
    8667
    User beschenken
    Wunschliste

    Standard

    Anstatt
    PHP-Code:
    print_r('test'); 
    machst du einfach ein
    PHP-Code:
    debug_print_backtrace() 
    . Dann siehst du den Stacktrace und weisst woher die Calls kommen.
    Contao Core-Entwickler @terminal42 gmbh
    Wir sind Contao Premium-Partner!
    Für Individuallösungen kannst du uns gerne kontaktieren.
    PS: Heute schon getrakked?

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •