mod_pages -> Sitemap mit mod_search

Diskussion zum Modul Menu (Automatische Navigation) für ConPresso 4
Antworten
SebastianG
ConPresso-User
Beiträge: 72
Registriert: 04.04.2009 20:01
Hat sich bedankt: 29 Mal
Danksagung erhalten: 3 Mal

mod_pages -> Sitemap mit mod_search

Beitrag von SebastianG »

Hallo,

ich bitte um Eure Hilfe:

Wenn man derzeit die Sitemap geöffnet hat und dann auf Suche oben klickt, erscheinen alle Ergebnisse usw. unterhalb der Sitemap :|

Was kann ich da tun?

Die Sitemap kommt über mod_pages und ist als Rubrik angelegt, die sich außerhalb der Navigation befindet und ein leeres Template verwendet.

Und eine 2.Frage (jedoch nicht soo wichtig):
wie kann ich bei Aufruf der Suche, dies auch im title-tag entsprechend kennzeichnen?

Viele Grüße
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

Du scheinst die Sitemap im Kopf (header) einzubinden, daher steht sie oben.
Bei Einbindung im Fuß (footer) würde sie unten stehen.

Oder geht es nicht um die Position sondern daß sie überhaupt erscheint?

Ist mod_search denn selbst als Rubrik angelegt?

Welche Rubrik ist denn im Suchformular angegeben?

Wenn man dort keine feste Rubrik einträgt, dann wird die aktuelle genommen (also die Sitemap-Rubrik).

Abhilfe schafft das Eintragen einer festen Wunschrubrik (im Idealfall die Rubrik "Suche"...)
wie kann ich bei Aufruf der Suche, dies auch im title-tag entsprechend kennzeichnen?
Soll die Kennzeichnung durch das Wort "Suche" erfolgen oder was bedeutet "entsprechend"?

Auch hier hilft eine Rubrik...


Da die Sitemap ja eher INHALT statt Gestaltung ist, ist es sinnvoll (zumindest mache ich es immer so) diese als Kopie des _rubric-Verzeichnisses anzulegen und dort in der index.php die Zeile zwischen Header- und Footer-Einbindung, also
require(CPO_BASEDIR.'_includesite/i_index.php');
durch die Zeile
include(CPO_BASEDIR.$activeModules['Menu']['directory'].'/includes/sitemap.inc.php');
zu ersetzen.
Wenn man sie nicht ersetzt sondern dazuschreibt, dann kann man sogar Artikel zu der Sitemap (z.B. eine Anleitung) dazuschreiben.


Und jetzt verschiebe ich das ganze ins Forum für mod_menu, nicht daß einer denkt es gäbe tatsächlich ein Sitemap-Modul... hier geht es ja nicht wirklich um mod_pages oder um mod_search sondern die Frage wie man die Sitemap von mod_menu sinnvoll einbaut :wink:
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
SebastianG
ConPresso-User
Beiträge: 72
Registriert: 04.04.2009 20:01
Hat sich bedankt: 29 Mal
Danksagung erhalten: 3 Mal

Beitrag von SebastianG »

Hallo Markus und danke für die schnelle Antwort!
Du scheinst die Sitemap im Kopf (header) einzubinden, daher steht sie oben.

Oder geht es nicht um die Position sondern daß sie überhaupt erscheint?
ja, ist im header - und die Sitemap soll nicht mehr erscheinen.
Ist mod_search denn selbst als Rubrik angelegt?
bisher nicht.
habe jetzt unsichtbare Rubrik "Suche" mit leerem Template angelegt
Welche Rubrik ist denn im Suchformular angegeben?
das verstehe ich nicht:
wo genau sollte eine Rubrik eingeben werden - also jetzt "Suche"?
oder meinst du im Formular-Code:

Code: Alles auswählen

<form method="get" action="../mod_search/index.php" >
Abhilfe schafft das Eintragen einer festen Wunschrubrik (im Idealfall die Rubrik "Suche"...)
jo, wo genau die feste Rubrik "Suche" eingeben?
Da die Sitemap ja eher INHALT statt Gestaltung ist, ist es sinnvoll (zumindest mache ich es immer so) diese als Kopie des _rubric-Verzeichnisses anzulegen und dort in der index.php die Zeile zwischen Header- und Footer-Einbindung, also
require(CPO_BASEDIR.'_includesite/i_index.php');
durch die Zeile
include(CPO_BASEDIR.$activeModules['Menu']['directory'].'/includes/sitemap.inc.php');
zu ersetzen.
Wenn man sie nicht ersetzt sondern dazuschreibt, dann kann man sogar Artikel zu der Sitemap (z.B. eine Anleitung) dazuschreiben.
ich verstehe dich so:
neues Verzeichnis _suche/ anlegen, dort alles aus _rubric/ reinkopieren und dort die _suche/index.php anpassen/ergänzen.

Das wäre für mich auch ok.

Wäre das jetzt eine Alternative oder parallel zu den o.g. Schritten?
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

Wenn es die sitemap-Rubric werden soll, würde ich persönlich die Kopie "sitemap" statt "_suche" nennen. Ansonsten genau so.

Dein Suchfeld hast Du vermutlich entsprechend der Hilfe angelegt
Beispiel 13.1. Suchformular für das Backend (das müsste eigentlich Frontend heißen)

Code: Alles auswählen

<form method="get" action="../mod_search/index.php" >
    <input type="hidden" name="action" value="search" />
    <input type="hidden" name="rubric" value="<?php echo $cpoRubric['id']; ?>" />
    Bitte geben Sie Ihren Suchbegriff ein:<br />
    <input type="text" name="q" value="" />
    <input type="submit" value="Suche">
</form>
Wenn Du nun die Zeile
<input type="hidden" name="rubric" value="<?php echo $cpoRubric['id']; ?>" />
änderst in
<input type="hidden" name="rubric" value="Suche" />
wird beim Suchen immer die Rubrik Suche aufgerufen.

Hierzu mußt Du nur noch über "Rubrik erstellen" eine Rubrik mit dem Namen "Suche" erstellen und bei dieser als Rubrikverzeichis "mod_search" auswählen.
Damit wird auch sofort die Titelzeile mit dem Wort "Suche" bereichert.
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
SebastianG
ConPresso-User
Beiträge: 72
Registriert: 04.04.2009 20:01
Hat sich bedankt: 29 Mal
Danksagung erhalten: 3 Mal

Beitrag von SebastianG »

Ok, hab die Kopie vom _rubric-Verzeichnis "sitemap" genannt.

Das hidden-feld ist auch entsprechend der Rubrik "Suche" angepasst.

Die Rubrik "Suche" hatte ich erstellt.
Dort das mod_search-Verzeichnis ausgewählt.

Die Rubrik "Sitemap" hatte ich auch erstellt.
Dort das sitemap-Verzeichnis analog ausgewählt.

Super, die Suche funzt jetzt astrein :)


Die sitemap/index.php habe ich um die o.g. Zeile ergänzt, sodaß in Mitte so ausschaut:

Code: Alles auswählen

require(CPO_BASEDIR.'_includesite/i_index.php');
// für Sitemap folgende zeile ergänzt, damit auch neue Artikel ergänzbar sind - ansonsten anstatt vorheriger Zeile einfügen.
include(CPO_BASEDIR.$activeModules['Menu']['directory'].'/includes/sitemap.inc.php');
Sitemap:
der alte Sitemap-link funzt - auch mit Suche:
http://kinderhaus65.de/cpo/_rubric/index.php?rubric=19

Der "neue" Sitemap-link funzt noch nicht bzw muss ich nachfragen, weshalb wir die Verzeichnis-Kopie erstellt haben, denn diese Links erzeugen Fehler (die sitemap-baumstrukltur erscheint 3x untereinander):
http://kinderhaus65.de/cpo/sitemap/
http://kinderhaus65.de/cpo/sitemap/index.php?rubric=19
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

Da es jetzt ja eine Rubrik gibt, die die Sitemap anzeigt, muß die Ausgabe der Sitemap nicht nochmal zusätzlich im Header dieser Rubrik erfolgen.
Da sich die Arrays addieren erfolgt die Ausgabe scheinbar dreifach.
Einmal im Header und dann doppelt im Content-Bereich.
Wenn die Ausgabe im header weg ist, dann wird auch im Content nur noch einfach ausgegeben.

Wie gesagt, die Sitemap ist Content und kein Header oder Footer.
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
SebastianG
ConPresso-User
Beiträge: 72
Registriert: 04.04.2009 20:01
Hat sich bedankt: 29 Mal
Danksagung erhalten: 3 Mal

Beitrag von SebastianG »

-> in mod_pages beim Rubrik-Kopf der Sitemap-Rubrik-Einstellungen den sitemap-include entfernen.

Besten Dank für die ausdauernde Hilfe! :)
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

Jetzt mußt Du nur noch den Link zur Sitemap anpassen.
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
SebastianG
ConPresso-User
Beiträge: 72
Registriert: 04.04.2009 20:01
Hat sich bedankt: 29 Mal
Danksagung erhalten: 3 Mal

Beitrag von SebastianG »

Ich hab die Suche nun doch als sichtbare Rubrik eingebunden (und per css ausgeblendet), damit diese auch in der Sitemap auftaucht.

Was mich jedoch schon davor gestört hat, das bei Rubriken, die nur ein Artikel enthalten, dieser Artikel als Link inder Sitemap auch angezeigt wird, also doppeltgemoppelt zB bei Home, Angebot und Suche.

Kann man eine Abfrage einbauen, wenn Rubrik nur 1 Artikel enthält, dann zeige nur die Rubrik an - und nicht auch noch den Artikel?!
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

Ich hab die Suche nun doch als sichtbare Rubrik eingebunden (und per css ausgeblendet), damit diese auch in der Sitemap auftaucht.
Auch eine Möglichkeit.
Ich schreibe solche Sonderrubriken einfach drunter, wie z.B. auf
http://www.kft-online.de/sitemap/index. ... ic=Sitemap
die drei letzten Punkte, die nicht Bestandteil der Navigation sind.

Und wegen den Artikeln suchst Du in sitemap.inc.php die Zeile

Code: Alles auswählen

if ($db->num_rows()>0)	{
und änderst sie in

Code: Alles auswählen

if ($db->num_rows()>1)	{
Ungetestet!
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
SebastianG
ConPresso-User
Beiträge: 72
Registriert: 04.04.2009 20:01
Hat sich bedankt: 29 Mal
Danksagung erhalten: 3 Mal

Beitrag von SebastianG »

Und wegen den Artikeln suchst Du in sitemap.inc.php die Zeile

Code: Alles auswählen

if ($db->num_rows()>0)	{
und änderst sie in

Code: Alles auswählen

if ($db->num_rows()>1)	{
Ungetestet!
\mod_menu\includes\sitemap.inc.php

Sauber - funzt :)
Antworten