Welcome, Guest. Please login or register.
Did you miss your activation email?
15 Mar 2010, 07:19

Login with username, password and session length
Home Chat Help Search Calendar Login Register
Pages: [1]
Print
Author Topic: [GELÖST] Klasse currentpage über Smarty auf News anwenden  (Read 2134 times)
0 Members and 1 Guest are viewing this topic.
antibart
Power Poster
***

Karma: 5
Offline Offline

Posts: 999


« on: 03 Jul 2009, 09:47 »

Hallo,

Ich benutze für ein Projekt die Newssummary wie eine zweite Menu-Navigation. Das heisst, es wird nur der Titel in Form einer ul-liste eingeblendet. Optisch und hierarchisch identisch mit der "richtigen" Navigation.

Perfekt wäre es, wenn ich auch die Klasse currentpage in diese Pseudo-Navigation (=minimales Newsummaray-Template) übertragen könnte.

Hat jemand dafür ein Smarty-Abfrage parat?

Sowas Ähnliches  wie:

Code:
{foreach from=$items item=entry}
{if ermittlung der aktuellen news-url}
<ul><li><a href="{$entry->moreurl}" title="{$entry->title|escape:htmlall}" class="currentpage">{$entry->title|escape}</a></li></ul>
{else}
<ul><li><a href="{$entry->moreurl}" title="{$entry->title|escape:htmlall}" >{$entry->title|escape}</a></li></ul>
{/if}




{/foreach}
« Last Edit: 07 Jul 2009, 04:54 by antibart » Logged
klenkes
Forum Members
**

Karma: 4
Offline Offline

Posts: 128

Location: South-Germany


« Reply #1 on: 03 Jul 2009, 17:14 »

Hi.

Meinst du etwas so wie hier:(im Footer)
http://www.klenk-services.de/aktuelles/

So fern die Pseudonav nach dem Artikel kommt, ist es ganz einfach.
Im Artikeltemplate:
Code:
{* Die aktuelle News-ID zuweisen, um sie im Footer zu verwenden*}
{assign var='currentnews' value=$entry->id}

In der Pseudonav-Template currentnews abfragen:
Code:
{if $currentnews eq $entry->id} usw...

Oder hab ich dich komplett falsch verstanden?(müde)

Bernd
Logged

Every day in life is a gift. But does it have to be a pair of socks?
antibart
Power Poster
***

Karma: 5
Offline Offline

Posts: 999


« Reply #2 on: 04 Jul 2009, 01:55 »

Ja .. sowas meine ich ... nur nicht im Footer des Detailartikels sondern permanent links ... aber das dürfte doch eigentlich keine Rolle spielen .. ich probier das mal aus...

BTW

Code:
<div class="clearer"></div><!-- Ich hasse diesen Scheiss... -->

Smiley
« Last Edit: 04 Jul 2009, 02:08 by antibart » Logged
antibart
Power Poster
***

Karma: 5
Offline Offline

Posts: 999


« Reply #3 on: 04 Jul 2009, 02:30 »

Hab es mal ausprobiert. So wie ich es verstanden habe, funktioniert es leider noch nicht. Ich vermute, wie du schon andeutest, die Zuweisung der Variablen currentnews muss vor der Bedingung kommen.


Detailtemplate
Code:
{assign var='currentnews' value=$entry->id}
<h3 id="NewsPostDetailTitle">{$entry->title|escape:htmlall}</h3>


{eval var=$entry->content}

{if $entry->extra}
<div id="NewsPostDetailExtra">
{$extra_label} {$entry->extra}
</div>
{/if}

Summarytemplate
Code:
{foreach from=$items item=entry}



<ul>

{if $currentnews eq $entry->id}
<li><a href="{$entry->moreurl}" class="currentpage" title="{$entry->title|escape:htmlall}">{$entry->title|escape}</a></li>
{else}
<li><a href="{$entry->moreurl}" title="{$entry->title|escape:htmlall}">{$entry->title|escape}</a></li>
{/if}
</ul>

{/foreach}
« Last Edit: 04 Jul 2009, 02:46 by antibart » Logged
klenkes
Forum Members
**

Karma: 4
Offline Offline

Posts: 128

Location: South-Germany


« Reply #4 on: 04 Jul 2009, 04:20 »

Genauso funktioniert es bei mir, da zuerst die Detailtemplate mir der Zuweisung der Variablen verarbeitet wird, und erst danach die Template mit der Bedingung. Andersrum funktioniert es natürlich nicht.

Sonst müsste man für ein Feststellen des aktuellen Beitrags die URL bemühen... mit einem UDT... aber wie? Dafür reicht mein PHP nicht.
An einer besseren Methode wär' ich auch interessiert.
Logged

Every day in life is a gift. But does it have to be a pair of socks?
antibart
Power Poster
***

Karma: 5
Offline Offline

Posts: 999


« Reply #5 on: 04 Jul 2009, 04:44 »

Vielleicht das:

http://forum.cmsmadesimple.org/index.php/topic,10499.msg52659.html#msg52659

.. aber erstmal genauer probieren. Bis jetzt macht es noch gar nichts. Sein Vorhaben war aber ein ähnliches wie Deines. Er wollte ein zusätzliches Menü der weitren News auf der Detailseite.

Hier nochmal eine kurze Begründung meines Vorhabens: Die News-Details enthalten nix anders als verschiedene Fotoalbums (Alben? Albata?). Die Summaries sollen zum einen als Teaser im Home-Content mit kurzbeschreibung und Vorschaufoto erscheinen, aber auch als ganz normale permanente Navigation.

Natürlich könnte ich für jede Album-kategorie eine Seite erstellen und dort das Album - Modul aufrufen. Die Teaser auf der Startseite dann manuell einfügen.

Aber viel praktischer für die Kundin wäre natürlich, wenn man alle Albums ausschließlich über das News-Modul einpflegen könnte. Dann würde mit jedem neuen Artikel (=Albumkategorie) sowohl die NAvigation als auch die Teaser auf der Startseite aktuallisiert - ganz automatisch.

Das klappt auch alles prima - bis auf diesen kleinen Schönheitsfehler mit der currentpage-Klasse.
« Last Edit: 06 Jul 2009, 12:21 by antibart » Logged
klenkes
Forum Members
**

Karma: 4
Offline Offline

Posts: 128

Location: South-Germany


« Reply #6 on: 04 Jul 2009, 13:56 »

Ahh... verstehe. Das ist natürlich schon wesentlich komplexer als Nurtextsartikel.
Kann man eigentlich mit dem Plugin content_dump auf die Albums(Albii?) zugreifen? Wollte ich schon immer mal probieren.

Mit dem Album mache ich es übrigens genauso. Da gibt's auch keine eingebaut current-Funktion. album->id zuweisen - abfragen - markieren.

Würde mich interessieren, wie du es zum Schluss gemacht hast. Man steht ja früher oder später vor der selben Frage.
Logged

Every day in life is a gift. But does it have to be a pair of socks?
antibart
Power Poster
***

Karma: 5
Offline Offline

Posts: 999


« Reply #7 on: 06 Jul 2009, 03:37 »


Würde mich interessieren, wie du es zum Schluss gemacht hast. Man steht ja früher oder später vor der selben Frage.

Im Moment bleibt mir leider nur die Möglichkeit, rumzutesten und immer mal hier zu gucken ob jemand einen Tipp hat. Aber ich sag bescheid. wenn ich weiter gekommen bin.
Logged
antibart
Power Poster
***

Karma: 5
Offline Offline

Posts: 999


« Reply #8 on: 06 Jul 2009, 12:27 »

Vielleicht bringt es was, wenn ich es mal kurzfristig visualisiere, auch wenn es noch nicht fertig ist:

EDIT: erledigt. link gelöscht

Die obere Navigation LINKS ist nix anderes als der Content: Nämlich Newssummaries mit zwei verschiedenen Templates. Einmal links minimal nur mit dem Titel, und noch einmal etwas detailierter im Content.

Die Detailpage  (wird in einer extra detailpage geöffnet) enthält dann die jeweiligen Albums einer Album-Kategorie
« Last Edit: 23 Oct 2009, 05:44 by antibart » Logged
klenkes
Forum Members
**

Karma: 4
Offline Offline

Posts: 128

Location: South-Germany


« Reply #9 on: 06 Jul 2009, 14:21 »

Hi.
Hab's mir grade mal angeschaut. Wenn der entsprechende Menüpunkt nicht als aktiv markiert ist, wird's für den Betrachter echt schwierig.

Idee:
Da dein Navigationsbereich und Contentbereich horizontal positioniert sind(also li. re.), könntest du die Reihenfolge im Template tauschen, so dass der Content zuerst kommt, dann den linken violetten NAV-Bereich per position:relative; left:um Contentbreite-px; nach links verschieben! DANN würde mein Vorschlag klappen, weil zugewiesene Variable bekannt, wenn die NAV zuletzt kommt.(Also ja nur im Quelltext)

Klar?
Logged

Every day in life is a gift. But does it have to be a pair of socks?
cyberman
Support Team
Moderator
Power Poster
*****

Karma: 147
Online Online

Posts: 8497

Location: Dohna / Saxony / Germany


Reality.sys is corrupt. Reboot universe (Y/N)?


WWW
« Reply #10 on: 06 Jul 2009, 17:40 »

Um die Umgestaltung des Templates zu umgehen, könntest du {content} als allererstes im Template aufrufen, jedoch den Output einer Variablen zuweisen (Parameter assign). Anstelle des bisherigen Content rufst du einfach die {$variable} auf.
Logged

"2 hours of try and error can save 10 minutes of manual reading"
(2 Stunden Ausprobieren können Ihnen 10 Minuten Handbuchlesen ersparen)
------------------------------------------------------------------------------------
Für deutschsprachige Anwender / for german speaking users only
http://www.cmsmadesimple.de/ - deutschsprachige Support-Seite für CMS made simple
http://demo.cmsmadesimple.de/ - Informationen der CMSms-Musterinstallation in deutsch
http://wiki.cmsmadesimple.org/index.php/Main_Page/de - deutschsprachiges Wiki für CMS made simple
http://dev.cmsmadesimple.org/projects/german/ - deutsche Sprachdateien für CMS made simple
-----
http://themes.cmsmadesimple.org/Full_Themes.html - Templates für CMS made simple (engl.)
http://www.cmsmadesimple.org/apidoc/ - API für CMSms 1.x (engl.)
antibart
Power Poster
***

Karma: 5
Offline Offline

Posts: 999


« Reply #11 on: 07 Jul 2009, 03:56 »

Um die Umgestaltung des Templates zu umgehen, könntest du {content} als allererstes im Template aufrufen, jedoch den Output einer Variablen zuweisen (Parameter assign). Anstelle des bisherigen Content rufst du einfach die {$variable} auf.

Juchheissa! So funktioniert es !!! Daaaaaanke ...

Auch dir klenkes...

zwar wird die Klasse beim Album-Detail momentan nicht mehr ausgegeben .. aber die hat ja auch eine eigene id ... man kann halt nicht alles haben.
« Last Edit: 07 Jul 2009, 05:22 by antibart » Logged
klenkes
Forum Members
**

Karma: 4
Offline Offline

Posts: 128

Location: South-Germany


« Reply #12 on: 08 Jul 2009, 04:03 »

Au prima. Cybermans Vorgehensweise ist eine sehr galante. Gefällt mir.
Probier ich auch mal.
Logged

Every day in life is a gift. But does it have to be a pair of socks?
Pages: [1]
Print
Jump to: