Zum Inhalt springen

mm_forum 0.1.7 Rootline ohne Funktion

Erstellt am 6. November 2008 · 11 Antworten · letzte Antwort am 7. Juli 2009

Tags: Frage

Unbekannter Benutzer ·

Hallo...

Die Foren Rootline ist im Template bereich list_post.html nicht funktionstüchtig. Es wird seltsamerweise nur der erste Navigationspunkt angezeigt und das ist der Link zur Forenübersicht. Es findet hier keine Auflistung der einzelenen Rootline Seiten statt.

Einstweilene Lösung:
Selbst ein Rootlinemneü einbinden:

lib {
	MM_FORUM_ROOTLINE = COA_INT
	MM_FORUM_ROOTLINE {
		10 = HMENU
		10 {
			special = userfunction
			special.userFunc = tx_mmforum_pi1->createRootline
			special.entryLevel = 2
			excludeUidList = {$plugin.tx_mmforum.boardPID}
			stdWrap {
				wrap = <div class="tx-mmforum-rootline">|</div>
				required = 1
			}
			1 = TMENU
			1 {
				noBlur = 1
				NO = 1
				NO {
					wrapItemAndSub = |||*||||*||
					linkWrap = | &_raquo; ||*|| &_raquo; ||*||
				}
			}
		}
	}
}

kleine Erklärung:
Das excludeUidList benötige ich, damit die Rootline auf der Forenübersicht nicht angezeigt wird, da die dor über ist.
Das required in dem stdWrap wird benötigt, damit auf der Übersichtsseite auch kein leerer Container eingebaut wird.
WICHTIG: Die Rootline des mm_forum darf dabei nicht wie im Manual zu lesen im Backendmodul deaktiviert werden, da sonst die UserFunk auch nicht mehr korrekt funktioniert. Also stattdessen in den beiden Templates list_post.html und list_topic.html, den Container und den Marker ###FORUMPATH### auskkommentieren.
Das ganze steht in einen ungecacheten Array, da es mit dem Cache probleme geben könnte.

Vielleicht brauchst jemand.
Auf Dauer wäre es schön wenn das behoben werden könnte.

Typoholiker ·

mein Ansatz sah vor meiner Suche so aus:

...
    subparts.rootline = HMENU  
    subparts.rootline {
        special = userfunction
        special.userFunc = tx_mmforum_pi1->createRootline
        special.range = 1|-1
        special.entryLevel = 2
        wrap = <span>&crarr;&nbsp; | </span>
        1 = TMENU
        1.NO.allWrap =  | &nbsp;/&nbsp; |*|  | &nbsp;/&nbsp; |*|  | 
        
        1.CUR = 1
        1.CUR < .1.NO
        1.CUR.doNotLinkIt = 1
        
        }

Nun habe ich das Problem, dass meine Rootline nur funktioniert, wenn ich bei jedem Seitenwechsel vorher den cache lösche, sonnst wird auf allen seiten die Rootline der zuerst besuchten seite angezeigt, die rootline bleibt immer gleich. ich habe keinerlei cache anweisungen im TS und rootline is im backendtoool von mm_forum auch nich deakt.? Ich habe dieses beispiel studiert, leider mit dem selben effekt. Mhm?

Vieln Dank

Unbekannter Benutzer ·

Ich zitiere mich selbst:

Das ganze steht in einen ungecacheten Array, da es mit dem Cache probleme geben könnte.

Also deine Rootline in ein ungecachetes Array einbinden

Typoholiker ·

Also langsam wills werden, hab's nu so:

subparts.rootline = COA_INT  
subparts.rootline {
                   10 = HMENU
                   10 {
                        special = userfunction
                        special.userFunc = tx_mmforum_pi1->createRootline
                        special.entryLevel = 0
                        excludeUidList = {$plugin.tx_mmforum.boardPID}
                        stdWrap { 
                                 wrap = <span>&crarr;&nbsp; | </span>
                                 required = 1
                                }
                       1 = TMENU
                       1.NO.allWrap =  | &nbsp;/&nbsp; |*|  | &nbsp;/&nbsp; |*|  | 
                       
                       1.CUR = 1
                       1.CUR < .1.NO
                       1.CUR.doNotLinkIt = 1  
                                }
                        }

Probleme: der Link zur Foren Übersicht lautet lediglich: "#cat1"
und mein Traum vom CUR.doNotLinkIt ???
Ich glaube is wohl nur für Seiten mit ID's, aber nich für einzelne contents gedacht.

Vielen Dank bis hierher.

Unbekannter Benutzer ·

Genau, den Link der gerade aktuell ist (also in diesem Fall CUR) kannst du damit nicht ansprechen, denn es ist nicht die Forenkathegorie oder das Thema aktiv, sondern immer die Forenübersicht, bzw die Seite auf der sich das Forum befindet.

Wegen dem kaputten Link zur Forenübersicht:
Kann es sein dass sich da

special.range = 1|-1

und

special.entryLevel = 2

beharken? Schließt sich das eine mit dem anderen nicht aus? So quasi wie special = directory und entryLevel?

steffenk ·

habt Ihr Euch die Funktion in der pi1 mal angeschaut?

Also ich hab die direkt modifiziert, das ging schneller 🙂

Typoholiker ·

Vielen Dank,

zur CUR habe ich hier einen eigenen threat gefunden, in dem explizit erklärt wird, dass das nicht funktioniert.

zu speziel.range: probleme habe ich damit nicht gehabt, aber sinn macht das glaube ich ohnehin nur wenn man die rootline am ende verkürzen will, ansonsten is das, wie du schon sagtest, in verbindung mit entryLevel so ziemlich sinnbefreit.

ich hab jetzt ewig rumprobiert und kann zwei probleme nicht ausschließen, required zeigt keine funktion und der link zur kategorie-übersicht verweist immer auf "#cat"

leider kann ich das Problem nur folgendermaßen lösen, ich steige bei entrieLevel 0 ein, sodass die Forumseite in der die Kategorieen schon durch einbindung des plugins aufgelistet werden zu erreichen ist und über excludeUidList die categorieübersicht aus der rootline ausschließen: aber wie heißt das?
??? {$plugin.tx_mmforum.forumpath_category} ??? ...oder so?

Danke

Unbekannter Benutzer ·

@ Steffen:

1. Ist nicht jeder ein PHP Profi und kann da nicht mal eben auf die schnelle was umschreiben.
2. Wärs ja dann sinnvoll, wenn du deine Lösung hier posten würdest, oder noch besser es in einer der nächsten mm_forum Versionen allen zur verfügung stellst.

steffenk ·

ja klar, aber ich musste das für ein Projekt anpassen und habs quick&dirty gemacht.

Es müsste eine echte Menüfunktion her, das ist keine.

Typoholiker ·

Mhpf... Steffen's Groupie bin ich deswegen noch nich, Klingt das mit excludeUidList irgendwie nach Lösung, von mir aus auch "quick but over forty".

MorphexX ·

Hallo zusammen, ich habe ein ähnliches Problem. Bei mir funktioniert die Rootline, bzw. der Forum_Path einwandfrei, nur kann ich die Marker auf folgenden Seiten nicht nutzen, da der Marker(###FORUMPATH###) nicht aufgelöst und zur eigentlichen Rootline umgewandelt wird:

- Profil
- Suche
- Profil bearbeiten
- Benutzerliste

Ich habe mir mal die pi1 von mm_forum angeschaut, komme aber kein Stück klar. mm_forum ist für mich ein riesiger Wald 😉

Hat jemand möglicherweise eine Idee oder Lösung?