CCK Text als Link
am 22.06.2011 - 06:53 Uhr in
Hallo,
habe eine kurze Frage, bei der ich nicht so recht weiterkomme. Ich möchte gerne bei meinem Inhaltstypen ein Feld für einen Link einfügen. Dabei sollen die Ersteller aber nur die Adresse eingeben müssen, den Rest möchte ich gerne im Template File rendern. Ich habe dazu ein Textfeld eingefügt, welches die Bezeichnung "field_deeplink" trägt. Zum Darstellen in einer Table View habe ich mir den folgenden Code zurechtgestrickt:
<?php echo "<a href=\"".$row[field_deeplink_value]."\"><img src="meinbild.jpg" /></a>"; ?>
Das Problem ist aber, dass der Link im Frontend dann auf die Adresse [meine URL] (dann folgen einige Elemente wie <span>
und dann erst der) [Deeplink] Wert.
Hat einer eine Idee, wie ich diese Decoration deaktiviern kann?
Das Links-Modul möcht ich eher nicht verwenden, da ich die Eingabe auf eine Information (die URL) beschränken möchte, damit die Autoren da nicht noch mehr Sachen eingeben müssen.
Danke für eure Hilfe!
- Anmelden oder Registrieren um Kommentare zu schreiben
Link
am 22.06.2011 - 07:13 Uhr
Hallo.
Installiere Dir das Modul [do:devel Devel] und schau Dir mal an, was so alles in
$row
an Daten enthalten ist.Ausserdem solltest Du nicht
$row[field_deeplink_value]
verwenden, sondern$row['field_deeplink_value']
(das Erstere ist falsch, da es keine Konstante namens field_deeplink_value gibt).Und schau Dir mal die Funktionen [api:theme_image:6] und [api:l:6] an. Damit erstellt man innerhalb von Drupal Links und Bilder "richtig".
Beispiel:
<?php
$url = ...;
$img = theme(
'image',
drupal_get_path('theme', 'MEINTHEME') .'/images/meinbild.jpg',
t('alt text'),
t('image title')
);
print l($img, $url, array(
'html' => TRUE,
'attributes' => array('title' => t('link title'))
));
?>
Tipp: Beachte die Verhaltensregeln des DrupalCenter.
Perfekt. Vielen Dank!
am 22.06.2011 - 07:16 Uhr
Perfekt. Vielen Dank!
Link statt Links
am 22.06.2011 - 07:21 Uhr
Das Links-Modul möcht ich eher nicht verwenden, da ich die Eingabe auf eine Information (die URL) beschränken möchte, damit die Autoren da nicht noch mehr Sachen eingeben müssen.
Dann nimm doch stattdessen das Modul Link, da kannst Du ein CCK-Feld für den DeepLink mit verschiedenen Optionen definieren, auch so, dass die Autoren nur die URL eingeben müssen. Auch bei der Anzeige hast Du diverse Möglichkeiten. Ist doch komfortabler als es im Template selbst zu erarbeiten.
Nachtrag: Und wieder war ich zu langsam! :-(
Gruss Roger
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen (1. Posting vom Thema) <==> das erleichtert das finden von Lösungen
Habe jetzt das Modul Link
am 22.06.2011 - 17:46 Uhr
Habe jetzt das Modul Link eingebunden und bin draufgekommen, warum die Ausgabe nicht passt, hab aber noch keine Lösung dafür.
Die Ausgabe der Seite erfolgt in einer View (in Tabellenform). Das View Modul ruft wohl die Funktion theme_link_formatter_url() auf, welche dann die ganzen Elemente einfügt. Weiß jemand, wie ich das verhindern kann?