mod_rewrite für ContestMX - pragmaMX 0.1.11
Als Ergänzung zum normalen mod_rewrite von pragma kann mit den folgenden Änderungen die URL ein wenig SEO-freundlicher gemacht werden.
DIESE ÄNDERUNG GELTEN NUR FÜR pmx 0.1.11. Für die pragmaMX ab 1.12 steht eine neue individuelle Mod-Rewrite-Lösung zur Verfügung.
DIESE ÄNDERUNG GELTEN NUR FÜR pmx 0.1.11. Für die pragmaMX ab 1.12 steht eine neue individuelle Mod-Rewrite-Lösung zur Verfügung.
in der mx_modrewrite.php im Verzeichnis includes muss folgende Ergänzung eingefügt werden:
// ##############################################################################
// modrewrite für ContestMX
//
//
// ##############################################################################
//ContestMX Contest
preg_match_all('#Contest-pid-(\d*)#', $content, $contest, PREG_SET_ORDER);
foreach ($contest as $contest1){
$contest2[0] = preg_replace('#Contest-pid-#', '', $contest1[0]);
$abfrage = "SELECT cattitle, conid FROM " . $prefix . "_pmxContest_contest WHERE conid = '$contest2[0]'";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_array($ergebnis))
{
$titel_contest_rewrite = $row["cattitle"];
$titel_contest_rewrite = str_replace($umlaute, $ersetzung, $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#\W#', "-", $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#---#', "-", $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#--#', "-", $titel_contest_rewrite);
$titel_contest_fert = "Contest-title-";
$titel_contest_fert.= "$titel_contest_rewrite-";
$titel_contest_fert.= $contest2[0];
$replace = "#".$contest1[0]."(?!\d)#";
$content = preg_replace($replace, $titel_contest_fert, $content);
}
}
//ContestMX Category
preg_match_all('#Contest-cid-(\d*)#', $content, $contest, PREG_SET_ORDER);
foreach ($contest as $contest1){
$contest2[0] = preg_replace('#Contest-cid-#', '', $contest1[0]);
$abfrage = "SELECT cattitle, catid FROM " . $prefix . "_pmxContest_category WHERE catid = '$contest2[0]'";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_array($ergebnis))
{
$titel_contest_rewrite = $row["cattitle"];
$titel_contest_rewrite = str_replace($umlaute, $ersetzung, $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#\W#', "-", $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#---#', "-", $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#--#', "-", $titel_contest_rewrite);
$titel_contest_fert = "Contest-category-";
$titel_contest_fert.= "$titel_contest_rewrite-";
$titel_contest_fert.= $contest2[0];
$replace = "#".$contest1[0]."(?!\d)#";
$content = preg_replace($replace, $titel_contest_fert, $content);
}
}
//ContestMX Picture
preg_match_all('#Contest-pa-contest_pic_show-pid-(\d*)#', $content, $contest, PREG_SET_ORDER);
foreach ($contest as $contest1){
$contest2[0] = preg_replace('#Contest-pa-contest_pic_show-pid-#', '', $contest1[0]);
$abfrage = "SELECT title, pid FROM " . $prefix . "_pmxContest_picture WHERE pid = '$contest2[0]'";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_array($ergebnis))
{
$titel_contest_rewrite = $row["title"];
$titel_contest_rewrite = str_replace($umlaute, $ersetzung, $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#\W#', "-", $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#---#', "-", $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#--#', "-", $titel_contest_rewrite);
$titel_contest_fert = "Contest-pic-";
$titel_contest_fert.= "$titel_contest_rewrite-";
$titel_contest_fert.= $contest2[0];
$replace = "#".$contest1[0]."(?!\d)#";
$content = preg_replace($replace, $titel_contest_fert, $content);
}
}
// ##########################################################################
// end modrewrite ContestMX
// ##########################################################################
dazu muss aber in der htaccess auf dem Server noch folgende Ergänzung hinein:
## Rewrite Rules für mxContest
RewriteRule ^(Contest)-pic-(.*)-([0-9]+)\.html$ modules.php?name=$1&pa=contest_pic_show&pid=$3 [L]
RewriteRule ^(Contest)-title-(.*)-([0-9]+)\.html$ modules.php?name=$1&pid=$3 [L]
RewriteRule ^(Contest)-category-(.*)-([0-9]+)\.html$ modules.php?name=$1&cid=$3 [L]
Danach stehen die Titel der Kategorien, Wettbewerbe und der Bilder mit in der URL
// ##############################################################################
// modrewrite für ContestMX
//
//
// ##############################################################################
//ContestMX Contest
preg_match_all('#Contest-pid-(\d*)#', $content, $contest, PREG_SET_ORDER);
foreach ($contest as $contest1){
$contest2[0] = preg_replace('#Contest-pid-#', '', $contest1[0]);
$abfrage = "SELECT cattitle, conid FROM " . $prefix . "_pmxContest_contest WHERE conid = '$contest2[0]'";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_array($ergebnis))
{
$titel_contest_rewrite = $row["cattitle"];
$titel_contest_rewrite = str_replace($umlaute, $ersetzung, $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#\W#', "-", $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#---#', "-", $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#--#', "-", $titel_contest_rewrite);
$titel_contest_fert = "Contest-title-";
$titel_contest_fert.= "$titel_contest_rewrite-";
$titel_contest_fert.= $contest2[0];
$replace = "#".$contest1[0]."(?!\d)#";
$content = preg_replace($replace, $titel_contest_fert, $content);
}
}
//ContestMX Category
preg_match_all('#Contest-cid-(\d*)#', $content, $contest, PREG_SET_ORDER);
foreach ($contest as $contest1){
$contest2[0] = preg_replace('#Contest-cid-#', '', $contest1[0]);
$abfrage = "SELECT cattitle, catid FROM " . $prefix . "_pmxContest_category WHERE catid = '$contest2[0]'";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_array($ergebnis))
{
$titel_contest_rewrite = $row["cattitle"];
$titel_contest_rewrite = str_replace($umlaute, $ersetzung, $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#\W#', "-", $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#---#', "-", $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#--#', "-", $titel_contest_rewrite);
$titel_contest_fert = "Contest-category-";
$titel_contest_fert.= "$titel_contest_rewrite-";
$titel_contest_fert.= $contest2[0];
$replace = "#".$contest1[0]."(?!\d)#";
$content = preg_replace($replace, $titel_contest_fert, $content);
}
}
//ContestMX Picture
preg_match_all('#Contest-pa-contest_pic_show-pid-(\d*)#', $content, $contest, PREG_SET_ORDER);
foreach ($contest as $contest1){
$contest2[0] = preg_replace('#Contest-pa-contest_pic_show-pid-#', '', $contest1[0]);
$abfrage = "SELECT title, pid FROM " . $prefix . "_pmxContest_picture WHERE pid = '$contest2[0]'";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_array($ergebnis))
{
$titel_contest_rewrite = $row["title"];
$titel_contest_rewrite = str_replace($umlaute, $ersetzung, $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#\W#', "-", $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#---#', "-", $titel_contest_rewrite);
$titel_contest_rewrite = preg_replace('#--#', "-", $titel_contest_rewrite);
$titel_contest_fert = "Contest-pic-";
$titel_contest_fert.= "$titel_contest_rewrite-";
$titel_contest_fert.= $contest2[0];
$replace = "#".$contest1[0]."(?!\d)#";
$content = preg_replace($replace, $titel_contest_fert, $content);
}
}
// ##########################################################################
// end modrewrite ContestMX
// ##########################################################################
dazu muss aber in der htaccess auf dem Server noch folgende Ergänzung hinein:
## Rewrite Rules für mxContest
RewriteRule ^(Contest)-pic-(.*)-([0-9]+)\.html$ modules.php?name=$1&pa=contest_pic_show&pid=$3 [L]
RewriteRule ^(Contest)-title-(.*)-([0-9]+)\.html$ modules.php?name=$1&pid=$3 [L]
RewriteRule ^(Contest)-category-(.*)-([0-9]+)\.html$ modules.php?name=$1&cid=$3 [L]
Danach stehen die Titel der Kategorien, Wettbewerbe und der Bilder mit in der URL
Viel Spass
Publiziert am: Freitag, 25. Juni 2010 (391 mal gelesen)
Copyright © by Software Tecmu
[ Zurück ]