Иконка ресурса

Redirection Script for phpbb 3.0 2013-08-06

Нет прав для скачивания
Чтобы после переезда с phpBB 3 на XenForo не потерять в индесации, был написан этот скрипт. Он макимально приблизит новые ссылки на сообщения, темы и форума к тем, которые у Вас были на phpBB 3.

Например, у Вас была такая ссылка: building-a-proper-motion-seat-base-for-scn5-s-t2216-20.html
А после использования данного скрипта ссылка будет выглядеть так: building-a-proper-motion-seat-base-for-scn5s.2216/page-2

При переходе по старой ссылке, поисковик или пользователь будет перенаправлен на новую ссылку.

Установка:

В файле .htaccess находим:
Код:
RewriteRule ^.*$ index.php [NC,L]


И над ним добавляем:
Код:
RewriteRule ^(.*)\.html html.php [NC,L]


Этим мы перенаправим все .html ссылки на файл html.php

Теперь создадим этот самый файл html.php с таким содержимым:
Код:
<?php
function phpbb_redirect($url)
{

    //exit;
    header('HTTP/1.1 301 Moved Permanently');
    header('Location: ' . $url);
    exit;
}

function redirect_html()
{
    if (!isset($_SERVER['REQUEST_URI']))
    {
        return;
    }
    $url = explode('/', $_SERVER['REQUEST_URI']);
    $url = explode('.', array_pop($url));
    if (array_pop($url) != 'html')
    {
        return;
    }
    $url = explode('-', array_pop($url));

    $url = array_pop($url);
    $type = substr($url, 0, 1);

    /* get the next to last string */
    if (is_numeric($type) == true && $type) { // There is pagination like are-you-a-new-member-introduce-here-t1737-10.html
        $url_page = explode('/', $_SERVER['REQUEST_URI']);
        $url_page = explode('-', array_pop($url_page));

        $typestring = array_slice($url_page, count($url_page)-2, 1);
        $typestring_check = $typestring[0];

        //echo $url ."<br>";
        //echo $typestring_check . "<br>";
        //echo substr($typestring_check, 0,1) . "<br>";
        $type = substr($typestring_check, 0,1);
        //echo $type . "<br>";
        //echo $type;
        // if last string is int, its paginated
        $id = intval(substr($typestring_check, 1));
        $page = $url/10; //Division durch 10

        //echo $page;
        switch ($type)
        {
            case 't':
                if ($id == 1){
                phpbb_redirect('index.php?threads/' . $id . '/'); //redirect to first page
                }else{
                phpbb_redirect('index.php?threads/' . $id . '/page-' . $page); //redirect to paginated page
                }
            case 'f':
                phpbb_redirect('index.php?forums/' . $id . '/');
        }
    } else { // No pagination (Maybe first page of the thread) like like are-you-a-new-member-introduce-here-t1737.html

        $type = substr($url, 0, 1);
        $id = substr ($url, 1);

        //echo $id . "<br>";
        //echo $type;
        switch ($type)
        {
            case 't':
                phpbb_redirect('index.php?threads/' . $id . '/');
        
            case 'f':
                phpbb_redirect('index.php?forums/' . $id . '/');
        }

    }
}
redirect_html();
include('index.php');


Или при желании Вы можете скачать уже готовый файл html.php.
  • Мне нравится
Реакции: luckyman
Автор
Hope
Скачивания
10
Просмотры
257
Первый выпуск
Обновление
Оценка
0.00 звёзд 0 оценок

Другие ресурсы пользователя Hope

  • User Promotion on Profile Update
    Плагин для автоматического изменения группы пользователя, при заполнении информации об аккаунте.
  • Lazy Load [img]
    Lazy Load [img]
    Изначально будут загружаться только те изображения, которые пользователь способен увидеть.

Поделиться ресурсом

Назад
Сверху Снизу