Aller au contenu

Redirection de liens internes


e-atlantide

Sujets conseillés

Jai réécrit tous les url de mon annuaire.

La conséquence est que sur Yahoo notamment mes liens sont indexés avec lancien format (index.php?cat_id=).

Je recherche un script qui permettrait de rediriger lancien lien vers le nouveau lien (en utilisant une liste exhaustive).

Connaissez-vous un script qui répond à ce besoin ?

Davance merci.

Lien vers le commentaire
Partager sur d’autres sites

<?php
if(isset($_GET["cat_id"])){
header("Status: 301 Moved Permanently");
header("Location: index-cat-".$_GET["cat_id"].".html");
exit();
}
?>

Modifié par rottman
Lien vers le commentaire
Partager sur d’autres sites

<?php
if(isset($_GET["cat_id"])){
header("Status: 301 Moved Permanently");
header("Location: index-cat-".$_GET["cat_id"].".html");
exit();
}
?>

<{POST_SNAPBACK}>

Je viens juste de voir ta réponse (je navais pas activé loption notification par mail).

Ton script est intéressant mais il a besoin dêtre adapté à mon besoin. Je suis novice en php.

Comment puis-je modifier ce code pour mettre en place un liste de redirection ?

Par exemple rediriger :

index.php?cat_id=10 vers martinique-10.htm

index.php?cat_id=168 vers pays-bas-168.htm

index.php?cat_id=74 vers polynesie-française-74.htm

...

Davance merci

Lien vers le commentaire
Partager sur d’autres sites

Et si mets quelque chose de ce type :

<?php
if(isset($_GET["cat_id"] == 10)){
header("Status: 301 Moved Permanently");
header("Location: martinique-10.htm");
exit();
}
if(isset($_GET["cat_id"] == 168)){
header("Status: 301 Moved Permanently");
header("Location: pays-bas-168.htm");
exit();
}
if(isset($_GET["cat_id"] == 74)){
header("Status: 301 Moved Permanently");
header("Location: polynesie-française-74.htm");
exit();
}
?>

Est-ce c'est viable ?

Lien vers le commentaire
Partager sur d’autres sites

Jai réécrit tous les url de mon annuaire.

Personnellement je n'ai jamais réécris les miens, car je constate que les moteurs les lisent très bien. Il n'y a jamais plus de deux paramètres (la catégorie ou sous-catégorie, et la page). Il est vrai qu'il y a quelques années, on disait que les moteurs avaient du mal à avaler les Url d'annuaires. Mais aujourd'hui, pourquoi s'embêter ? :wacko:

Lien vers le commentaire
Partager sur d’autres sites

Mais aujourd'hui, pourquoi s'embêter ?  :wacko:

<{POST_SNAPBACK}>

Je constate que les annuaires qui disposent d'un PR élevé ont généralement mis en place l'url-rewriting.

De plus, tu peux mettre aussi des mots clés dans tes liens et sans mettre des caractères spéciaux.

Lien vers le commentaire
Partager sur d’autres sites

Posté (modifié)
Oui ça devrait marcher.

<{POST_SNAPBACK}>

J'ai mis ce code :

if ($_GET['cat_id'] == '156') {
header("Status: 301 Moved Permanently");
header("Location: photographe-156.htm");
exit();
}

Cela ne fonctionne pas. J'ai l'impression qu'il y a une boucle pour ce cat_id.

Les autres liens de l'annuaire fonctionnent correctement.

Je ne comprends pas.

Le début du fichier index.php de myphpannuaire est

<?php

//page principale de l'annuaire

include("data_bd_annuaire.php"); //variables de l'annuaire

include("functions.php"); //fonctions de l'annuaire

$cat_id = isset($_GET['cat_id']) ? (int)$_GET['cat_id'] : 0;

if($cat_id < 0)

exit;

$page = isset($_GET['page']) ? (int)$_GET['page'] : 0;

if($page < 0)

exit;

if (empty($cat_id))

{

$sql_nbsites = "SELECT id FROM $T_sites WHERE activation = '1' ";

$sql_nbcats = "SELECT id FROM $T_categories WHERE activation = '1' ";

$sql_cat = "SELECT id,cat_name FROM $T_categories WHERE id_cat_mere = '0' AND activation = '1' ORDER BY cat_name ASC";

$sql_admin = "SELECT nb_scats_on_index FROM $T_infos ";

$lk = connection_BD();

}

else

{

$sql_infos = "SELECT nb_sites_on_page,nb_days2benew FROM $T_infos ";

$lk = connection_BD();

$sql_descr = "SELECT cat_name, texte FROM $T_categories WHERE id = '$cat_id' ";

$sql_scat = "SELECT id, cat_name FROM $T_categories WHERE id_cat_mere = '$cat_id' AND activation = 1 ORDER BY cat_name ASC";

$res_descr = send_sql($sql_descr,"trouver la description de cette catégorie");

}

if ($_GET['cat_id'] == '156') {

header("Status: 301 Moved Permanently");

header("Location: photographe-156.htm");

exit();

}

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

Modifié par e-atlantide
Lien vers le commentaire
Partager sur d’autres sites

En fait, cela ne peut pas fonctionner car le résultat est une boucle.

Mais, j'ai enfin réussi à supprimer mes anciens liens avec variables dans google grâce à un système automatique de suppression d'URL en 24 heures proposé par GG.

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

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



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