Page 1 of 1

{NAV_TABLE_COLUMN:2} erzeugt kein Menü

Posted: Sat 29. Mar 2008, 21:52
by yanosz
Hallo,

ich habe hier ein kleines Problem.
Meine Webseite hat 4 Kategorien, 3 davon werden in 3 vers. Frames ausgegeben. (Header - id: 3, Navigation - id: 1, Content - id:2 , Galerie - id: 4).
Nun soll in einem Artikel der Kategorie Navigation ein Menü für Artkel der Kategorie content erzeugt werden (überraschend - :D )
Dazu habe ich einfach {NAV_TABLE_COLUMN:2} in einen HTML-Content-Part geschrieben. Jedoch wird kein Menü erzeugt. Schreibe ich stattdessen {NAV_TABLE_COLUMN} erhalte ich an Menü über alle Kategorien - aber das möchte ich nicht.
Wo liegt der Fehler?

phpwcms liegt in Version 1.3.3 vor.

Danke,
Keep smiling
yanosz

Re: {NAV_TABLE_COLUMN:2} erzeugt kein Menü

Posted: Sat 29. Mar 2008, 22:33
by yanosz
Hallo,

hat sich erledigt.

Danke,
Keep smiling
yanosz

Re: {NAV_TABLE_COLUMN:2} erzeugt kein Menü

Posted: Sat 29. Mar 2008, 23:16
by Jensensen
yanosz wrote:...hat sich erledigt...
Hi yanosz,
wieso, weshalb, warum???
Wie haste das Problem gelöst?

Re: {NAV_TABLE_COLUMN:2} erzeugt kein Menü

Posted: Sun 30. Mar 2008, 13:30
by yanosz
ja hallo erstmal,..

das war ein Missverständnis meinerseits.
Ich ging davon aus, dass im Menü Artikel verlinkt werden - jedoch werden im Menü scheinbar nur Kategorien berücksichtigt - letztere gab es keine.
Btw. Gibt's einen config-Eintrag oder Patch der dafür sorgt, dass auch Artikel verlinkt werden?

Danke,
Keep smiling
yanosz

Re: {NAV_TABLE_COLUMN:2} erzeugt kein Menü

Posted: Sun 30. Mar 2008, 14:06
by pepe
phpwcms arbeitet so, daß die unter ADMIN angelegte Kategorie-Struktur als Navigation abgebildet wird...

Also stellst du für jeden gewünschten Artikel zunächst diese Kategorie her (die Tiefe der Struktur ist beliebig) und fügst dann unter ARTIKEL einen Artikel in jede dieser Kategorie...

Dann passiert genau das , was du dir vorstellst!!!

Weitere Diskussionen, "wieso" und "warum nicht so wie bei dem xxx CMS"... führen hier nicht zum Erfolg!

Re: {NAV_TABLE_COLUMN:2} erzeugt kein Menü

Posted: Sun 30. Mar 2008, 14:23
by update
:wink: und als Ergänzung:
Natürlich kannst Du auch 100 Artikel in einer Strukturebene versammeln - dann kommt eben auf jede Seite zB ein CP Artikelmenü und dann biste wieder aptudeit ;)
Achja - im BE unter Struktur für eben diese Struktur statt -1 so was wie 99 reinschreiben nicht vergessen...

Re: {NAV_TABLE_COLUMN:2} erzeugt kein Menü

Posted: Sun 30. Mar 2008, 19:33
by yanosz
ja hallo erstmal,..

ich habe mir einfach kurz einen replacement-Tag dafür definiert:

Code: Select all

Index: inc_front/front.func.inc.php
===================================================================
--- inc_front/front.func.inc.php	(revision 308)
+++ inc_front/front.func.inc.php	(revision 309)
@@ -3096,4 +3097,15 @@
 	return html_specialchars($caption);
 }
 
+function article_list_struct($current_cat_id,$database){ //Get brief article navigation menue 
+	$current_articles = get_actcat_articles_data($current_cat_id);
+	$ret = "<ul class=\"article_navigation\">\n";
+	foreach($current_articles as $current_article){
+		$ca_title = $current_article['article_title'];
+		$ca_id = $current_article['article_id'];
+		$ret .= "<li>".get_article_idlink($ca_id,$ca_title,$database)."</li>\n";
+	}
+	$ret .= "</ul>";
+	return $ret;
+}
 ?>
\ No newline at end of file
Index: inc_front/content.func.inc.php
===================================================================
--- inc_front/content.func.inc.php	(revision 308)
+++ inc_front/content.func.inc.php	(revision 309)
@@ -490,6 +490,14 @@
 	$replace = 'nav_table_struct($content["struct"], $content["cat_id"], "$1", $template_default["nav_table_struct"]);';
 	$content["all"] = preg_replace('/\{NAV_TABLE_COLUMN:(\d+)\}/e', $replace, $content["all"]);
 }
+// -------------------------------------------------------------
+
+// Simple article navigation
+if(strpos($content["all"],'{NAV_ARTICLE') !== false) {
+	$content["all"] = str_replace('{NAV_ARTICLE}', '{NAV_ARTICLE:'.$content["cat_id"].'}', $content["all"]);
+	$replace = 'article_list_struct("$1",$db);';
+	$content["all"] = preg_replace('/\{NAV_ARTICLE:(\d+)\}/e', $replace, $content["all"]);
+	}
 
 // -------------------------------------------------------------
 

Keep smiling
yanosz

Re: {NAV_TABLE_COLUMN:2} erzeugt kein Menü

Posted: Sun 30. Mar 2008, 22:13
by Jensensen
also auf die frage hin, ob du es wusstest, dass ich es noch nicht weiß:
was haste da gemacht? was wird da --> wann replaced?

Re: {NAV_TABLE_COLUMN:2} erzeugt kein Menü

Posted: Mon 31. Mar 2008, 09:40
by juergen
..wrong

Re: {NAV_TABLE_COLUMN:2} erzeugt kein Menü

Posted: Mon 31. Mar 2008, 11:56
by yanosz
ja hallo erstmal,..

{NAV_ARTICLE:categorie_id} (und {NAV_ARTICLE}) werden durch eine Liste aller in der Kategegorie vorkommenden (bzw. in der aktuellen Kategorie vorkommenden) Artikel ersetzt.
Einschränkungen:
- Nicht-rekursiv (sollte aber einfach mgl. sein, da <ul> einen rekusiven Aufbau erlaubt - brauche ich (bislang?) nicht)
- Ist für die Kategorie ein Wert für eine "Top Artikel"-Anzahl gesetzt, so umfasst das Menü nur diese. (Ich sehe derzeit keinen Grund das zu ändern)

Warum selber definiert und nicht die normale Liste verwendet?
- Flexibler einsetzbar (auch in content-parts, etc.)
- Kann auch auf andere Kategorien zugreifen
- Einfach mit CSS zu stylen.
- Kaum Code, eigentlich wird die Fkt. schon von phpwcms geleistet.
... einfach ein paar Zeilen Code die mir helfen.


Keep smiling
yanosz