linksItem_stdWrap

  • chukks chukks
    Sternenflotten-Admiral
    0 x
    241 Beiträge
    0 Hilfreiche Beiträge
    15. 09. 2006, 17:34

    Hallo,

    Ich bin am durchdrehen!! #angry#
    Ich will meine related links einzeln formatieren.
    Dafür habe ich in meine Template folgendes eingefühgt:

    plugin.tt_news.displayList.linksItem_stdWrap.wrap = <div class="DS-listLink"> | </div>

    Damit wird der ganze link block formatiert und nicht die links einzeln.

    Hat jemand eine Idee??

    Gruß

    Chakir


  • 1
  • Fabian-K Fabian-K
    Jedi-Ratsmitglied
    0 x
    581 Beiträge
    0 Hilfreiche Beiträge
    26. 01. 2007, 10:37

    Habe das selbe Problem.

    Hiiiiiiiiiiilfeeeeeeeeeeee..

    Wie kann ich meine related Links EINZELN umschliessen, und nicht den ganzen Links-Block?

  • chukks chukks
    Sternenflotten-Admiral
    0 x
    241 Beiträge
    0 Hilfreiche Beiträge
    26. 01. 2007, 12:27

    Hallo Fabian,

    Leider habe ich keine Lösung für dieses Problem. Ich habe sogar der tt_news Author angemailt, es sieht nach einem tt_news bug.
    Ich bin nur sehr überrascht zu sehen dass nicht viel mehr Leute diese Funktionalität verwenden wollten...
    Ich habe auch ein Report im bug wiki, wenn ich mich recht errinere...

    Falls du was zusätliches in Erfahrung bringen könntest, wäre ich dir dankbar, das zu posten.

    mfg

    Chukks

  • just2b just2b
    TYPO3-Yoda
    0 x
    18741 Beiträge
    2 Hilfreiche Beiträge
    26. 01. 2007, 12:31

    Hallo,

    und was wär mit .DS-listLink a { ... } ?

    georg

  • steffenk steffenk
    Obi-Wan Kenobi
    0 x
    4666 Beiträge
    0 Hilfreiche Beiträge
    26. 01. 2007, 13:46

    Ich denke auch das CSS der richtige Weg ist.

    Ansonsten müsste man mühsam die Links auseinanderrupfen, die Funktion split könnte man nehmen, wenn es ein eindeutiges Trennzeichen gibt. Oder eine userfunc, aber alles viel zu aufwändig.

  • Fabian-K Fabian-K
    Jedi-Ratsmitglied
    0 x
    581 Beiträge
    0 Hilfreiche Beiträge
    31. 01. 2007, 12:05

    Alternativ wird auch ein p.bodytext (hassliebe ^^) um jeden Link gesetzt.
    Wenn man diesen nun direkt in der "class.tx_ttnews.php" ein bisschen rumfummelt,
    dann wird auch jeder Link mit einem DIV umschlossen:

    1. $newsLinks = str_replace('<p class="bodytext">', '<div class="foo">', $newsLinks);
    2. $newsLinks = str_replace('</p>', '</div>', $newsLinks);

    Komplett sieht das Ganze dann etwa so aus:

    1. // Links
    2. $markerArray['###TEXT_LINKS###'] = '';
    3. $markerArray['###NEWS_LINKS###'] = '';
    4. if ($row['links']) {
    5. $links_stdWrap = t3lib_div::trimExplode('|', $lConf['links_stdWrap.']['wrap']);
    6. $newsLinks = $this->local_cObj->stdWrap($this->formatStr($row['links']), $lConf['linksItem_stdWrap.']);
    7. $text_links = $links_stdWrap[0].$this->local_cObj->stdWrap($this->pi_getLL('textLinks'), $lConf['linksHeader_stdWrap.']);
    8. $newsLinks = str_replace('<p class="bodytext">', '<div class="foo">', $newsLinks);
    9. $newsLinks = str_replace('</p>', '</div>', $newsLinks);
    10. $markerArray['###TEXT_LINKS###'] .= $text_links;
    11. $markerArray['###NEWS_LINKS###'] = $newsLinks.$links_stdWrap[1];
    12. }

    (Zu finden bei ca. Zeile 1500 irgendwo..)

    Dann habt ihr ein <div class="foo">...</div> um eure einzelnen Links.
    (Sofern ihr p.bodytext nicht schon automatisch entfernen lasst per TypoScript)

  • just2b just2b
    TYPO3-Yoda
    0 x
    18741 Beiträge
    2 Hilfreiche Beiträge
    31. 01. 2007, 12:07

    [quote="Fabian-K"]
    Dann habt ihr ein <div class="foo">...</div> um eure einzelnen Links.[/quote]
    und was bringt das? die Links konnte man vorher auch schon ansprechen

    georg

  • Fabian-K Fabian-K
    Jedi-Ratsmitglied
    0 x
    581 Beiträge
    0 Hilfreiche Beiträge
    31. 01. 2007, 12:18

    Ja, die Links schon.
    Aber was hat man davon?
    Wenn man nun mit padding & width etwas rumspielt,
    bekommt man schnell Probleme im Firefox.

    Wenn du z.B. width:100px; und padding-right:5px; verwendest, dann wird der Link-Tag im Firefox 105 Pixel breit, im IE aber nur 100.
    (Das selbe mit Border..)

    Dafuer sollte man dann halt einen div-Bereich darumlegen, dort den 'width' reinkloppen und dann das Padding-Zeug in den a-Tag.
    (Oder so.. Bin nich gut im Beispiele-Beschreiben ^^)

    Und wenn wir faul sind, koennen wir damit dann auch dafuer sorgen, dass wir die Links, bzw. deren Wrap in TS formatieren koennen.

    Ersetzt einfach

    1. $newsLinks = str_replace('<p class="bodytext">', '<div class="foo">', $newsLinks);
    2. $newsLinks = str_replace('</p>', '</div>', $newsLinks);

    mit
    1. $singleLinks_stdWrap = t3lib_div::trimExplode('|', $lConf['linksItem_stdWrap.']['single.']['wrap']);
    2. $newsLinks = str_replace('<p class="bodytext">', $singleLinks_stdWrap[0], $newsLinks);
    3. $newsLinks = str_replace('</p>', $singleLinks_stdWrap[1], $newsLinks);

    Jetzt kann man mit
    [TS]plugin.tt_news.displaySingle.linksItem_stdWrap.single.wrap = |[/TS]
    den Kram im TS formatieren.

    Nun ist es auch simpler, auf verschiedenen Seiten die Link-Listen unterschiedlich zu formatieren.

  • BastianBalthasarBux BastianBa...
    Jedi-Ratsmitglied
    0 x
    767 Beiträge
    9 Hilfreiche Beiträge
    02. 10. 2007, 16:57

    Danke Fabian-K.
    Hat mir sehr gehilft! ;)

    grüsse c.

    PS:

    Der Code gehört zwischen(!!) die Zeile

    $newsLinks = ...

    und die Zeile

    $markerArray['###TEXT_LINKS###'] = ....

    // Edit:

    Und noch was:
    1. linksItem_stdWrap (wenn ich jetzt mal mit meinen Englisch Kenntnissen prahlen darf) sollte eigentlich sehr wohl jeden EINZELNEN Link SEPARAT umschliessen. Daher wohl bug
    2. Ich möchte das ganze mit einer unordered list bauen lassen, daher wäre die funktion eigentlich eben schon sinnvoll...

    To err is human; to really screw things up requires the root password.
    https://www.Riccabona.IT/
    https://T3BOARD.TYPO3.org/

  • 1