Zum Inhalt springen

Unvollständige Links über Link-Wizard

Erstellt am 3. September 2007 · 12 Antworten · letzte Antwort am 3. September 2007

Tags: TCA, Links, Frage

SirRuddy ·

Hallo, ich habe eine eigene Extension geschrieben, in der ich einen Link angeben möchte. Zusätzlich verwende ich realURL. In der TCA verwende ich folgeneden Code dafür (erstellt durch Kickstarter):

[...]
"angebotslink" => Array (		
			"exclude" => 1,		
			"label" => "LLL:EXT:t6bildpods/locallang_db.xml:tx_t6bildpods_main.angebotslink",		
			"config" => Array (
				"type"     => "input",
				"size"     => "15",
				"max"      => "255",
				"checkbox" => "",
				"eval"     => "trim",
				"wizards"  => array(
					"_PADDING" => 2,
					"link"     => array(
						"type"         => "popup",
						"title"        => "Link",
						"icon"         => "link_popup.gif",
						"script"       => "browse_links.php?mode=wizard",
						"JSopenParams" => "height=300,width=500,status=0,menubar=0,scrollbars=1"
					)
				)
			)
		),
[...]

Wenn nun das Link-PopUp aufgeht, wähle ich meine Seite wie gewohnt aus, und bekomme nur die ID der Seite angezeigt (z.B.: 10). Dies erzeugt nun im Frontent (zusammen mit der baseURL) einen Link wie folgt:

http://www.meineurl.de/10

Was natürlich ins Nirvana geht. Nun meine Frage muss ich meiner Extension noch "beibringen" realURL zu verwenden? Oder wie bekomme ich zumindest den Prefix ../index.php?id= vor die 10?

Wenn ich Links mit dem RTE erstelle funktioniert das einwandfrei, daher denke ich das es irgendwie mit meiner Extension zusammenhängt. Ich bin mir also sicher das realURL selbst richtig läuft.

Gruß
SirRuddy

SirRuddy ·

Hallo just2b,

über das Input-Field mit der vorangestellten Checkbox, und dem Icon uber das sich dann der Link-Wizard öffnet. (Wie unter TCA-Code beschrieben.)

Gruß SirRuddy

SirRuddy ·

Während der Datenbankabfrage:

(class.tx_t6bildpods_pi1.php)

$res = $GLOBALS["TYPO3_DB"]->exec_SELECTquery("*", "tx_t6bildpods_main", "deleted = 0 AND hidden = 0 AND (".$uid_where.") AND pid = '".$t6bildpodsPageId."'");
		while ($row = $GLOBALS["TYPO3_DB"]->sql_fetch_assoc($res)) {

[...]
$marker["###VERLINKUNG###"] = $row["angebotslink"];
[...]
}

Wie ich eben sehe hat steffenk da einen Eintrag gepostet den ich gleich mal testen werden 🙂

Gruß
SirRuddy

SirRuddy ·

Hallo steffenk und just2b,

ich habe meinen letzten Eintrag etwas geändert um die Extension-Namen auf reale Bedingungen anzupassen. Sinngemäß (auf meinen Fall) würde ich die Datenbankabfrage jetzt so ändern:

[...]
$marker["###VERLINKUNG###"] = $this->cObj->typolink('der Link',array('parameter'=>$row['angebotslink']));
[...]

Was kann ich mir nun unter 'der Link' vorstellen?

Gruß
SirRuddy

SirRuddy ·

Okay das mit dem 'Link' war 'ne blöde Frage. Aber so ganz ist mein Problem noch nicht gelöst! Wie kombiniere ich die Beiden (Marker und Link) denn nun? So geht das nicht:

$this->cObj->typolink($marker["###VERLINKUNG###"],array('parameter'=>$row['hyperlink']));

Gruß
SirRuddy

steffenk ·

der erste Parameter ist der Linktext. Du musst natürlich den Link Deinem Marker zuweisen, den Linktext nimmst Du entweder aus der DB oder aus der Sprachdatei

$marker["###VERLINKUNG###"]=$this->cObj->typolink('LINKTEXT',array('parameter'=>$row['hyperlink']));
SirRuddy ·

Sehr schön steffenk! - Das habe ich jetzt geschnallt. Nachdem ich das Hardcodierte

<a href="###VERLINKUNG###" title="###">...

aus meinem HTML-Template entfernt habe wird der Link auch angezeigt. Nur steht da natürlich jetzt LINKTEXT wo eigentlich mein Inhalt aus:

$marker["###CONTENT5###"] = $row["spalte_5"];

stehen soll. - Wie bekomme ich das zusammen?

Gruß
SirRuddy

just2b ·

da steht aber wer auf der leitung?

$this->cObj->typolink($row["spalte_5"],array('parameter'=>$row['hyperlink']));

georg

SirRuddy ·

Ich hab's:

$marker["###VERLINKUNG###"]=$this->cObj->typolink($row["spalte_5"],array('parameter'=>$row['hyperlink']));

Danke!