Zum Inhalt springen

code feld anzeigen/ ausgnagspunkt lesen

Erstellt am 19. Februar 2003 · 10 Antworten · letzte Antwort am 28. Mai 2003

Tags: Frage

marcoow ·

hallo,

1.: ich habe ein eigenes frontend plugin mit dem kickstarter gemacht, für das wird aber keine "CODE"- Feld angezeigt. Das bräuchte ich.
2.: wie kann ich in meiner extension (also im php) den wert von "Ausgangspunkt" ausleesen? Den kann ich ja im setup des frontend- plugin setzen.

freeman2000 ·

Hi marcoow,

zu 1: Wenn das CODE-Feld im Backend nicht angezeigt wird, kannst du es einblenden, indem du in der "ext_tables.php" im jeweiligen Extension-Ordner die "excludeList" änderst.

zu2: Guck dir mal pi1 der Extension "newloginbox" genauer an. Da wird das gemacht.

Viele Grüße,
Oliver Moser

jdk ·

Hallo,

ich habe mich jetzt einen halben Tag mit der "newloginbox" Extension beschäftigt und nicht herausbekommen, wie ich den "Ausgangspunkt" auslesen kann. Hat jemand mal einen heißen Tipp für mich?

Danke,
Dennis

tmallee ·

Hi,

wie es die newloginbox ausliest, kann ich Dir leider nicht sagen. Dafür kann ich Dir ein Beispiel mit dem News Plugin nennen (wobei sich die Vorgehensweise der Module beim Ausgangspunkt nicht unterscheiden wird 😉).
In ext/tt_news/pi/class_tx_ttnews.php findest Du in Zeile 91, 92 die Bearbeitung des Feldes "Ausgangspunkt" des News BE. Der Wert befindet sich offenbar in $GLOBALS["TSFE"]->id (bei einem Wert) oder
$this->config["pid_list"] bei einer Liste von Werten.
Lass Dir in Deinem Plugin einfach mit Debug alle möglichen Werte mit debug() anzeigen und vergleiche die Werte mit Deinen Einstellungen im BE Deines Plugins.

Gruß

Thomas

jdk ·

Hallo,

$this->config["pid_list"] enthält - egal was ich mache - aber immer nur einen Wert.

debug('pid_list: '.$this->config["pid_list"]);
debug('a: '.$pid_list_arr);
debug('b: '.$pid_list_arr[0]);
debug('c: '.$pid_list_arr[1]);

$pid_list_arr[0] enhält die aktuelle pid. $pid_list_arr[1] ist leer - obwohl sogar zwei Ausgangspunkte angegeben sind. Muss ich noch irgendetwas tun, damit das Feld Ausgangspunkt überhaupt zur Verfügung steht?

Danke,
Dennis

tmallee ·

Hi,

in Zeile 91 wird dieses Feld gefüllt:

$this->config["pid_list"] = trim($this->cObj->stdWrap($this->conf["pid_list"],$this->conf["pid_list."]));

Sieh Dir am besten mal die Klasse komplett an. Was bekommst Du als Ausgabe bei den $GLOBLAS["TSFE"]->id ? $this->config["pid_list"] wird in Zeile 92 für den Fall einer leeren $this->conf["pid_list"] (s. Zeile 91) mit dem GLOBALS Wert gefüllt. Was bekommst Du bei debug($this->conf["pid_list"]) ?

jdk ·

Hallo,

überall bekomme ich genau eine vierstellige PID ausgegeben ($this->conf["pid_list"] und $GLOBALS["TSFE"]->id) obwohl bei $this->conf["pid_list"] drei ausgegeben werden müssten.

Muss ich im Setup irgendetwas eintragen, damit das übergeben wird?

Dennis

tmallee ·

Meines Wissens nach nicht. Da diese Werte in das Plugin Formular im Backend eingegeben werden, sollten Sie einfach von der Klasse abgerufen werden können. Ich schreibe gerade selbst ein Plugin und befasse mich mit dem Thema. Sobald ich eine Antwort habe, informieren ich Dich. Kann aber schlimmstenfalls Anfang der nächsten Woche werden.

Gruß

Thomas

tmallee ·

So komme ich an den "Ausgangspunkt" meines Plugins dran:

debug($this->cObj->data["pages"]);

"pages" ist das entsprechende Datenbankfeld in tt_content für den aktuellen Datensatz (=> aktuelle uid). Du kannst so auch jedes andere DB Feld in tt_content ansprechen. Den kompletten Eintrag gibts mit
debug($this->cObj->data);

Das müsste Dir eigentlich weiterhelfen. Vielleicht gibt es noch eine elegantere Methode, ist mir aber leider (noch) nicht bekannt.

Grüße

Thomas

tmallee ·

Um das ganze noch zu vervollständigen:

damit der entsprechende Eintrag einfach über das $this->conf[] bzw. $this->config[] augerufen werden kann, muss tatsächlich etwas im Setup gesetzt werden:

in der Datei "ext_typoscript_setup.txt" folgenden Eintrag hinzufügen:

pid_list.field = pages

Dann kann der Inhalt des DB Feldes "pages" der aktuellen uid über das Array $this->conf["pid_list"] angesprochen werden. Jetzt sollte Deinem (und meinem ;-)) Plugin nix mehr im Wege stehen!

Gruß

Thomas