pragmaMx Support Forum

pragmaMx => Themes & Design => Thema gestartet von: breakdancer in 08 November 2007, 00:30:59

Titel: Class "Pathview" - Wie bekomme ich eine andere URL definiert ?
Beitrag von: breakdancer in 08 November 2007, 00:30:59
Hallo,

auf meiner Site läuft ja das mx-Rainbow. Im oberen Bereich integriert ist dabei die Anzeige des aktuellen Pfades, der sich je nach aufgerufenem Modul verändert.

z. B. Home > SMF-Board

Das Wort "Home" ist dabei verlinkt mit - klar - der Homepage, wer darauf klickt, kommt also zur Startseite zurück. Eingefügt wird das Ganze in der theme.html über

<div id="pathview">&nbsp;{CURRENTPATH}</div></td>   

Mein Problem ist nun, dass der Homelink allerdings nicht wie ich das möchte tatsächlich auf meine Home-URL zeigt (www.kirmes-und-volksfest.de) sondern auf hxxp://www.kirmes-und-volksfest.de/index.php - und damit nach mod_rewrite auf hxxp://www.kirmes-und-volksfest.de/home.html.

Wo kann ich denn den Link ändern, dass er tatsächlich auch auf die Base-URL zeigt und nicht auf die index.php bzw. home.html ?

Grund für diese Anfrage ist, dass Suchmaschinen die einzelne Seite und deren Inhalte ja derzeit unter zwei Adressen finden und mir daher die Gefahr des Duplicate Content zu groß ist...

Liebe Grüße

Markus

Titel: Re: Class "Pathview" - Wie bekomme ich eine andere URL definiert ?
Beitrag von: siggi in 08 November 2007, 00:41:23
probiers mal mit "./"  anstatt "index.php" :)
Titel: Re: Class "Pathview" - Wie bekomme ich eine andere URL definiert ?
Beitrag von: breakdancer in 08 November 2007, 00:44:59
*g* Ja nee, das ist ja soweit klar.

Ich finde nur die Stelle nicht, wo der Pfad definiert wird... In welcher Datei muss ich das denn ändern ?

Liebe Grüße

Markus
Titel: Re: Class "Pathview" - Wie bekomme ich eine andere URL definiert ?
Beitrag von: siggi in 08 November 2007, 00:52:10
Ich denke, das wird in der mod_rewrite - datei definiert. da wird ja auch z.b. 'modules.php?name=foo' durch 'foo.html' ersetzt oder umgekehrt :)
Titel: Re: Class "Pathview" - Wie bekomme ich eine andere URL definiert ?
Beitrag von: breakdancer in 08 November 2007, 00:59:01
Hm,

glaube ich nicht... Die Umschreibung auf "home.html", ja die wird über das mod_rewrite gesteuert, das stimmt natürlich.

Aber irgendwo muss doch {CURRENTPATH} erstmal festgelegt werden und damit auch die index.php, die dann im zweiten Schritt beim Aufruf in die home.html umgeschrieben wird.

Verstehst Du, was ich meine ? Die Umschreibung wäre ja nicht möglich, wenn nicht irgendwo festgelegt würde, dass die index.php an dieser Stelle aufgerufen werden soll...

Grüßle

Markus
Titel: Re: Class "Pathview" - Wie bekomme ich eine andere URL definiert ?
Beitrag von: siggi in 08 November 2007, 01:02:59
/**
* erstellt den Navigationspfad zum aktuellen Modul
*/
function mx_theme_currentpath($spacer = '&nbsp;>&nbsp;')
{
    global $prefix;
    $maxwordlen = 18;

    $link[] = '<a href="./" title="' . _HOME . '">' . _HOME . '</a>';
    // Module
    if (isset($_REQUEST['name']) && mxModuleAllowed(MX_MODULE)) {
        $result = sql_query("select custom_title from ${prefix}_modules WHERE title='" . mxAddSlashesForSQL(MX_MODULE) . "'");
        list($custom_title) = sql_fetch_row($result);
        $custom_title = str_replace("_", " ", ((empty($custom_title)) ? MX_MODULE : $custom_title));
        $short_title = mxCutString($custom_title, $maxwordlen, "..", "");
        $link[] = "<a href=\"modules.php?name=" . urlencode(MX_MODULE) . "\" title=\"" . $custom_title . "\">" . $short_title . "</a>";
    }
    // Administration
    else if (defined('mxAdminFileLoaded')) {
        $link[] = "<a href=\"admin.php\" title=\"" . _ADMINMENU . "\">" . _ADMINMENU . "</a>";
    }
    return implode($spacer, $link);
}


gesehen in der functions.php ab Zeile 355 :)

function theme_define_placeholders()
{
    global $sitename;
    // mxDebugFuncVars($GLOBALS['navimpath']);
    $part[] = array("{VIEWBENCH}", mxViewBench());
    $part[] = array("{FOOTMESSAGE}", footmsg(1, 0));
    $part[] = array("{CURRENTPATH}", mx_theme_currentpath());
   ...


gesehen in der functions.php ab Zeile 60 :)
Titel: Re: Class "Pathview" - Wie bekomme ich eine andere URL definiert ?
Beitrag von: breakdancer in 08 November 2007, 01:09:07
Aaaah, prima ! Danke schön ! !

Da hatte ich die Datei nach "pathview" durchsucht und natürlich nichts gefunden.

Dann werde ich doch mal grad meine Datenbank konsultieren, was die dazu sagt... Da muss ja auch das Home-Modul hinterlegt sein...

Werd mal schauen, ob das einfach so "unfallfrei" zu ändern ist, sprich, ob sich da eine Änderung auf das System negativ auswirkt...

Ma guggen.

Grüße

Markus
Titel: Re: Class "Pathview" - Wie bekomme ich eine andere URL definiert ?
Beitrag von: breakdancer in 08 November 2007, 01:41:39
Herrschaftzeiten,

das geht leider so auch nicht. In der DB bin ich nicht fündig geworden...

Ich vermute ja mal, dass in dieser Zeile hier:

[$link] = '<a href="./" title="' . _HOME . '">' . _HOME . '</a>';

die URL im Klartext hinterlegt werden kann ?

Fragende Grüße

Markus
Titel: Re: Class "Pathview" - Wie bekomme ich eine andere URL definiert ?
Beitrag von: siggi in 08 November 2007, 01:45:53
Zitat von: breakdancer...ja die wird über das mod_rewrite gesteuert, das stimmt natürlich.

Zitat
# individuelle Rewrite-Regeln:
RewriteRule ^home\.htm(l?) index.php [L]

gefunden in der mod_rewrite.htaccess in root-verzeichnis von pragmaMx 0.1.9  ab Zeile 30 :)
Titel: Re: Class "Pathview" - Wie bekomme ich eine andere URL definiert ?
Beitrag von: breakdancer in 08 November 2007, 01:49:27
Ja, aber ich möchte ja nicht die Umschreibung aussetzen, das soll ruhig weiter so bleiben.

Ich möchte lediglich, dass beim Klick auf den Homelink (s. o.) anstatt die home.html (index.php) der Root der Seite aufgerufen wird.

Mehr will ich ja gar nicht...  :cry
Titel: Re: Class "Pathview" - Wie bekomme ich eine andere URL definiert ?
Beitrag von: siggi in 08 November 2007, 01:52:46
Manno Markus  :puzzled:

Dann deaktiviere diese Rule doch einfach und setze wie ich oben schon geschrieben "./" anstatt "index.php".
Und schon hast du das, was du willst. :)
Titel: Re: Class "Pathview" - Wie bekomme ich eine andere URL definiert ?
Beitrag von: breakdancer in 08 November 2007, 02:06:36
Vergessen wir das Thema...

Es funktioniert nicht. Hab mich ja an Deine Anweisungen gehalten...

In der functions.php stand von Anfang an "./" anstelle "index.php" und wenn ich jetzt die spezielle rewrite-rule auskommentiere, findet er beim Klick auf "Home" die Seite nicht mehr und bringt eine Fehlermeldung...

Hab also leider nicht das, was ich wollte...

Aber ich will Dir da jetzt auch kein zu großes Theater drum machen... Dann geht das halt so einfach net...

Trotzdem danke schön und Grüße

Markus