Systemseiten aus Sitemap auschließen

Gesperrt
matt.loker
Beiträge: 203
Registriert: Mo 7. Mai 2007, 09:05
Kontaktdaten:

Systemseiten aus Sitemap auschließen

Beitrag von matt.loker » Mo 20. Aug 2007, 16:19

Hallo Leute,
ich habe gerade erfolglos eine Suchanfrage "verzeichnisse aus sitemap ausschließen" gestartet. Ich habe nichts passendes gefunden.

Mein Problem ist, dass ich das komplette Menu "Systemseiten" nicht in der Sitemap aufgelistet haben will. Kann mir jemand verraten, wie ich das anstelle. ich habe glaub jeden Artikel hier im Forum durchgeschaut in dem "Sitemap" vorkommt - erfolglos.

Danke für die Hilfe!

grüße
matt

wosch

Beitrag von wosch » Mo 20. Aug 2007, 16:33

Ich nutze die Standard-Sitemap nicht mehr.
Ich meine mich aber zu erinnern das man bei Konfiguration / Vorkonfiguration des Models angeben kann welche Bäume / oder alles durchsucht und angezeigt werden sollen.

matt.loker
Beiträge: 203
Registriert: Mo 7. Mai 2007, 09:05
Kontaktdaten:

Beitrag von matt.loker » Mo 20. Aug 2007, 16:41

Danke - ich werd mal nachschaun :)

mal eine andere Frage - welche Sitemap benutzt du und würdest du sagen, dass sie viel besser ist (und warum) als die Standard? Ich bin am überlegen die Standard-Sitemap auszutauschen aber irgendwie trau ich mich nich.

wosch

Beitrag von wosch » Mo 20. Aug 2007, 16:49

matt.loker hat geschrieben:mal eine andere Frage - welche Sitemap benutzt du und würdest du sagen, dass sie viel besser ist (und warum) als die Standard? Ich bin am überlegen die Standard-Sitemap auszutauschen aber irgendwie trau ich mich nich.
vpSitemap
Nun, die ist einfach besser :lol:
Über CSS sehr viel flexibler zu gestalten
(wenn man man verstanden hat wie die Klassen/ID dort aufgebaut sind)

Installier sie doch mal parallel, dann kannste schön spielen.

matt.loker
Beiträge: 203
Registriert: Mo 7. Mai 2007, 09:05
Kontaktdaten:

Beitrag von matt.loker » Mo 20. Aug 2007, 16:51

kann ich da auch besser bestimmen welche seiten in der sitemap angezeigt werden oder nicht?? wie z.b. bei mir jetzt die "Systemseiten"

wosch

Beitrag von wosch » Mo 20. Aug 2007, 17:14

Bild

matt.loker
Beiträge: 203
Registriert: Mo 7. Mai 2007, 09:05
Kontaktdaten:

Beitrag von matt.loker » Mo 20. Aug 2007, 18:06

super - das hat mich überzeugt :)

danke!

matt.loker
Beiträge: 203
Registriert: Mo 7. Mai 2007, 09:05
Kontaktdaten:

Beitrag von matt.loker » Mo 20. Aug 2007, 19:42

ich hätte da trotzdem noch eine Frage zur Standard-Sitemap- sorry!

Der Menubaum "Systemseiten" hat bei mir die idcat: 3

Wie müsste man den "Output" ändern damit er alles anzeigt außer der idcat:3 ?

Code: Alles auswählen

<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname  :      Sitemap
* Author(s)   :     Jan Lengowski, Jose Rodriguez
* Copyright   :     Contenido - four for business
* Created     :     15-08-2002
************************************************/

#System properties in use:
#Type: navigation, Name: idcat_homepage
#Contains idcat of tree to be displayed in sitemap

#Includes
cInclude("frontend", "includes/functions.navigation.php");
cInclude("classes", "class.frontend.permissions.php");
cInclude("classes", "class.frontend.groups.php");
cInclude("classes", "class.frontend.users.php");
cInclude("classes", "class.template.php");

#If no tree is selected, use client setting
$newcat = "CMS_VALUE[0]";
if ($newcat=='') {
    $cApiClient = new cApiClient($client);
    $newcat = $cApiClient->getProperty('navigation', 'idcat_homepage');
}

#Get cat tree
$sql = "SELECT level FROM ".$cfg["tab"]["cat_tree"]." WHERE idcat=$newcat";
$db->query($sql);
$db->next_record();

echo sitemap($newcat);

function sitemap($newcat) {

	global $lang, $client, $cfg, $printing;

	#Initialize database objects
	$db = new DB_Contenido;
	$db2 = new DB_Contenido;
	$db3 = new DB_Contenido;
	
	$tpl = new Template;
	$tpl2 = new Template;
	$tpl3 = new Template;

	$sql = "SELECT * FROM ".$cfg["tab"]["cat_tree"]." AS A, ".$cfg["tab"]["cat"]." AS B, ".$cfg["tab"]["cat_lang"]." AS C "."WHERE A.idcat=B.idcat AND B.idcat=C.idcat AND "."C.idlang='$lang' AND B.idclient='$client' AND "."B.parentid =$newcat AND C.visible=1 "."ORDER by A.idtree";
	$db->query($sql);

	#Build level 1

	$tpl->reset();
	while ($db->next_record()) {
		#Check permissions, determine visibility
		$visible = checkCatPermission($db->f("idcatlang"),$db->f("public"));
		if ($visible) {
			$tpl->set("d","URL","front_content.php?idcat=".$db->f("idcat"));
			$tpl->set("d","NAME",$db->f("name"));
			$sql = "SELECT * FROM ".$cfg["tab"]["cat_tree"]." AS A, ".$cfg["tab"]["cat"]." AS B, ".$cfg["tab"]["cat_lang"]." AS C "."WHERE A.idcat=B.idcat AND B.idcat=C.idcat AND "."C.idlang='$lang' AND B.idclient='$client' AND "."B.parentid =".$db->f("idcat")." AND C.visible=1 "."ORDER by A.idtree";
			$db2->query($sql);

			#Build level 2
			$tpl2->reset();
			$level2 = '';
			$j = 0;
			while ($db2->next_record()) {
				$visible = checkCatPermission($db2->f("idcatlang"),$db2->f("public"));

				if ($visible) {
					$tpl2->set("d", "URL", "front_content.php?idcat=".$db2->f("idcat"));
					$tpl2->set("d", "NAME", $db2->f("name"));
					$sql = "SELECT * FROM ".$cfg["tab"]["cat_tree"]." AS A, ".$cfg["tab"]["cat"]." AS B, ".$cfg["tab"]["cat_lang"]." AS C "."WHERE A.idcat=B.idcat AND B.idcat=C.idcat AND "."C.idlang='$lang' AND B.idclient='$client' AND "."B.parentid =".$db2->f("idcat")." AND C.visible=1 "."ORDER by A.idtree";
					$db3->query($sql);

					#Build level 3
					$tpl3->reset();
					$level3 = '';
					$k = 0;
					while ($db3->next_record()) {
						$visible = checkCatPermission($db3->f("idcatlang"),$db3->f("public"));
						if ($visible) {
							$tpl3->set("d", "URL", "front_content.php?idcat=".$db3->f("idcat"));
							$tpl3->set("d", "NAME", $db3->f("name"));
						    $tpl3->next();
							$k ++;
						}
					}
					$level3 = $tpl3->generate($cfgClient[$client]["path"]["frontend"]."templates/"."sitemap_level3.html",1,0);
					$j++;
				}
				$tpl2->set("d", "LEVEL3", $level3);
				$tpl2->next();
			}
			$level2 = $tpl2->generate($cfgClient[$client]["path"]["frontend"]."templates/"."sitemap_level2.html",1,0);
		}
		$tpl->set("d", "LEVEL2", $level2);
		$tpl->next();
	}
	$tpl->generate($cfgClient[$client]["path"]["frontend"]."templates/"."sitemap_level1.html");
}

?>
Danke schon mal für die Hilfe!!

netzteil
Beiträge: 13
Registriert: Di 11. Sep 2007, 13:15
Wohnort: Essen
Kontaktdaten:

me too ich will auch ausschliessen

Beitrag von netzteil » Mo 8. Okt 2007, 16:13

wosch hat geschrieben:Bild
Hallo, gebe zu. bin blutiger newbie, ich möchte auch die Systemseiten (oder auch mal was anderes) aus der vpsitemap ausschliessen.
Die Anzahl ebenen gibt jedoch an, wie tief im Baum die map gehen soll.

Bin für Fingerzeige sehr dankbar...
--
Freundliche Gruesse,
Netzteil - Udo Marx
http://www.netzteil.com/session

wosch

Re: me too ich will auch ausschliessen

Beitrag von wosch » Mo 8. Okt 2007, 16:39

netzteil hat geschrieben: Die Anzahl ebenen gibt jedoch an, wie tief im Baum die map gehen soll.

Bin für Fingerzeige sehr dankbar...
Und wo ist dein Problem dabei?
Schon installiert?
Schon mal mit gespielt, mit verschiedenen Einstellungen?

netzteil
Beiträge: 13
Registriert: Di 11. Sep 2007, 13:15
Wohnort: Essen
Kontaktdaten:

Re: me too ich will auch ausschliessen

Beitrag von netzteil » Di 9. Okt 2007, 08:36

wosch hat geschrieben:
netzteil hat geschrieben: Die Anzahl ebenen gibt jedoch an, wie tief im Baum die map gehen soll.
Schon installiert?
Schon mal mit gespielt, mit verschiedenen Einstellungen?
Ja,installiert und rumgespielt.

Wie ich es verstehe gibt die Anzahl der Ebenen die Baumtiefe an.
Kategorie offline stellen geht, ist aber nicht Sinn der Sache.
Ich habe nicht gefunden, wie ich einzelne Kategorien oder Artikel aus der sitemap ausschliessen kann.

Vielleicht habe ich ja auch Tomaten auf den Augen.
Bitte untertänigst um Erleuchtung.
--
Freundliche Gruesse,
Netzteil - Udo Marx
http://www.netzteil.com/session

wosch

Re: me too ich will auch ausschliessen

Beitrag von wosch » Di 9. Okt 2007, 10:55

netzteil hat geschrieben: Ich habe nicht gefunden, wie ich einzelne Kategorien oder Artikel aus der sitemap ausschliessen kann.
Das ist in diesem Modul nicht vorgesehen gezielt einzelne Kategorien auszublenden.
Alle hier geposteten SiteMap-Module sind dafür nicht ausgelegt.
Muß du selber etwas programmieren was deinem Wunsch entspricht.

Thorsten G.
Beiträge: 124
Registriert: Do 14. Jul 2005, 22:37
Kontaktdaten:

Beitrag von Thorsten G. » Mo 1. Sep 2008, 12:31

Die Lösung ist holprig, tut´s aber:

Bei mir hat der Baum "Systemseiten" die idcat = 30, also habe ich im Modul bei der Abfrage den Baum so ausgeschlossen:

Code: Alles auswählen

function vpSitemap($kategorie=0, $level)
{
  global $lang, $client, $cfg, $startkategorie, $anzahlEbenen, $ebeneNullAnzeigen;
  $db  = new DB_Contenido;
  $sql  = "SELECT
             *
           FROM
             ".$cfg["tab"]["cat_tree"]." AS A,
             ".$cfg["tab"]["cat"]." AS B,
             ".$cfg["tab"]["cat_lang"]." AS C
           WHERE
             A.idcat=B.idcat
             AND B.idcat=C.idcat
             AND C.idlang='$lang'
             AND B.idclient='$client'
             AND B.parentid=$kategorie
             AND level <= $anzahlEbenen
             AND C.visible=1
             AND B.idcat!=30 // Baum selbst ausschließen
             AND B.parentid!=30 // Untermenüs ausschließen
           ORDER by A.idtree";
Wobei mir gerade einfällt, dass man die Untemenüs wahrscheinlich nicht einmal ausschließen muss, wenn die parent Kategorie schon ausgeschlossen ist... egal.

Gesperrt