[TYPO3-german] mehrere aahbook Gästebücher in einer Installation

Kleini kleini at freakmail.de
Thu Nov 19 09:01:48 CET 2009


Hallo Philipp,

ich kann in dem Codeschnipsel erstmal keinen Fehler entdecken. Wenn ein 
General Storage und Ordner im Ausgangspunkt angegeben sind, werden alle 
Einträge aus allen diesen Ordnern angezeigt (1. Teil der 
if-else-Verzweigung).
Im zweiten Fall, wenn kein General Storage aber Einträge im 
Ausgangspunkt angegeben sind, werden die Einträge im Ausgangspunkt 
genommen und zusätzlich die Einträge unterhalb der Seite, auf der das 
Gästebuch liegt.
Im dritten Fall wird einfach nur die General-Storage-Angabe verwendet 
und im allgemeinen Fall am Ende werden alle Einträge unterhalb der 
Seite, auf der das Gästebuch liegt, selektiert.

Sollte die Extension einen Fehler haben, müsste der woanders liegen. 
Aber zunächst, wie sieht die Struktur deines Web aus?
Ich habe mal drei einfache Strukturen dargestellt, wenn bei dir die 
Dritte passt, dann ist der Fehler klar.
Am einfachsten ist es also, wenn die Gästebucheinträge unterhalb der 
jeweiligen Seite, auf der das jeweilige Gästebuch liegt, gespeichert 
werden (Struktur1). Wenn du eine Gästebuchseite für alle Domains 
verwendest, sollten die Sys-Ordner für die jeweiligen Gästebücher im 
Seitenbaum nicht unterhalb der Gästebuchseite liegen (ungünstige 
Struktur 3), sondern in einem anderen Zweig (Struktur 2).

Struktur 1:
Root
   |-- Domain1
   |      |--Gästebuch1
   |            |--Eintrag1
   |            |--Eintrag2
   |            |-- [...]
   |-- Domain2
   |      |--Gästebuch2
   |            |--Eintrag1
   |            |--Eintrag2
   |            |-- [...]

Struktur 2:
Root
   |-- Domain1
   |      |--Mount des Gästebuchs
   |      |--GästebuchOrdner1
   |            |--Eintrag1
   |            |--Eintrag2
   |            |-- [...]
   |-- Domain2
   |      |--Mount des Gästebuchs
   |      |--GästebuchOrdner2
   |            |--Eintrag1
   |            |--Eintrag2
   |            |-- [...]
   |--Gästebuchseite

Aber _nicht_ so:

Root
   |-- Domain1
   |      |--Mount des Gästebuchs
   |-- Domain2
   |      |--Mount des Gästebuchs
|--Gästebuchseite
   |      |--GästebuchOrdner1
   |            |--Eintrag1
   |            |--Eintrag2
   |            |-- [...]
   |      |--GästebuchOrdner2
   |            |--Eintrag1
   |            |--Eintrag2
   |            |-- [...]

Ich hoffe, geholfen zu haben,

Gruß

Stefan



Philipp Holdener schrieb:
> Philipp Holdener schrieb:
>
>
>>
>> $res = $GLOBALS['TYPO3_DB']->sql(TYPO3_db, 'SELECT storage_pid FROM 
>> pages WHERE uid = '.$GLOBALS['TSFE']->id);
>>
>>         if ($general_storage_pid != 0 and $this->cObj->data['pages'] 
>> != '') {
>>             if 
>> (strpos($this->cObj->data['pages'],$general_storage_pid)  > -1) {
>>                 $storage_pid = $this->cObj->data['pages'];
>>                 $parts = explode(',', $storage_pid);
>>                 $storage_pid = implode(' OR pid = ', $parts);
>>             } else {
>>                 $storage_pid = 
>> $this->cObj->data['pages'].','.$general_storage_pid;
>>                 $parts = explode(',', $storage_pid);
>>                 $storage_pid = implode(' OR pid = ', $parts);
>>             }
>>         } elseif ($general_storage_pid == 0 and 
>> $this->cObj->data['pages'] != '') {
>>             if 
>> (strpos($this->cObj->data['pages'],$GLOBALS['TSFE']->id)  > -1) {
>>                 $storage_pid = $this->cObj->data['pages'];
>>                 $parts = explode(',', $storage_pid);
>>                 $storage_pid = implode(' OR pid = ', $parts);
>>             } else {
>>                 $storage_pid = 
>> $this->cObj->data['pages'].','.$GLOBALS['TSFE']->id;
>>                 $parts = explode(',', $storage_pid);
>>                 $storage_pid = implode(' OR pid = ', $parts);
>>             }
>>         } elseif ($general_storage_pid != 0 and 
>> $this->cObj->data['pages'] == '') {
>>             $storage_pid = $general_storage_pid;
>>         } else {
>>             $storage_pid = $GLOBALS['TSFE']->id;
>>         }
>>
>>
>>
>
>
> was muss man in dem Code Abschnitt ändern damit NUR die Einträge auf 
> der unter Ausgangspunkt definierten Seite verwendet werden?
> Ich hätte gerne nur einträge von der Seite auf der sich das Plugin 
> befindet.
> Das andere mit dem General Storage scheint ja nicht zu funktionieren. 
> Egal was ich dort eingebe - es kommen immer alle Einträge von allen 
> Domains :-(
>
> Besten Dank schon mal
>
> Gruss
> PHilipp
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
>
>



More information about the TYPO3-german mailing list