Page 1 of 1

menülayouts für {NAV_TABLE_COLUMN}

Posted: Tue 22. Mar 2005, 12:17
by fitus
im backend sollte es verschiedene menülayouts für {NAV_TABLE_COLUMN} geben.

Posted: Tue 22. Mar 2005, 13:10
by Pappnase
hallo

wenn es im moment nicht noeglich ist mehere vorlagen fuer das menue zu verwalten. ist das doch eigentlich unsinnig oder!?

Posted: Tue 22. Mar 2005, 19:25
by fitus
@pappnase
wie meinst du das?

Posted: Tue 22. Mar 2005, 19:44
by Pappnase
hallo

ganz einfach für das abändern des designs der [NAV_TABLE_COLUMN} muss jedesmal die template_default umgeschrieben werden!

Posted: Tue 22. Mar 2005, 22:34
by nekket
Das geht... mit einem Trick.... und damit kannst du im Prinzip nicht nur (wie ich hier) die Farben verändern, sondern auch die Icons, Größe, etc.)

Schaut mal auf:
http://web44.p15158999.pureserver.info/ ... hp?deutsch

Ist derzeit noch in Bearbeitung.
Aber die Seite verwendet 3 Templates mit 3 Stylesheets.
Damit die Navigation von {NAV_TABLE_COLUMN} richtig funktioniert, muss man eigentlich auch 3 verschiedene Einträge für die config.template.default.php haben.

Das ganze kann man lösen:

1.) config.inc.php anpassen und dort

Code: Select all

 $phpwcms["allow_ext_init"]    = 1;        //allow including of custom external scripts at frontend initialization
$phpwcms["allow_ext_render"]  = 1;        //allow including of custom external scripts at frontend rendering
einstellen.

2.) Man erstellt eine Datei "nav_table.php" (Name egal, nur .php ist wichtig) im Verzeichnis "/phpwcms_template/inc_script/frontend_init"

Inhalt der Datei:

Code: Select all

<?php 
switch($GLOBALS['content']['struct'][$id]['acat_struct']) { 

// Für Unterseiten von Ebene 1
case '1': 
$template_default["nav_table_struct"]["row_norm_bgcolor"]		= "#6B7AA6";
$template_default["nav_table_struct"]["row_over_bgcolor"]		= "#6171A0";
$template_default["nav_table_struct"]["row_active_bgcolor"]		= "#8995B8";
$template_default["nav_table_struct"]["row_space_bgcolor"]		= "#A9B2CB";
break;


// Für Unterseiten von Ebene 2
case 2: 
$template_default["nav_table_struct"]["row_norm_bgcolor"]		= "#A40D3D";
$template_default["nav_table_struct"]["row_over_bgcolor"]		= "#A33659";
$template_default["nav_table_struct"]["row_active_bgcolor"]		= "#B63D64";
$template_default["nav_table_struct"]["row_space_bgcolor"]		= "#B63D64";
break;


 // Standard-Einstellungen, falls Artikel außerhalb von 1 oder 2:
default:
$template_default["nav_table_struct"]["row_norm_bgcolor"]		= "#6B7AA6";
$template_default["nav_table_struct"]["row_over_bgcolor"]		= "#6171A0";
$template_default["nav_table_struct"]["row_active_bgcolor"]		= "#8995B8";
$template_default["nav_table_struct"]["row_space_bgcolor"]		= "#A9B2CB";
break;

} 
?>
Jetzt kann man innhalb dieser Dateien an der richtigen Stelle die entsprechenden Werte eingeben.

3.) Wichtig ist jetzt noch, in der Datei config.template.default.inc.php die in der nav_table.php angegebenen Werte auszukommentieren:

Code: Select all

//$template_default["nav_table_struct"]["row_norm_bgcolor"]		= "#A40D3D";
$template_default["nav_table_struct"]["row_norm_bgimage"]		= "";
$template_default["nav_table_struct"]["row_norm_class"]			= "";
//	
//$template_default["nav_table_struct"]["row_over_bgcolor"]		= "#A33659"; //#AAB7C1
//$template_default["nav_table_struct"]["row_active_bgcolor"]		= "#B63D64";
$template_default["nav_table_struct"]["row_active_bgimage"]		= "";
$template_default["nav_table_struct"]["row_active_class"]		= "";
//
$template_default["nav_table_struct"]["row_space"]				= 1;
//$template_default["nav_table_struct"]["row_space_bgcolor"]		= "#B63D64";
Dann sollte alles sauber laufen....
:shock: Nekket :D

Funzt noch net ganz bei mir...

Posted: Fri 1. Apr 2005, 21:00
by cherusker
Hallo Nekket!

Klingt ja nach einer tollen Lösung! Genau nach sowas such ich.
Hab alles so eingestellt wie Du es gesagt hast, aber es funzt noch nicht gleich sofort (war ja klar bei mir) :?

Die ertsellte PHP-Datei scheint ja gleich vom System eingelesen zu werden. Aber leider keine Veränderung in Sicht.
Was hat es denn genau mit "Case 1" und "Case 2" auf sich? Muss ich das so lassen oder eigenes eintragen? Warum hat Dein Case 1 bei dir Hochkommas und Dein Case 2 nicht? Spielt das eine Rolle?

Wär ja wirklich geil wenn meine 3 Templates jedes Mal ein eigenes Menü bekommen könnten!!

Vielen Dank im Voraus und Grüßle
Armin

EDIT: Vielleicht noch als Ergänzung: Es greift immer nur der Default-Eintrag. Case 1 und 2 werden ignoriert...

Posted: Sat 2. Apr 2005, 00:07
by pepe
Hallo cherusker,

nekket fragt da die Kategorie IDs ab!

Wenn da also steht:

// Für Unterseiten von Ebene 1
case '1':

Dann ist 1 nicht eine laufende Nummer, sondern die entsprechende Identnummer deiner Kategorie-Ebene!


Das wird bei dir sicher nicht zufällig auch 1 und 2 sein... das wirst du also deinen Gegebenheiten etsprechend anpassen müssen.

Deshalb greift bei deinen Versuchen auch nur der Defaultwert... da die Abfragen nicht zu einem Ergebnis führen :wink:

Identnummern

Posted: Sat 2. Apr 2005, 09:05
by cherusker
Hallo Pepe!

Danke für Deine Antwort!
Ich dachte / befürchtete schon soetwas.

Sind die Kategorie IDs nicht die Nummern die ich sehe, wenn ich mit der Maus in der Seitenstruktur im Adminbereich über meine "Hauptpunkte" fahre? Direkt unter der Startseite? Die heißen nämlich 1, 2 und 13. Genauso ruf ich auch im Template dann das jeweilige Menü auf mit NAV_TABLE_COLUMN:1 , NAV_TABLE_COLUMN:2 und NAV_TABLE_COLUMN:13 .
Oder sind das nochmal andere? Wenn ja, wo krieg ich die raus? Oder kann ich die selber vergeben?

Für einen PHP-Einsteiger ist das doch noch etwas verwirrend... :)

Aber danke schonmal! Dieses Feature mit den unterschiedlichen Menüs für verschiedene Templates sollte unbedingt in das nächste Release von PHPWCMS.

EDIT: Wenn ich case 0 einsetze, ändert sich auch alles dementsprechend, aber dann greift das default nicht mehr... :?:

Posted: Sun 3. Apr 2005, 10:59
by brans
also die ID hast du genau richtig erkannt.

Posted: Sun 3. Apr 2005, 11:07
by cherusker
Hi brans!

Bin schon verrückt geworden vor lauter suchen...
Dann ist bei mir wohl noch irgendwo anders der Wurm drin. Mit der 1.2.1-DEV sollte es doch funzen, oder?
Ich glaub ich lad WCMS am besten nochmal in einen neuen Ordner hoch und teste mal "out-of-the-box".

Merci & Gruß
Armin

Posted: Sun 3. Apr 2005, 11:55
by cherusker
Hallo nochmals!

Hab jetzt PHPWCMS nochmals (bei einem anderen Provider) neu hochgeladen. 3 Layouts erstellt, 3 Vorlagen erstellt, 3 Hauptseiten (mit jeweils 3 Unterseiten mit jew. den richtigen Templates zugewiesen) erstellt, die Anpassungen vorgenommen, und:

immer noch das selbe Lied :cry: Die Menüs übernehmen einfach die Default-Einstellungen. Den ersten Schritt von Nekket (Anpassung der config.inc.php) musste ich übrigens nicht vornehmen, da beide Werte schon bei "1" standen. Aber das gehört wohl so, oder?

Hat noch irgend jemand eine Idee, woran das liegen könnte? Ich mit meinen besch...eidenen Kenntnissen bin definitiv am Ende. Wäre echt cool, wenn jemand einen Geistesblitz posten könnte!!

Merci
Armin

Posted: Mon 9. May 2005, 08:40
by nekket
Hallo,

die ID bezieht sich auf den Ordner, in dem ein Menüpunkt enhalten ist.

Beispiel: (die id's sind willkürlich in diesem Beispiel)

Code: Select all

Menüpunkt 1 (id=1)
  - Untermenüpunkt 1.1 (id = 5)
  - Untermenüpunkt 1.2 (id = 8)
  - Untermenüpunkt 1.3 (id = 10)

Menüpunkt 2 (id=2)
  - Untermenüpunkt 2.1 (id = 12)
  - Untermenüpunkt 2.2 (id = 14)
  - Untermenüpunkt 2.3 (id = 25)
Mein gepostetes Script macht nun folgendes:
Es wird abgefragt, in welchem übergeordneten Ordner ein Untermenüpunkt liegt.

Konkretes Beispiel:

Code: Select all

<?php 
switch($GLOBALS['content']['struct'][$id]['acat_struct']) { 

// Für Unterseiten von Menüpunkt 1 
case '1': 
$template_default["nav_table_struct"]["row_norm_bgcolor"]      = "#6B7AA6"; 
$template_default["nav_table_struct"]["row_over_bgcolor"]      = "#6171A0"; 
$template_default["nav_table_struct"]["row_active_bgcolor"]      = "#8995B8"; 
$template_default["nav_table_struct"]["row_space_bgcolor"]      = "#A9B2CB"; 
break; 


// Für Unterseiten von Menüpunkt 2 
case 2: 
$template_default["nav_table_struct"]["row_norm_bgcolor"]      = "#A40D3D"; 
$template_default["nav_table_struct"]["row_over_bgcolor"]      = "#A33659"; 
$template_default["nav_table_struct"]["row_active_bgcolor"]      = "#B63D64"; 
$template_default["nav_table_struct"]["row_space_bgcolor"]      = "#B63D64"; 
break; 


 // Standard-Einstellungen, falls Artikel außerhalb von 1 oder 2: 
default: 
$template_default["nav_table_struct"]["row_norm_bgcolor"]      = "#6B7AA6"; 
$template_default["nav_table_struct"]["row_over_bgcolor"]      = "#6171A0"; 
$template_default["nav_table_struct"]["row_active_bgcolor"]      = "#8995B8"; 
$template_default["nav_table_struct"]["row_space_bgcolor"]      = "#A9B2CB"; 
break; 

} 
?>
Was folgt daraus?
- Alle Navigationpunkte und deren Artikel "innerhalb" von Menüpunkt 1 erhalten die Settings, die unter "case = 1" gemacht wurden.
- Alle Navigationpunkte und deren Artikel "innerhalb" von Menüpunkt 2 erhalten die Settings, die unter "case = 2" gemacht wurden.

Alle anderen Menüpunkte bzw. Artikel bekommen die default Einstellung.

Achtung:
Erstellst du innerhalb eines Menüpunktes nochmal einen Menüpunkt, musst du seinen übergeordneten Menüpunkt auch in die "liste" mit "case = x" aufnehmen.

Soweit klar? :D

NOT WORKING: {NAV_TABLE_COLUMN:1} and different color sets

Posted: Wed 15. Jun 2005, 12:27
by strandel
I have the current release 1.2.3 installed. Whatever I do I can not make it work with 2 or 3 different color layouts in the {NAV_TABLE_COLUMN:1}.

I tried the above instruction step by step but in my configuration always the default color set will be used. I am really frustrated. I spent already 6 1/2 hours on this problem only.