Bonjour,
Afin de ne pas perdre les url référencés sur google, j’aimerais personnaliser mes url. Je l’avais fait sur une version précédente de spip et avait pour cela consacré le champs descriptif de la rubrique (car mes rubriques comportent notamment des articles du type le, les, la que je ne souhaites pas voir figurer dans l’url) en modifiant par ailleurs le fichier ecrire/url/propres.php vers la ligne 80 comme suit. Les fichiers propres.php ayant été modifié avec les nouvelles versions, j’ai peur de ne pas l’adapter convenablement. Puis-je vous demander votre aide ? Peut-être procèderiez-vous différemment ?
Merci par avance pour votre aide.
// Sinon, creer l’URL
include_spip(‹ inc/filtres ›);
include_spip(‹ inc/charsets ›);
/******** modification pour new_url /
if ($type == ‹ article ›) {
$srt = spip_query(« SELECT spip_rubriques.descriptif AS new_url,
spip_articles.titre AS old_url
FROM spip_rubriques, spip_articles
WHERE spip_rubriques.id_rubrique = spip_articles.id_rubrique
AND spip_articles.id_article = $id_objet »);
while($res = spip_fetch_array($srt)) {
if ($res[‹ new_url ›] != ‹ ›) {
$url = translitteration(corriger_caracteres(
supprimer_tags(extraire_multi($res[‹ new_url ›]))
));
}
else {
$url = translitteration(corriger_caracteres(
supprimer_tags(supprimer_numero(
extraire_multi($res[‹ old_url ›])
))
));
}
}
}
elseif ($type == ‹ rubrique ›) {
$srt = spip_query(« SELECT spip_rubriques.descriptif AS new_url,
spip_rubriques.titre AS old_url
FROM spip_rubriques
WHERE spip_rubriques.id_rubrique = $id_objet »);
while($res = spip_fetch_array($srt)) {
if ($res[‹ new_url ›] != ‹ ›) {
$url = translitteration(corriger_caracteres(
supprimer_tags(extraire_multi($res[‹ new_url ›]))
));
}
else {
$url = translitteration(corriger_caracteres(
supprimer_tags(supprimer_numero(
extraire_multi($res[‹ old_url ›])
))
));
}
}
}
else {
/* fin modification pour new_url /
$url = translitteration(corriger_caracteres(
supprimer_tags(supprimer_numero(
extraire_multi($row[‹ titre ›])
))
));
/* modification pour new_url /
}
/* fin modification pour new_url *******/
$url = @preg_replace(’,[[:punct:][:space:]]+,u’, ’ ', $url);
// S’il reste trop de caracteres non latins, ou trop peu
[…]