[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
clang im Link loswerden - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Benutzeravatar
Peter.Bickel
Beiträge: 1856
Registriert: 25. Jan 2005, 21:17
Wohnort: Schleswig-Holstein
Kontaktdaten: Website

clang im Link loswerden

26. Sep 2005, 18:32

Hi,

kann man Redaxo dazu bringen, den Parameter clang in der URL wegzulassen? Denn wenn ich eine einsprachige Website habe, brauche ich den ja nicht.

Und noch eine Frage, die sicher schon x-mal beantwortet wurde, aber ich fand kein Posting dazu: Wie kann man nochmal die aktuelle URL in einem Template abrufen? Das war doch sowas Ähliches getUrl(), oder?

Danke,
Peter.

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

Re: clang im Link loswerden

26. Sep 2005, 19:35

Hej Peter,
pbickel hat geschrieben: Wie kann man nochmal die aktuelle URL in einem Template abrufen? Das war doch sowas Ähliches getUrl(), oder?
Gibt dir den aktuellen Link mit der SprachId 0

Code: Alles auswählen

rex_getUrl($this->getValue("article_id"), "0");

Gibt dir den Artikel 20 mit der SprachId 0

Code: Alles auswählen

rex_getUrl("20", "0");
Gibt dir den Artikel 20 mit der aktuellen Sprache

Code: Alles auswählen

rex_getUrl("20");
Thomas

Benutzeravatar
Markus.Staab
Entwickler
Beiträge: 9634
Registriert: 29. Jan 2005, 15:50
Wohnort: Aschaffenburg/Germany
Kontaktdaten: ICQ Website

Re: clang im Link loswerden

26. Sep 2005, 19:39

pbickel hat geschrieben: kann man Redaxo dazu bringen, den Parameter clang in der URL wegzulassen? Denn wenn ich eine einsprachige Website habe, brauche ich den ja nicht.
Hi Peter,

Du könntest in der functions/function_modrewrite.inc.php folgende änderungen vornehmen:

Code: Alles auswählen

	// ----- create url
	$url = $REX['MOD_REWRITE'] ? "$id-$clang-$name.html"  : "index.php?article_id=$id&clang=$clang";
ersetzen durch

Code: Alles auswählen

	// ----- create url
	$url = $REX['MOD_REWRITE'] ? "$id-$name.html"  : "index.php?article_id=$id";
Aber falls du die Seite dann später auf mehrere Sprachen umbauen willst, musst du dann hier wieder anpassen! GGf auch die .htaccess für mod_rewrite anpassen, falls das verwendet wird.

Das ganze ist UNGETESTET!

Gruß,
Markus

Benutzeravatar
Peter.Bickel
Beiträge: 1856
Registriert: 25. Jan 2005, 21:17
Wohnort: Schleswig-Holstein
Kontaktdaten: Website

27. Sep 2005, 14:58

Hi Ihr beiden,

Ihr seid wirklich das "Dreamteam" des Forums - eine verlässliche Antwort auf jede Frage in Rekordzeit; schon allein gut, aber im Duo unschlagbar ...

Danke zu den beiden Antworten; alles funktioniert perfekt.

Markus, vielleicht noch eine Frage zu dieser Rewrite-Geschichte: ich habe es bisher noch nicht geschafft, die Redaxo-Rewrite-Engine auf einer Subdomain zum Laufen zu bringen. Geht das vorm Prinzip her nicht oder muss man da einfach nur was ganz Spezielles beachten?

Schöne Grüße,
Peter.

Benutzeravatar
Markus.Staab
Entwickler
Beiträge: 9634
Registriert: 29. Jan 2005, 15:50
Wohnort: Aschaffenburg/Germany
Kontaktdaten: ICQ Website

27. Sep 2005, 16:20

Hi Peter,
pbickel hat geschrieben: Markus, vielleicht noch eine Frage zu dieser Rewrite-Geschichte: ich habe es bisher noch nicht geschafft, die Redaxo-Rewrite-Engine auf einer Subdomain zum Laufen zu bringen. Geht das vorm Prinzip her nicht oder muss man da einfach nur was ganz Spezielles beachten?
welches Rewrite verwendest du?
MOD_REWRITE?

Ich habe hier lokal redaxo in einem Unterordner laufen und das mod_rewrite funktioniert bestens.

meine htaccess:

Code: Alles auswählen

RewriteEngine On
RewriteRule ^([0-9]*)- http://localhost/redaxo3_0/index.php?article_id=$1&%{QUERY_STRING}
Gruß,
Markus

Benutzeravatar
Peter.Bickel
Beiträge: 1856
Registriert: 25. Jan 2005, 21:17
Wohnort: Schleswig-Holstein
Kontaktdaten: Website

27. Sep 2005, 16:45

Dein Hinweis war gut. Ich hatte nicht den vollen Pfad in die Rewrite-Rule vor das index.php geschrieben, sondern das Ganze bei Rewrite-Base hingeschrieben. Nun klappt es. Danke!

Peter.

Benutzeravatar
johannest
Beiträge: 335
Registriert: 24. Aug 2004, 22:11

28. Sep 2005, 18:11

kills hat geschrieben: Ich habe hier lokal redaxo in einem Unterordner laufen und das mod_rewrite funktioniert bestens.

meine htaccess:

Code: Alles auswählen

RewriteEngine On
RewriteRule ^([0-9]*)- http://localhost/redaxo3_0/index.php?article_id=$1&%{QUERY_STRING}
Hi,
wie sieht dann der Link zu einer Seite im Browser bei Dir aus?

www.example.com/"article_id"/ (???)

Grüße,
Johannes

Benutzeravatar
Markus.Staab
Entwickler
Beiträge: 9634
Registriert: 29. Jan 2005, 15:50
Wohnort: Aschaffenburg/Germany
Kontaktdaten: ICQ Website

28. Sep 2005, 18:40

johannest hat geschrieben: meine htaccess:

Code: Alles auswählen

RewriteEngine On
RewriteRule ^([0-9]*)- http://localhost/redaxo3_0/index.php?article_id=$1&%{QUERY_STRING}
Hi,
wie sieht dann der Link zu einer Seite im Browser bei Dir aus?
Hi johannes,

der Link sieht so aus:
Gruß,
Markus

Benutzeravatar
johannest
Beiträge: 335
Registriert: 24. Aug 2004, 22:11

28. Sep 2005, 18:51

kills hat geschrieben:der Link sieht so aus:
Ok, vielleicht kannst Du mir ja helfen.

Ich habe in der functions/function_modrewrite.inc.php die Zeile

Code: Alles auswählen

$url = $REX['MOD_REWRITE'] ? "$id-$clang-$name.html"  : "index.php?article_id=$id&clang=$clang";
nach

Code: Alles auswählen

if($REX['MOD_REWRITE']) $url = "/$id/";
geändert. Nun erscheinen alle Links nach dem Muster www.example.com/??/. So soll es auch sein.

In die .htaccess habe ich folgendes geschrieben:

Code: Alles auswählen

RewriteEngine On
RewriteBase /
RewriteRule ^([0-9]*)- /index.php?article_id=$1&%{QUERY_STRING}
Allerdings bekomme ich dann immer die Meldung, dass die Seite nicht gefunden werden konnte. Es scheint so, als ob die Regel nicht beachtet werden würde. Die Nutzung von htaccess funktioniert sonst aber problemlos auf dem Server.

Vielleicht hast ja Du oder sonstwer eine Idee.

Grüße,
Johannes

PS: Hier ist das Ganze zu sehen: http://test.iez-ev.de/

Zurück zu „Allgemeines [R3]“