Hallo zusammen,
ich würde meine Links gerne als Liste darstellen, also mit dem Listenpunkt davor, wie stelle ich das am Besten an?
Danke schon mal
Achja, als Vorlage dient die "mod_linklist_simple"
Hallo zusammen,
ich würde meine Links gerne als Liste darstellen, also mit dem Listenpunkt davor, wie stelle ich das am Besten an?
Danke schon mal
Achja, als Vorlage dient die "mod_linklist_simple"
Hallo rednex,
die mitgelieferten Templates stellen die Links alle in geschachtelten DIVs dar, aber du kannst dir jederzeit ein eigenes Template machen .
Wie willst du denn die ganze Information in <li>s kriegen? Title, SubTitle und die Linkbeschreibung (die darf auch länglich sein), da muss man sich dann schon einschränken...
Aber wie dem auch sei - folgende Fragen:
Möchtest du <li> nur wegen des Punktes davor? Dann nimm doch einfach "mod_linklist", das malt dir schon ein Bullet davor (Weltkugel), das kannst du einfach per CSS ändern. Falls du keine eingebundenen Bilder im Linkeintrag willst, dann ändere das Template einfach entsprechend ab. Oder du machst dir eine Kopie von "mod_linklist_simple" und läßt vor jedem Link ein Bild ausgeben...
Willst du <li> wegen Barrierefreiheit oder ähnlichen Erwägungen, dann bleibt dir nur ein neues Template zu erstellen, das eben die Liste aus <ul><li> aufbaut.
Ich will damit nicht behaupten, dass <li>s in Bezug auf Barrierefreihei immer die bessere Lösung sind. Das ist sehr abhängig vom dargestellten Inhalt.
Hoffe das hilft dir, sonst frag ruhig weiter.
Gruß
folkfreund
Hallo folkfreund,
erst einmal danke für Deine Antwort(en)!
Ich brauche nur eine ganz simple Auflistung der Links. Titel, Url und Überschrift, mehr brauche ich nicht. Wie ich das ganze anstellen kann, weiß ich allerdings leider nicht, bin noch ziemlich neu in der Materie... im Moment benutze ich das "mod_linklist_simple" dafür.Zitat von folkfreund
Derzeit mache ich das wie folgt:
Titel ist klar, dort gebe ich z.B. folgendes an: "Tagesschau: Titel des Artikels/Bericht/whatever", die Überschrift ist einfach nur das Datum, dann noch die Url und fertig.
So sieht das ganze dann z.B. aus:
Ich hätte das allerdings ganz gerne aus optischen Gründen ca. so:
Nur auf der Umsetzung hapert es irgendwie... :/10.01.2011
Hi rednex,
ich bin ein Fan der Linklist, aber für deine Anwendung geht es vielleicht auch viel einfacher:
Leg eine Seite an mit einem Artikel, der deine Links enthalten soll. Dort kannst du Inhaltselemente vom Typ 'Aufzählung' reinlegen - eines pro Tag. In der Aufzählung kannst du als Einträge deine Links direkt als HTML reinschreiben (s. Screenshots)
Wenn du es doch mit der Linklist machen möchtest, dann müssen wir weiter überlegen...
Gruß, folkfreund
sehr nette Idee!
würde ich glatt so umsetzen, wäre da nicht dieses "Kundenproblem"... einen normalen Text editieren ist schon fast unmöglich... wenn du verstehst was ich meine...
Da muss/darf ich mit sowas wie html erst gar nicht ankommen, selbst nicht, wenn ich Vorlagen bereitstelle... das wird schiefgehen leider :/
Na dann also mit Linklist und Template...
Ich hab dir mal ein mögliches Template gemacht. (Kopieren ins Template-Verzeichnis und anstelle von mod_linklist_simple wählen)
ARD, ZDF etc. steht in der Linkbeschreibung, das Template entfernt alle HTML-Tags daraus, damit es keine DIVs, Absätze und so gibt - das gefällt mir aber nicht wirklich.
Und die Eingabe (Termin in der Überschrift, ADR, ZDF im der Beschreibung) ist dem Kunden wohl auch schwer zu vermitteln.
Trotzdem mal ein Anfang.
Andere Idee:
Alternativ könntest du auch noch überlegen, das ganze über den integrierten Kalender zu lösen. Dann hättest du automatisch eine Sortierung nach Termin, könntest auf der Seite sogar per Minikalender eine Navigation anbieten... Und als Event steht jeweils die Meldung mit dem Link drin. Das Template der Eventliste müsste natürlich ähnlich umgebaut werden...
Gruß, folkfreund
Hi red,
wie Folkfreund schon sagte: da kommst Du um ein eigenes Template nicht herum. Am besten nimmst du mod_linklist_simple als Vorlage und schaust Dir an, wie darin die Daten aus dem BE ausgegeben werden, also zum Beispielfür den Titel des Links, und spinnst darum Dein HTML-Geflecht, damit das Deinem gewünschten Aussehen entspricht.PHP-Code:
$element['title']
Beste Grüße,
Arne
Oh, Folkfreund war schneller ;-)
supergeil! danke!
das funktioniert eigentlich genau so, wie ich mir das vorgestellt hatte!
Lediglich im Backende wird es unübersichtlich wenn ich mehrere Links unter einem Datum habe, das wird dort dann doch argh viel. Wir reden hier von 350+ Links... tendenz steigend.. :/
Aber vielen Dank schon mal! Für mich funktioniert das super!
PS: Hm, kann man evtl. irgendwie die Übersicht von dem Contao-Auflistungs-Modul mit deinem Template mixen? Dass die Funktionswiese nun wie bei Dir ist, und die Übersicht im Backend wie bei der Auflistung? Das wäre glaube ich für meine Zwecke optimal.
Hi,
falls du das Datum wie in meinem Beispiel in die Überschrift schreibst, dann kannst du im BE oben bei 'Suchen' auf 'Überschrift' stellen und die Anzeige auf die Einträge des eingegebenen Datums begränzen.
Hallo folkfreund,
nochmals danke! werde dein template verwenden!
mir ist allerdings aufgefallen, dass mein "titel"-css nun nicht mehr funktioniert, wie bieg ich dass denn wieder hin?
*nachtrag*: alternativ, kann ich das irgendwie ganz weglassen? also dass er den Titel der Linkkategorie die ich angelegt habe, mit auf die Seite schreibt?
Geändert von rednex (17.01.2011 um 00:27 Uhr)
Hi rednex,
ich kann nicht ganz folgen. Welchen Titel?
Falls du im Modul eine Überschrift eingegeben hast, dann wird die über der Linkliste angezeigt. Kannst du aber auch leer lassen.
Oder meinst du 'Title' jedes Links - das ist der Text, der als Link angezeigt wird.
Wie sieht dein CSS denn aus?
Hast du mal eine URL, damit ich nachsehen kann?
Ich empfehle dir, mit firebug selbst nachzusehen. Du findest damit schnell die Selektoren für dein CSS heraus.
Gruß, folkfreund
Kein Link leider.... (Kunde)
Also, ich gehe im BE auf "Linksammlung" und lege eine neue Kategorie an, genau das was ich dort als Namen reinschreibe, steht dann über den Links, als Titel sozusagen. Ansprechen mit CSS kann(tat) ich das mit "#main .mod_linklist .title" (siehe hier, unter "Stylesheet .title" ). Mit deinem Template ignoriert er das CSS aber nun. Wie gesagt, alternativ wäre ich auch über einen Tipp froh, wie ich das ganz weglassen kann, also den "Titel"(Kategorienamen auf der Seite).
*Nachtrag*: Ich habe Dir mal einen Teil-Screenshot gemacht, mehr geht leider nicht :/ <Klick>
Das rot umrandete "Pressespiegel" ist das was nun nicht mehr auf ".title" reagiert. Mein Modultitel lautet auch anders, der erscheint aber auch nirgends auf der Seite, daher kein Problem. Lediglich meine Kategorie in der Linksammlung heisst "Pressespiegel"
Geändert von rednex (17.01.2011 um 23:56 Uhr)
Die Titel werden wie Links in dem Array übergeben, allerdings ist ihr $element['type'] nicht 'link' sondern 'title'. Du wirst sie einfach los, wenn du nur die Elemente vom Typ 'link' ausgeben lässt.
In meinem Template findest du den Abschnitt (unformatiert):
(PHP mit HTML finde ich immer schwierig zu formatieren - und zu verstehen ;-)PHP-Code:
<?php if ($element['type'] == 'link') { ?>
<li class="link">
<span class="description">
<?php $x = preg_replace("/<.*?>/", "", $element['description']); print $x; ?>
</span>:
<a href="<?php print $element['url'];?>"
<?php print ($element['newwindow'] ? ' onclick="window.open(this.href); return false;"' : ''); ?>>
<?php }
print $element['title'];
if ($element['type'] == 'link') { ?>
</a>
<?php print ($element['counter'] !== "-" ? ' ('.$element['counter'].')' : ''); ?>
</li><?php } ?>
Hier wird ein <a ...> nur um den $element['title'] geschrieben, wenn es sich um einen Link handelt, ansonsten wird der Title eben ausgegeben (da ist mir die Klasse abhanden gekommen). Wenn du den Titel gar nicht haben willst, dann ändere die obige Passage ab in
Die Titel sollten dann weg sein - hab ich allerdings nicht getestet...PHP-Code:
<?php if ($element['type'] == 'link') { ?>
<li class="link">
<span class="description">
<?php $x = preg_replace("/<.*?>/", "", $element['description']); print $x; ?>
</span>:
<a href="<?php print $element['url'];?>"
<?php print ($element['newwindow'] ? ' onclick="window.open(this.href); return false;"' : ''); ?>>
<?php print $element['title']; ?>
</a>
<?php print ($element['counter'] !== "-" ? ' ('.$element['counter'].')' : ''); ?>
</li><?php } ?>
Gruß, folkfreund
das tuts irgendwie nicht, oder ich sehe aufgrund der späten Stunde irgendwas nicht richtig
Du redest von "Titeln", also die Mehrzahl, dieses "Pressespiegel" erscheint nur einmalig auf der Seite, und ich denke dass kommt, weil meine Kategorie in der Linksammlung halt Pressespiegel heißt. Wäre auch logisch, hätte man mehrere Link-Kategorien würden ja auch mehrere "Kategorie-Titel" angezeigt werden. Da ich aber nur eine habe, brauch ich das nicht wirklich.
Nur nochmal, falls Du mich falsch verstanden hattest, lässt sich echt doof erklären
PS: Nochmals danke für Deine Geduld und Hilfe!
Eben darum hatte ich die Mehrzahl gebraucht.
Füg malin das Template ein und schau dir den Seitenquelltext im Browser an. Dann wirst du im Kommentar u.a. das übergebene Array mit deinen Link-Elementen sehen.PHP-Code:
<!-- <?php $this->showTemplateVars(); ?> -->
Am Anfang wird ein Element sein, das nicht den Typ 'link' sondern den Typ 'title' hat. Genau das willst du nicht anzeigen lassen.
Das ursprüngliche Template läuft in einer Schleife über alle Elemente und gibt sie aus. Falls es ein Link ist dann wir <a ...> und </a> drumherum geschrieben.
Mein Änderungsvorschlag sollte jetzt dazu führen, dass nur Elemente vom Typ 'link' ausgegeben werden. (der Code-Schnipsel in meinem letzten Post war nur ein Ausschnitt aus dem Template!)
Ich hoffe das hilft dir weiter.
Gern geschehen - ich lerne ja was dabei
Gruß. folkfreund
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)