Aller au contenu

Sujets conseillés

Posté

Bonjour à tous,

j'ai un problème avec la réécriture sur mon site et jai besoin de votre aide.

Voici un exemple avec mon code pour créer un fichier .xml pour google sitemap, lorsque je le lance il récupère bien les urls seulement il transforme les majuscules en minuscules et çà va causer un duplicate content.

Pourriez vous me guider SVP ?

<?
$val_string="";
$val_string2="";
include_once("admin/inc.php");
updateExpireAds("0");

if ($set_google_generate)
{
$writeStr="";
if ($validation == 1) { $val_string2 = " where ad_is_validated = 1"; } else { $val_string2 = ""; }
$writeStr.="<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<urlset xmlns=\"http://www.google.com/schemas/sitemap/0.84\">";

$sql_links = "select ad_id, ad_title from $ads_tbl $val_string2";
$result = q ($sql_links);

while($row=mysql_fetch_array($result))
{
$ad_id = $row["ad_id"];
$ad_title = $row["ad_title"];
$string = strtolower($ad_title);
$string = str_replace('à', 'a', $string);
$string = str_replace('â', 'a', $string);
$string = str_replace('ã', 'a', $string);
$string = str_replace('ä', 'a', $string);
$string = str_replace('å', 'a', $string);
$string = str_replace('æ', 'a', $string);
$string = str_replace('ç', 'c', $string);
$string = str_replace('è', 'e', $string);
$string = str_replace('é', 'e', $string);
$string = str_replace('ê', 'e', $string);
$string = str_replace('ë', 'e', $string);
$string = str_replace('ì', 'i', $string);
$string = str_replace('í', 'i', $string);
$string = str_replace('î', 'i', $string);
$string = str_replace('ï', 'i', $string);
$string = str_replace('ð', 'g', $string);
$string = str_replace('ñ', 'n', $string);
$string = str_replace('ö', 'o', $string);
$string = str_replace('ù', 'u', $string);
$string = str_replace('ü', 'u', $string);
$string = str_replace('û', 'u', $string);
$string = str_replace('ú', 'u', $string);
$ad_title = preg_replace('!\W!','-',$string);
$writeStr.="<url>\n";
$writeStr.="<changefreq>weekly</changefreq>\n";
//$writeStr.="<loc>http://".$url."/detail.php?id=".$ad_id."</loc>\n";
$writeStr.="<loc>http://".$url."/ad".$ad_id."-".$ad_title.".html</loc>\n";
$writeStr.="</url>\n";
}
$writeStr.="\n</urlset>\n";

$fp = fopen("google.xml","w+");
fwrite($fp,$writeStr);
fclose($fp);
}
?>

Voici le code de mon htaccess

RewriteEngine On
RewriteRule ^ad([0-9]+)-(.*).html detail.php?id=$1
RewriteRule ^([0-9]+)-(.*).html index.php?catid=$1
RewriteRule ^user_([0-9]+)_(.*).html user_info.php?user_id=$1
RewriteRule ^ratemember_([0-9]+)_(.*).html rate_member.php?user_id=$1
RewriteRule ^contact_([0-9]+)_([0-9]+)_(.*).html detail.php?id=$1&user_id=$2&contact=1
RewriteRule ^rate_([0-9]+).html rate.php?id=$1
RewriteRule ^largepicture_([0-9]+).html large_picture.php?id=$1
RewriteRule ^tellafriend_([0-9]+).html detail.php?id=$1&tellafriend=1
RewriteRule ^print_([0-9]+).html detail.php?id=$1&print=1
RewriteRule ^removefav_([0-9]+).html fav_popup.php?remove_fav=$1
RewriteRule ^addfav_([0-9]+).html fav_popup.php?add_fav=$1
RewriteRule ^trm_(.*).html info.php?what=terms
RewriteRule ^ab_(.*).html info.php?what=aboutus
RewriteRule ^adv_(.*).html info.php?what=advertise
RewriteRule ^hlp_(.*).html info.php?what=help
RewriteRule ^rss_([0-9]+).html detail.php?id=$1

Posté
:blushing: je suis trop con, il suffit d'enlever strtolower dans $string = strtolower($ad_title);
Posté

Même pas le temps de rédiger ma réponse que je suis déjà servi :D

Merci captain torche ;)

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...