Vielleicht stehe ich auf dem Schlauch, aber ich möchte, dass bei der mod rewrite Regel nicht mehr Reviews auftaucht, sondern Testbericht. Beispiel:
http://www.meinedomain.de/Reviews-HTC-Desire-Z-show-213.html
in
http://www.meinedomain.de/Testbericht-HTC-Desire-Z-show-213.html
Was muss ich da ändern?
Ansonsten wünsche ich allen einen guten Rutsch ins neue Jahr! :D
Ungetestet!!!
.htaccess:
RewriteRule ^(Testbericht)-Produkt-(.*)-([0-9]+)\.html$ modules.php?name=Reviews&rop=showcontent&id=$3 [L]
includes/mx_modrewrite.php:
preg_match_all('#Reviews-rop-showcontent-id-(\d*)#', $content, $Testbericht, PREG_SET_ORDER);
foreach ($Testbericht as $Testbericht1){
$Testbericht2[0] = preg_replace('#Reviews-rop-showcontent-id-#', '', $Testbericht1[0]);
$abfrage = "SELECT title, id FROM " . $prefix . "_Testbericht WHERE id = '$Testbericht2[0]'";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_array($ergebnis))
{
$titel_Testbericht_rewrite = $row["title"];
$titel_Testbericht_rewrite = str_replace($umlaute, $ersetzung, $titel_Testbericht_rewrite);
$titel_Testbericht_rewrite = preg_replace('#\W#', "-", $titel_Testbericht_rewrite);
$titel_Testbericht_rewrite = preg_replace('#---#', "-", $titel_Testbericht_rewrite);
$titel_Testbericht_rewrite = preg_replace('#--#', "-", $titel_Testbericht_rewrite);
$titel_Testbericht_fert = "Testbericht-Produkt-";
$titel_Testbericht_fert.= "$titel_Testbericht_rewrite-";
$titel_Testbericht_fert.= $Testbericht2[0];
$replace = "#".$Testbericht1[0]."(?!\d)#";
$content = preg_replace($replace, $titel_Testbericht_fert, $content);
}
}
Letzteres VOR :
}
}
return $content;
}
Hab das aus einer veralteten PMX Version etwas angepasst, also ohne Garantie!
- Allen einen guten Rutsch!
@webfan
Danke, aber in der neuen Version von Pragmamx scheint modrewrite in classes "aufgegangen zu sein". Finde zumindest keinen Ansatz für deine Lösung.
Hallo und ein frohes neues Jahr,
wie kann man in der neuen Version (1.12 Rc2) die Ausgabe des Moduls Reviews so abändern, dass anstatt
http://www.mobile-reviews.de/Reviews-HTC-Desire-Z-show-213.html
dies hier
http://www.mobile-reviews.de/Testbericht-HTC-Desire-Z-show-213.html
ausgegeben wird?
Moin :)
habe die beiden Threads vereint....
In der tat, sind die Änderungen, die für 0.1.11 gemacht wurden in der 1.12 nicht mehr anwendbar. Die erweiterten mod-Rewrite Regeln sind hier bereits integriert und können viel leichter ergänzt u. angepasst werden...
Für deine Vorhaben sind 2 Schritte nötig:
1:
in der .htaccess folgende Code-Zeilen duplizieren und die 3 zusätzlichen entspr. abändern:
# Reviews
RewriteRule ^Reviews-.*-show-([0-9]+)(-.*)?\.html$ mod.php?name=Reviews&rop=showcontent&id=$1&_MORE_=$2 [L]
RewriteRule ^Reviews-.*-addcomment-([0-9]+)(-.*)?\.html$ mod.php?name=Reviews&rop=postcomment&id=$1&_MORE_=$2 [L]
RewriteRule ^Reviews-.*-send-([0-9]+)(-.*)?\.html$ mod.php?name=Reviews&rop=premail_review&id=$1&_MORE_=$2 [L]
neuer Code:
# Reviews
RewriteRule ^Reviews-.*-show-([0-9]+)(-.*)?\.html$ mod.php?name=Reviews&rop=showcontent&id=$1&_MORE_=$2 [L]
RewriteRule ^Reviews-.*-addcomment-([0-9]+)(-.*)?\.html$ mod.php?name=Reviews&rop=postcomment&id=$1&_MORE_=$2 [L]
RewriteRule ^Reviews-.*-send-([0-9]+)(-.*)?\.html$ mod.php?name=Reviews&rop=premail_review&id=$1&_MORE_=$2 [L]
RewriteRule ^Testbericht-.*-show-([0-9]+)(-.*)?\.html$ mod.php?name=Reviews&rop=showcontent&id=$1&_MORE_=$2 [L]
RewriteRule ^Testbericht-.*-addcomment-([0-9]+)(-.*)?\.html$ mod.php?name=Reviews&rop=postcomment&id=$1&_MORE_=$2 [L]
RewriteRule ^Testbericht-.*-send-([0-9]+)(-.*)?\.html$ mod.php?name=Reviews&rop=premail_review&id=$1&_MORE_=$2 [L]
2:
in der modules/Reviews/core/mod_rewrite.php eine zusätzliche Zeile reinschreiben:
public function get($name, $parameter)
{
global $prefix;
$replaces = array();
neuer Code:
public function get($name, $parameter)
{
global $prefix;
$name = 'Testbericht';
$replaces = array();
Nicht getestet, sollte aber funktionieren.
Die "normalen" Links im Reviews Modul werden dadurch nicht umgeschrieben. Dazu müsste man noch ein wenig basteln, ist aber auch kein Act...
@Andi
Herzlichen Dank, funktioniert sehr gut. :thumbup:
Lediglich das Modul Reviews selber wird noch nicht umbenannt. Ruft man es auf, so wird es immer in ***\Reviews.html umbenannt.