Willkommen, Gast ( Anmelden | Registrierung )     [ Hilfe | Mitglieder | Suche ]

 
Reply to this topicStart new topic
> Dynamisch generierte Texte in der Navigation, Modul Navigation greift auf MrType zu.
duffy
Beitrag Tue. 25. September 2007, 10:44
Beitrag #1


Advanced Member
****

Gruppe: AdvancedMembers
Beiträge: 112
Mitglied seit: 31.08.2006
Wohnort: Berlin
Mitglieds-Nr.: 219



Hallo zusammen,

ich habe in einem Projekt dem Kundenwunsch entsprochen und in der Navigation die Menüpunkte mit dynamisch generierten Schriften erstellt. Dazu habe ich die Module "Navigation" und MrType benutzt und nur minimal geändert:

- MrType um einen Funktionsaufruf erweitert
- Navigation um einen Platzhalter erweitert

Im Template kann man dann mit

QUELLTEXT
{nameMrType|<hintergrundfarbe>|<schriftfarbe>|<schriftgröße>}


den Namen der Seite als dynamisches gif einbetten.

Meine Frage ist nun ob es ein Interesse gibt solch eine Funktion generell in die Module zu übernehmen oder das eher eine Bastellösung bleiben soll.

Wenn letzteres der Fall ist würde ich einfach eine Beschreibung ins Wiki oder hier rein packen und gut ist :-)


--------------------
Go to the top of the page
 
+Quote Post
grafzahl
Beitrag Tue. 25. September 2007, 11:45
Beitrag #2


Advanced Member
****

Gruppe: AdvancedMembers
Beiträge: 138
Mitglied seit: 26.03.2007
Wohnort: Magdeburg
Mitglieds-Nr.: 752



ZITAT(duffy @ Tue. 25. September 2007, 11:44) *
Hallo zusammen,

ich habe in einem Projekt dem Kundenwunsch entsprochen und in der Navigation die Menüpunkte mit dynamisch generierten Schriften erstellt. Dazu habe ich die Module "Navigation" und MrType benutzt und nur minimal geändert:

- MrType um einen Funktionsaufruf erweitert
- Navigation um einen Platzhalter erweitert

Im Template kann man dann mit

QUELLTEXT
{nameMrType|<hintergrundfarbe>|<schriftfarbe>|<schriftgröße>}


den Namen der Seite als dynamisches gif einbetten.

Meine Frage ist nun ob es ein Interesse gibt solch eine Funktion generell in die Module zu übernehmen oder das eher eine Bastellösung bleiben soll.

Wenn letzteres der Fall ist würde ich einfach eine Beschreibung ins Wiki oder hier rein packen und gut ist :-)


Eine Beschreibung würde mir persönlich jetzt schon fast genügen. Ich denke so oft kommt solch ein Fall nicht vor. Meist lässt sich das dann ja auch über statische Grafiken lösen. Eine Erklärung wäre aber denke ich für später sehr gut... nur wenn man es jetzt direkt ins Modul einzimmern würde wäre das denke ich ein wenig aufgebläht.


--------------------
Go to the top of the page
 
+Quote Post
feniweb
Beitrag Tue. 25. September 2007, 11:47
Beitrag #3


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 627
Mitglied seit: 30.06.2006
Mitglieds-Nr.: 25



Also ich finde das super.
Sowas hätte ich früher mal gebrauchen können und eftl. kommt ein Projekt wo man so was einsetzen kann. Wie sieht das mit Barrierefrei aus? Könnte man das auch mit der Listennavi machen und über CSS steuern?

Gruss


--------------------
feniweb
_____________________________________________________________________________
Wer kämpft, kann verlieren. Wer nicht kämpft, hat schon verloren. (Bertolt Brecht)
Go to the top of the page
 
+Quote Post
superdeluxe
Beitrag Wed. 26. September 2007, 10:39
Beitrag #4


Member
**

Gruppe: Members
Beiträge: 44
Mitglied seit: 06.07.2006
Wohnort: St.Gallen - Switzerland
Mitglieds-Nr.: 114



Cool, eine Beschreibung wäre genug denke ich.

Ich kann euch übrigens sifr ans Herz legen! Kann man coole Sachen damit machen.... Ist zwar mehr für Header und nicht für Lauftexte und die Navigation. Man muss aber auch gar nix anpassen um es zum Laufen zu bringen. Die folgende kleine Referenz läuft mit Sefrengo und sifr: www.swisslawyer.ch


--------------------
Go to the top of the page
 
+Quote Post
duffy
Beitrag Fri. 12. October 2007, 21:01
Beitrag #5


Advanced Member
****

Gruppe: AdvancedMembers
Beiträge: 112
Mitglied seit: 31.08.2006
Wohnort: Berlin
Mitglieds-Nr.: 219



Hallo zusammen,

hier nun also eine kurze Beschreibung wie man MrType mit dem Modul Navigation bzw. Listennavigation zusammenbringt:

1. Vorraussetzungen:
- MrType ist also Modul so im Template vorhanden, dass es vor dem Navigationsmodul ist (Ich habe es immer im Head eingebaut)
- MrType ist vorkonfiguriert (Schriftart, Farben, Größe)

2. Änderungen an MrType
- Das Bestreben ist, das Modul so zu ändern, dass es mit einem Funktionsaufruf funktioniert
- Dafür das Modul bearbeiten und in der Frontendausgabe die schließende(!) Klammer der folgenden Abfrage suchen:
QUELLTEXT
if(! class_exists(phpfontwriter) ){
(Das ist so in etwa um die Zeile 320)

- hinter diese schließende Klammer den folgenden Funktionskopf setzen:
QUELLTEXT
if(! function_exists(callMrType) ){
  function callMrType($text, $fontcolor = "", $imgbgcolor = "", $size = "")
  {

- der schließende Teil der Funktion kommt hinter diese Zeile:
QUELLTEXT
unset($mvars);

- Danach folgende Zeilen auskommentieren (hier bin ich nicht sicher ob das nötig ist, funktioniert aber)
QUELLTEXT
//unset($mrtype_vars, $mrtype_content, $mrtype_tpl);
//unset($newimage);

//if ($cms_mod['modul']['lastentry'])
//unset($mvars);

- jetzt am Ende der neu geschaffenen Funktion folgende Änderung vornehmen:
QUELLTEXT
//echo $mrtypehtml;
return $mrtypehtml;

- Zum Schluss noch innerhalb der Funktion die zwei Vorkommen von $mvars['string'] durch $text ersetzen

3. Änderungen an Navigationsmodulen
- Die Änderungen sind für "Navigation" und "Listennavigation" ähnlich
- Überall dort wo der Platzhalter {name} ersetzt wird, werden die folgenden Zeilen davor kopiert:
(Listennavigation: 2 mal einfügen; Navigation: 3 mal einfügen)

QUELLTEXT
if(function_exists(callMrType))
{
  if(ereg(".*\{nameMrType\|([0-9a-f]{6})\|([0-9a-f]{6})\|([0-9]*)\}.*", $mod['temp'], $imgValues))
  {
    $mod['temp'] = ereg_replace("\{nameMrType\|[0-9a-f]{6}\|[0-9a-f]{6}\|[0-9]*\}", callMrType($con_tree[$a]['name'], $imgValues[1], $imgValues[2], $imgValues[3]), $mod['temp']);
  }
  else
  {
    $mod['temp'] = str_replace('{nameMrType}', callMrType($con_tree[$a]['name']), $mod['temp']);
  }
}
else
{
  $mod['temp'] = ereg_replace("\{nameMrType(\|[0-9a-f]{6}\|[0-9a-f]{6}\|[0-9]*)?\}", "{name}", $mod['temp']);
}

ACHTUNG: hier ist Mitdenken angesagt, nicht immer heißt es "$mod['temp']" bzw. $con_tree[$a]['name'] das für die Ersetzung benutzt wird. Es ist in beiden Navigationsmodulen unterschiedlich.
(Ich setze mal voraus, dass jemand der diese Änderungen machen will weiß was er/sie tut ;-) )


4. Benutzen
- Das war's auch schon, Nun könnt ihr in der Modulkonfiguration die Platzhalter {nameMrType} oder {nameMrType|color|bgcolor|size} benutzen
- {nameMrType} verwendet als Einstellungen die Modulkonfiguration von MrType, {nameMrType|color|bgcolor|size} überschreibt diese mit den drei Angaben. Farben bitte als Hextwert (z.B. efefef)


Ich hänge meine geänderten Module noch an, damit man die Änderungen besser nachvollziehen kann.

Gruß,

Oliver

PS: Wenn ich etwas nicht nachvollziehbar genug erklärt habe, einfach noch mal Bescheid geben. Verbesserungsvorschläge nehme ich gerne an. Ich setze das Modul jedoch inzwischen nicht mehr ein, da der Designer sich nun anders entschieden hat.


Angehängte Datei(en)
Angehängte Datei  MrType.cmsmod ( 29.91KB ) Anzahl der Downloads: 14
Angehängte Datei  Listen_Navigation.cmsmod ( 45.73KB ) Anzahl der Downloads: 10
Angehängte Datei  Navigation.cmsmod ( 43.08KB ) Anzahl der Downloads: 7
 


--------------------
Go to the top of the page
 
+Quote Post
fo.x
Beitrag Tue. 1. April 2008, 11:02
Beitrag #6


Advanced Member
****

Gruppe: AdvancedMembers
Beiträge: 102
Mitglied seit: 24.07.2006
Mitglieds-Nr.: 159



Hallo,

ich hab deine Methode in einer Website eingebunden, funktioniert tadellos.

Besten Dank Duffy !

Ich krieg es jedoch nicht gebacken die Listen-Navigation Horizontal darzustellen.

Ich habe in der CSS { display: inline; } eingefügt , dies zeigt jedoch keine Wirkung.

Die CSS
QUELLTEXT

#navcontainer ul
{
margin: 0;
padding: 0;
list-style-type: none;
}
#navcontainer ul li {
    display: inline;
    }
#navcontainer ul li a
{
text-decoration: none;
padding: .1em 1em;
}


Hat mir jemand einen Tipp ?





--------------------
grüsse fo.x

Go to the top of the page
 
+Quote Post
fo.x
Beitrag Thu. 3. April 2008, 09:48
Beitrag #7


Advanced Member
****

Gruppe: AdvancedMembers
Beiträge: 102
Mitglied seit: 24.07.2006
Mitglieds-Nr.: 159



Hab's hinbekommen,

ich musste dies in der Modulkonfiguration erweitern:

$css="display:block;float;left";

wink.gif


Komisch das die Grafiken jeweils immer in Grossbuchstaben erstellt werden ?



--------------------
grüsse fo.x

Go to the top of the page
 
+Quote Post
fo.x
Beitrag Mon. 7. April 2008, 10:05
Beitrag #8


Advanced Member
****

Gruppe: AdvancedMembers
Beiträge: 102
Mitglied seit: 24.07.2006
Mitglieds-Nr.: 159



@duffy

kannst du mir erklären warum die ausgegebene Navigation ausschliesslich in Grossbuchstaben erstellt wird ?

ich habe die oben angefügten Dateien installiert.


--------------------
grüsse fo.x

Go to the top of the page
 
+Quote Post
Guest_bkm_*
Beitrag Mon. 7. April 2008, 10:19
Beitrag #9





Guests






so wie du es beschreibst, wird wahrscheinlich in mrtype << strtoupper >> verwendet.
was das wort (zeichenkette) in grossbuchstaben wieder gibt.
Go to the top of the page
 
+Quote Post
fo.x
Beitrag Mon. 7. April 2008, 10:55
Beitrag #10


Advanced Member
****

Gruppe: AdvancedMembers
Beiträge: 102
Mitglied seit: 24.07.2006
Mitglieds-Nr.: 159



Das war es ... ein "ucfirst" machte mich glücklich wink.gif

danke


--------------------
grüsse fo.x

Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 Besucher lesen dieses Thema (Gäste: 1 | Anonyme Besucher: 0)
0 Mitglieder:

 



RSS Vereinfachte Darstellung Aktuelles Datum: 16.4.21 - 00:07

Sefrengo ist ein eingetragenes Markenzeichen und urheberrechtlich geschützt.
Copyright 2009 Design & Daten, Alle Rechte vorbehalten.