[TYPO3-german] Zwei Extensions verknüpfen

Julian Lamberty julian.lamberty at mytum.de
Mon Nov 5 18:10:13 CET 2007


Das "Problem" liegt daran, dass ichs noch ned ausprobiert hab ;) Wohin 
muss ich den Code denn setzen und was macht der genau?

Danke schonmal
Julian

christian oettinger schrieb:
> Sorry, zwei Tage nicht gemeldet! Ja, mein Problem war, dass ich dachte, 
> Du hast die Extensions selbst geschrieben. Ändert ja aber eigentlich 
> nichts daran, Du bist ja bereit an den Code zu gehen, richtig?
>
> Was ist das Problem, mit der Lösung aus meinem letzten Post:
>  >> Das folgende ist selbst nur gefunden, ich hoffe es funktioniert. Es
>  >> ruft ein anderes Plugin auf:
>  >>
>  >> require_once
>  >> (t3lib_extMgm::extPath("EXTKEY")."pi1/class.tx_EXTKEY_pi1.php");
>  >> $tx_EXTKEY_pi1 =& new tx_EXTKEY_pi1 ();
>  >> $tx_EXTKEY_pi1->main (&$this->content, &configuration_stuff);
>
> viele Grüße!
>
> oe
>
>
>   
>> Ich weiß nicht, ob wir nicht aneinander vorbeireden ;) Vielleicht hab 
>> ichs etwas umständlich geschildert, daher noch ein Versuch :)
>>
>> OK, also mein Grund, die Plugins zu verschachteln ist:
>>
>> Sixpack bietet eine hervorragende Publikationsverwaltung, BZD Staff 
>> Directory selbiges für Mitarbeiter.
>>
>> Ich lege also eine "Detail Page" an auf der ein Mitarbeiter dargestellt 
>> wird (durch das platzieren des BZD Plugins). Das Problem ist, dass das 
>> BZD Plugin eben nicht jedem Mitarbeiter eine eigenene Seite zuordnet, 
>> sondern alle auf EINER festen Typo3 Page darstellt. Wenn ich das Sixpack 
>> Plugin auf der selben Seite platziere und den "AuthorView" auswähle, 
>> muss ich da einen festen Autor wählen (ob das nun ein Name oder eien UID 
>> ist, ist erstmal egal).
>>
>> Deswegen war meine Idee, die Ausgabe des Sixpack Plugins aus dem BZD 
>> Plugin aufzurufen und dabei dynamisch den Autor zu übergeben und dann 
>> nur das BZD Plugin auf der "Detail Page" zu platzieren.
>>
>> Schwierig zu schildern, aber das Problem besteht also darin, die 
>> Funktion zum generieren des Sixpack Authorviews in das BZD Plugin zu 
>> integrieren. Das müsste doch möglich sein, oder?
>>
>> Gruß
>> Julian
>>
>> christian oettinger schrieb:
>>
>>     
>>> Wenn auf einer Seite ein plugin liegt, kannst Du diesem wie unten 
>>> beschrieben gezielt eine Variable übergeben. Wenn ein anderes Plugin 
>>> da auch liegt, dann gilt für dieses das selbe. Daraus ergeben sich 
>>> ganz viele Möglichkeiten. Du könntest etwa beide plugins auf der Seite 
>>> liegen haben und das eine gibt nichts aus, AUSSER es bekommt eine 
>>> spezielle Variable übergeben. Könnte das die Lösung für Dich sein? 
>>> Wahrscheinlich wäre das auch nur ein Umweg.
>>>
>>> Wenn Du innerhalb des einen plugins etwas ausgeben möchtest, ist es 
>>> für mich verwirrend das mit einem anderen Plugin zu machen. Aber Du 
>>> hast vermutlich einen Grund.
>>>
>>> Das folgende ist selbst nur gefunden, ich hoffe es funktioniert. Es 
>>> ruft ein anderes Plugin auf:
>>>
>>> require_once 
>>> (t3lib_extMgm::extPath("EXTKEY")."pi1/class.tx_EXTKEY_pi1.php");
>>> $tx_EXTKEY_pi1 =& new tx_EXTKEY_pi1 ();
>>> $tx_EXTKEY_pi1->main (&$this->content, &configuration_stuff);
>>>
>>>
>>> viele Grüße!
>>>
>>> oe
>>>
>>>
>>>  
>>>
>>>       
>>>> Das hilft schonmal etwas weiter, danke! Aber ich möchte keinen Link 
>>>> auf die Publikationen setzen sondern den AuthorView direkt auf der 
>>>> Seite ausgeben. Kann ich dir Funktion aus dem Sixpack Plugin, die für 
>>>> die Ausgabe verantwortlich ist, aus dem anderen Plugin aufrufen? Wenn 
>>>> ja, wie?
>>>>
>>>> Danke!
>>>> Julian
>>>>
>>>> christian oettinger schrieb:
>>>>
>>>>    
>>>>
>>>>         
>>>>> Hallo Julian,
>>>>>
>>>>> ich weiß nicht, ob ich ganz verstanden habe, ich versuch's mal:
>>>>> Die Author view von sixpack wird über den Namen des Autors 
>>>>> aufgerufen? Das wäre ungewöhnlich, normalerweise geht man über die 
>>>>> uid, das ist sicher. So oder so machst Du in sixpack eine DB-Abfrage 
>>>>> auf der Basis eines Werts, der übergeben wird. Und das kannst Du 
>>>>> auch von Deiner anderen Extension aus machen.
>>>>>
>>>>> Normalerweise wird so ein Wert übergeben als GET-Variable, Bsp:
>>>>> index.php?id=36&tx_sixpack_pi1[pubOfAuthor]=18
>>>>>
>>>>> im plugin ist $this->piVars['showUid'] in dem Fall "18" und das wird 
>>>>> benutzt um die Datenbankabfrage zu machen und nur die gewünschten 
>>>>> Resultate anzuzeigen
>>>>>
>>>>>
>>>>> So einen Link wie oben kannst Du auch aus dem anderen Plugin mit den 
>>>>> typo3-funktionen generieren, kein Problem.
>>>>>
>>>>> // HIER werden nur die zusätzlichen GET-Parameter festgelegt
>>>>> $additional_url = array();
>>>>> $additional_url[ 'tx_sixpack_pi1[showUid]' ] = GEWÜNSCHTE UID;
>>>>>
>>>>> // NUN wird der eigentliche Link generiert
>>>>> $oe_book2magazine_ausgabe .= $this->pi_linkToPage( TEXT DES LINKS , 
>>>>> PID DER SEITE , '' , $additional_url );
>>>>>
>>>>> Ebenso kannst Du auch den Namen statt der uid übergeben, unüblich 
>>>>> (wegen nicht automatisch unique, länger und eventuell nicht 
>>>>> URL-tauglich) aber möglich.
>>>>>
>>>>> hilft das irgendwie?
>>>>> ich hoffe!
>>>>>
>>>>> oe
>>>>>
>>>>>
>>>>>  
>>>>>
>>>>>      
>>>>>
>>>>>           
>>>>>> Hi!
>>>>>>
>>>>>> Ich nutze zwei Extensions um ein Verzeichnis von Mitarbeitern 
>>>>>> auszugeben: "bzd_staff_directory" für die persönlichen Seiten jedes 
>>>>>> Mitarbeiters und "sixpack" um Publikationen der Mitarbeiter zu 
>>>>>> verwalten/anzuzeigen.
>>>>>>
>>>>>> Jetzt würde ich gern auf jeder Seite eines Mitarbeiters dessen 
>>>>>> Publikationen ausgeben (nennt sich "Author View" bei Sixpack). Das 
>>>>>> Problem ist, dass es nicht für jeden Mitarbeiter eine eigene Seite 
>>>>>> gibt, sondern nur eine einzige "Detailseite", auf der der 
>>>>>> ausgewählte Mitarbeiter dargestellt wird. Wenn ich auf dieser 
>>>>>> Detailseite jetzt aber den Author View auswähle, muss ich einen 
>>>>>> festen Namen eingeben (in der Sixpack-Konfiguration) und somit 
>>>>>> würden auf jeder Seite nur die Publikationen eines bestimmten 
>>>>>> Mitarbeiters dargestellt.
>>>>>>
>>>>>> Ich brauche also irgendwie eine Möglichkeit, den Namen des Autors 
>>>>>> dynamisch an das Sixpack Plugin zu übergeben. Hat jemand eine Idee, 
>>>>>> wie man das angehen könnte? Evtl. die Sixpack-Funktionen aus dem 
>>>>>> Plugin für die persönlichen Seiten aufrufen mit entsprechenden 
>>>>>> Parametern?
>>>>>>
>>>>>> Oder hat vielleicht jemand ne ganz andere Lösung?
>>>>>>
>>>>>> Danke für eure Hilfe!
>>>>>> Gruß
>>>>>> Julian
>>>>>>
>>>>>>
>>>>>>             
>>>>>>             
>>>>> _______________________________________________
>>>>> TYPO3-german mailing list
>>>>> TYPO3-german at lists.netfielders.de
>>>>> http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
>>>>>         
>>>>>           
>>>>     
>>>>         
>>> _______________________________________________
>>> TYPO3-german mailing list
>>> TYPO3-german at lists.netfielders.de
>>> http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
>>>   
>>>       
>>
>>     
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.netfielders.de
> http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
>   




More information about the TYPO3-german mailing list