Я переместил около 100 статей со своего старого сайта на новый. Я хочу создать перенаправление в заголовке старого сайта, поэтому, если будет посещен старый URL статьи, посетитель должен быть перенаправлен на новый URL этой статьи.
Однако простая замена домена не поможет, так как я изменил постоянную ссылку на статьи. Поэтому мне понадобится некоторая "база данных" (с массивами?) который определит, есть ли у фактического URL-адреса перенаправление в базе данных, например:
// "the old permalink" = "the new permalink"
$urlpermalink["article-cars"] = "http://NewWebsite.com/new-cars-article";
$urlpermalink["an-article-dogs"] = "http://NewWebsite.com/new-dogs-text";
$urlpermalink["old-text-trees"] = "http://NewWebsite.com/new-blogcontent-about-trees";
Так, например, если посетитель посещает "http://OldWebsite.com/article-cars", его следует перенаправить на "http://NewWebsite.com/new-cars-article", потому что так говорит база данных/массив.
И поэтому я мог бы сделать что-то вроде этого:
$visitingurl = $_SERVER[REQUEST_URI]; // Getting the URL the visitor is on now
foreach( $urlpermalink as $value ) { // For every entry in the database/array...
if (strpos($visitingurl, $urlpermalink) !== false) { // check if the visitingurl contains that (like "article-cars")
// The visitor is indeed on an old URL which is in the database/array, so let's redirect him to the new URL
header("HTTP/1.1 301 Moved Permanently");
header(url . $_SERVER['QUERY_STRING']);
exit();
}
}
Конечно, этот код совершенно неправильный, но я почти ничего не знаю о PHP, поэтому, пожалуйста, не могли бы вы помочь мне решить эту проблему? (JavaScript-решение тоже подойдет, или htaccess, или что-то еще :) )
Большое спасибо!