ynamite's Navigation Factory :)

Wie verwendet man Templates oder erstellt Navigationen und passt diese an.

Beitragvon ynamite » 31. Aug 2010, 15:31

hab deinen Fehler soeben gefunden, dir fehlt im Template wo du die Navigation ausgiebst ein "?" (Fragezeichen)

müsste so aussehen (3. Zeile):
Code: Alles auswählen
<div class="navi">
        REX_TEMPLATE[4]
<?php
$options = array('showLangCodeOnly'=>1, 'separatorTag'=>'span');
echo createLangNav($options);
?>
      </div>
BLUEMOUSE | BlueMouse GmbH
Benutzeravatar
ynamite
 
Beiträge: 118
Registriert: 26. Jan 2007, 13:59
Wohnort: baden

Beitragvon steffus » 1. Sep 2010, 22:42

Ok versuche es mal hier zu posten.

hier das navi id= 4
Code: Alles auswählen
<?php

function createLangNav($options_user='')
   {
   if(!is_array($options_user))
      $options_user=array();

   $options = array(
      'showLangCodeOnly'      =>      false,               // {boolean}         Soll nur die Abgekürzte Version angezeigt werden, zBsp. 'De', 'Fr' usw.
      'showDescription'      =>      false,               // {boolean}         Soll für die Sprachnavigation eine Beschreibung ausgegeben werden? zBsp: Sprache
      'description'         =>      'Sprache',            // {string}            String der als die Beschreibung ausgegeben wird
      'addSeparator'         =>      false,               // {boolean}         Soll zwischen jedem Navigationselement ein Trennzeichen angezeigt werden? (Nur falls 'displayAsList'=> false
      'separatorChar'         =>      '|',               // {string}            Trennzeichen
      'separatorTag'         =>      'span',               // {string}            Tag welches das Trennzeichen umschliesst
      'separatorTagClass'      =>      '',                  // {string}            Klasse für das Trennzeichen-Tag

      'renderImages'         =>      false,               // {boolean}         Soll Navigation mit dem Schriftersetzungs-Addon SleightOfHand von Dave Holloway ausgegebn werden?
      'renderFontfile'      =>      'univers.ttf',         // {string}            Name der zu verwendenden Schrift-Datei (schaue Dokumentation SleightOfHand)
      'renderFontsize'      =>      12,                  // {int}            Schriftgrösse (nicht pixelgenau!)
      'renderFontspacing'      =>      1,                  // {int}            Zeilenabstand
      'renderFontcolor'      =>      array(42,41,46),      // {array(R,G,B)}      RGB-Farbwert der Schrift
      'renderFontactivecolor'   =>      array(255,255,255)      // {array(R,G,B)}      RGB-Farbwert der Schrift bei einem mouseover-Event
      );

   // Extending defaults array with user options
   foreach ($options_user as $key => $val)
      if(isset($options[$key]))$options[$key] = $val;
   
   $invalidGets = array('clang','article_id');
   foreach($_GET as $key=>$val)
      {
      if(!in_array($key,$invalidGets))
         $string .= ($string=="") ? $key."=".$val : "&".$key."=".$val;
      }   

   global $REX;
   foreach($REX['CLANG'] as $key=>$lang)
      {
      if($options['showDescription'] && $out!="") $out .= '<span class="langtitle">'.$options['description'].'</span> ';
      if($options['addSeparator'] && $out!="")
         {
         $out .= ' <'.$options['separatorTag'];
         if($options['separatorTagClass'])
            $out .= ' class="'.$options['separatorTagClass'].'"';
         $out .= '>'.$options['separatorChar'].'</'.$options['separatorTag'].'> ';
         }
      $text = ($options['showLangCodeOnly']) ? substr($lang,0,2) : $lang ;
      if($options['renderImages'] && OOAddon::isAvailable('sleightofhand'))
         {
         if($REX['CUR_CLANG']==$key)
            $out .= a561_sleightofhand(array(
                        'text' => $text,
                        'link' => rex_getUrl($curArtId,$key),
                        'font' => $options['renderFontfile'],
                        'color' => $options['renderFontactivecolor'],
                        'size' => $options['renderFontsize'],
                        'spacing' => $options['renderFontspacing']
                     ));
         else
            $out .= a561_sleightofhand(array(
                        'text' => $text,
                        'link' => rex_getUrl($curArtId,$key),
                        'font' => $options['renderFontfile'],
                        'color' => $options['renderFontcolor'],
                        'mouseover' => $options['renderFontactivecolor'],
                        'size' => $options['renderFontsize'],
                        'spacing' => $options['renderFontspacing']
                     ));            
         }
      else
         {
         $out .= '<a href="'.rex_getUrl($curArtId,$key). '?' .$string. '" title="'.$lang.'" id="lang'.$key.'"';
         if($REX['CUR_CLANG']==$key) $out .= ' class="active"';
         $out .= '>'.$text.'</a>';
         }
      }
   return $out;
   }

?>

hier nun der ausschnitt aus dem default, mehr habe ich nicht gemacht.



Code: Alles auswählen
<div id="head-navigation">
     REX_TEMPLATE[4]
        <php
$options = array('showLangCodeOnly'=>1, 'separatorTag'=>'span');
echo createLangNav($options);
?>   


wenn ich das nun mache, steht folgendes in meinem navi div:




1, 'separatorTag'=>'span'); echo createLangNav($options); ?>
steffus
 
Beiträge: 7
Registriert: 17. Aug 2009, 21:49

Beitragvon ynamite » 1. Sep 2010, 22:45

Abend Steffus

Bitte die vorherigen Beiträge lesen!

Hab dein Fehler gefunden, dir fehlt in deinem default Template beim ersten PHP Tag ein Fragezeichen, wie oben schon geschrieben.

Gruss
y
BLUEMOUSE | BlueMouse GmbH
Benutzeravatar
ynamite
 
Beiträge: 118
Registriert: 26. Jan 2007, 13:59
Wohnort: baden

Beitragvon steffus » 1. Sep 2010, 22:51

ja.. sehr gut.. noch eine frage.. nun zeigt er mir nur de oder en an.. aber kein richtiges navi... also das was ich in struktur angelegt habe.

dann solltest du, wenn du einfluss hast das im download bereich hier ändern
Beispiel Ausgabe:
<php
$options = array('showLangCodeOnly'=>1, 'separatorTag'=>'span');
echo createLangNav($options);
?>
steffus
 
Beiträge: 7
Registriert: 17. Aug 2009, 21:49

Beitragvon ynamite » 1. Sep 2010, 22:55

Dazu verwendest du die falsche Funktion. Die "yLangNav", wie der Name schon andeutet, generiert eine Sprachnavigation. Um die Struktur auszugeben verwenden bitte die "yNav" unter (4. Download):
http://www.redaxo.de/19-0-templates.html?cat_id=0&cat_id=0&searchtxt=&x=0&y=0

Viel Glück
y
BLUEMOUSE | BlueMouse GmbH
Benutzeravatar
ynamite
 
Beiträge: 118
Registriert: 26. Jan 2007, 13:59
Wohnort: baden

bring es leider nicht zusammen

Beitragvon matze » 21. Okt 2010, 14:31

Hi

hab gerade das template ynav ausprobiert.
ich finde die funktionen echt super und hut ab vor dem der das geschrieben hat.

leider hab ich das problem, dass es jeden menüpunkt mit der artikel id 1 verlinkt!
hab zwar schon einiges ausprobiert aber will einfach net funktionieren!!

hat jemand vielleicht eine lösung?
wäre euch echt dankbar.

lg Matthias
matze
 
Beiträge: 7
Registriert: 18. Nov 2009, 00:03

Re: bring es leider nicht zusammen

Beitragvon ynamite » 21. Okt 2010, 14:37

matze hat geschrieben:Hi

hab gerade das template ynav ausprobiert.
ich finde die funktionen echt super und hut ab vor dem der das geschrieben hat.

leider hab ich das problem, dass es jeden menüpunkt mit der artikel id 1 verlinkt!
hab zwar schon einiges ausprobiert aber will einfach net funktionieren!!

hat jemand vielleicht eine lösung?
wäre euch echt dankbar.

lg Matthias


hallo matze

vielen dank für das kompliment ;) sobald ich mal ein bisschen mehr zeit habe und gerade lust habe werde ich die letzten bugs noch ausmerzen bzw. die funktionen etwas erweitern.

zu deinem problem, hmm, ich kann mir gerade nicht erklären wieso das passiert. hast du die möglichkeit mir per pm einen link auf die seite zu schicken damit ich mal reinschauen kann? redaxo zugang wäre auch toll, aber vorerst sollte ein link auf die seite reichen.

kannst du zusätzlich noch angeben wie und mit welchen optionen du die funktion aufrufst?

danke!

gruss
y
BLUEMOUSE | BlueMouse GmbH
Benutzeravatar
ynamite
 
Beiträge: 118
Registriert: 26. Jan 2007, 13:59
Wohnort: baden

Re: bring es leider nicht zusammen

Beitragvon matze » 21. Okt 2010, 14:45

hab dir gerade eine pn gesendet!
matze
 
Beiträge: 7
Registriert: 18. Nov 2009, 00:03

Beitragvon ynamite » 21. Okt 2010, 14:53

hab den fehler gefunden, lag an der funktion selber.

bitte kopier das gesamte ynav skript nochmals von der template download seite und versuchs nochmal damit. sollte klappen.

gib doch kurz bescheid obs nun funktioniert.

gruss
y
BLUEMOUSE | BlueMouse GmbH
Benutzeravatar
ynamite
 
Beiträge: 118
Registriert: 26. Jan 2007, 13:59
Wohnort: baden

Super

Beitragvon matze » 21. Okt 2010, 14:57

Super
Danke, Danke, Danke

Funktioniert perfekt

Lg Matthias
matze
 
Beiträge: 7
Registriert: 18. Nov 2009, 00:03

Beitragvon ynamite » 21. Okt 2010, 14:58

super, freut mich das es klappt! ;)

wegen dem Ü welches nicht angezeigt wird, ich glaube das liegt an der verwendeten Schrift-Datei, wahrscheinlich enthält diese keine Umlaute.

gruss
y
BLUEMOUSE | BlueMouse GmbH
Benutzeravatar
ynamite
 
Beiträge: 118
Registriert: 26. Jan 2007, 13:59
Wohnort: baden

Beitragvon darwin » 22. Nov 2010, 15:51

Hi ynamite...
hab grad mal versucht die yNav 1:1 vom Downloadbereich in eine REX 4.3
zu testen. Hier wirfts mir ettliche Fehler:
Code: Alles auswählen
Notice: Undefined index: nav in htdocs/redaxo/include/generated/templates/8.template on line 55
Notice: Undefined variable: subNavCounter in htdocs/redaxo/include/generated/templates/8.template on line 128
Notice: Undefined variable: subNavCounter in htdocs/redaxo/include/generated/templates/8.template on line 139
Notice: Undefined index: 1 in htdocs/redaxo/include/generated/templates/8.template on line 139
Notice: Undefined index: 2 in htdocs/redaxo/include/generated/templates/8.template on line 128
Notice: Undefined index: 2 in htdocs/redaxo/include/generated/templates/8.template on line 139
Notice: Undefined index: 3 in htdocs/redaxo/include/generated/templates/8.template on line 128
Notice: Undefined index: 3 in htdocs/redaxo/include/generated/templates/8.template on line 139
Notice: Undefined index: 4 in htdocs/redaxo/include/generated/templates/8.template on line 128
Notice: Undefined index: 4 in htdocs/redaxo/include/generated/templates/8.template on line 139
Notice: Undefined index: 7 in htdocs/redaxo/include/generated/templates/8.template on line 128
Notice: Undefined index: 7 in htdocs/redaxo/include/generated/templates/8.template on line 139
Notice: Undefined index: 8 in htdocs/redaxo/include/generated/templates/8.template on line 128
Notice: Undefined index: 8 in htdocs/redaxo/include/generated/templates/8.template on line 139
Notice: Undefined index: 9 in htdocs/redaxo/include/generated/templates/8.template on line 128
Notice: Undefined index: 9 in htdocs/redaxo/include/generated/templates/8.template on line 139
Notice: Undefined index: 10 in htdocs/redaxo/include/generated/templates/8.template on line 128
Notice: Undefined index: 10 in htdocs/redaxo/include/generated/templates/8.template on line 139


Script 1:1 ausm Downloadbereich in ein Template kopiert, "yNav Template" in Ausgabe Template included und
mit folgender Ausgabe getestet:
Code: Alles auswählen
<?php
$options = array('addSubNav'=>1, 'dropDown'=>1, 'addItemId'=>1, 'useArticleId'=>1);
$navs = createNav($this,$options);
echo $navs[nav];
echo $navs[subnav];
?>


grz. Chris
Benutzeravatar
darwin
 
Beiträge: 1261
Registriert: 2. Jan 2007, 16:10
Wohnort: LA

Beitragvon darwin » 22. Nov 2010, 16:06

hmm... sry ...
ok in einer blanken REX 43 Demo funktioniert es...

werd mal auf Fehlersuche gehen... sry.

grz. Chris
Benutzeravatar
darwin
 
Beiträge: 1261
Registriert: 2. Jan 2007, 16:10
Wohnort: LA

Beitragvon ynamite » 22. Nov 2010, 16:09

darwin hat geschrieben:hab grad mal versucht die yNav 1:1 vom Downloadbereich in eine REX 4.3
zu testen. Hier wirfts mir ettliche Fehler


edit: schon OK ;) im besten Fall sollte es imo auch keine notices geben.

Hi Chris

Danke fürs testen ;) Aber ich muss dich enttäuschen, das sind keine Fehler sondern Hinweise, daher steht auch bei jeder Zeile "notice" und nicht "error". Du hast das PHP error reporting etwas zu aggressiv eingestellt.

Such mal nach dem PHP-Befehl error_reporting und ändere den zum Beispiel in "error_reporting(E_ALL ^ E_NOTICE);" um. Für weitere Infos siehe: http://php.net/manual/de/function.error-reporting.php

Ich hoffe das hilft, ansonsten einfach nochmal melden!

Gruss ;)
y
BLUEMOUSE | BlueMouse GmbH
Benutzeravatar
ynamite
 
Beiträge: 118
Registriert: 26. Jan 2007, 13:59
Wohnort: baden

Beitragvon darwin » 22. Nov 2010, 16:16

eieiei ...
Danke... steh heut irgendwie daneben... hatte das error_reporting
in einem testAddOn mit drin... sry und danke für den tipp

grz. Chris
Benutzeravatar
darwin
 
Beiträge: 1261
Registriert: 2. Jan 2007, 16:10
Wohnort: LA

VorherigeNächste

Zurück zu Templates/Navigationen [R4]

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast