Скрыть объявление
ВАШИ ПРАВА ОГРАНИЧЕНЫ!

Зарегистрируйтесь на форуме, чтобы стать полноценным участником сообщества!

Глобальный хак по изменению логики категорий и доп полей dle 11.x

Тема в разделе "Хаки DLE", создана пользователем PunPun, 22 апр 2016.

22.04.16 в 23:24
25.12.17 в 09:20
56
7.698
9
  1. DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.194 / 9 / -0
    Спасибо за подсказку, дома гляну. Со слешем не хочет, а удаляеш все равно на него редиректит
     
  2. byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    тода надо смотреть уже htaccess и удалить редирект со слешем на конце!
     
    • Нравится Нравится x 1
  3. DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.194 / 9 / -0
    @Gameer, как я уже и писал, после использования этого хака+хлебных крошек+сео пака не работают категории, при заходе по любой из них пишет

    сам не сталкивался? как исправить, где-то циклическая переадресация в категориях появляется.
     
  4. byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    эти все штуки несовместимы меж собой :D
     
    • Нравится Нравится x 1
  5. DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.194 / 9 / -0
    я думаю гдето можно совместить ведь, найти и пофиксить
     
  6. byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    можно, выше я писал уже что у меня было :) решение нашлось... в твоём случае - я не "пифия" и не могу угадать что там творится ;)
     
    • Нравится Нравится x 1
  7. DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.194 / 9 / -0
    как исправил ты, если вспомниш
     
  8. byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    у меня не работал редирект неправильных ссылок! я нашёл его сео-пак от декабря прошлого года, и сделал правки кода для проверки урла ссылок новостей и категорий :)
     
    • Нравится Нравится x 1
  9. DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.194 / 9 / -0
    Спасибо, по ковыряю.
     
    • Нравится Нравится x 1
  10. romanbkn

    Команда форума VIP Кинотрафик v2

    Регистрация:
    14 авг 2015
    Сообщения:
    3.423
    Лучших ответов:
    0
    Рейтинги:
    +1.290 / 0 / -0
    @DomiTori, удалось избавиться от бесконечного редиректа?
     
  11. romanbkn

    Команда форума VIP Кинотрафик v2

    Регистрация:
    14 авг 2015
    Сообщения:
    3.423
    Лучших ответов:
    0
    Рейтинги:
    +1.290 / 0 / -0
    если в админке отключить обработку неверных чпу, то все начинает работать. Хз че делать теперь. жестка без 301 в новостях с при смене урла
     
  12. DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.194 / 9 / -0
    Да, я снес это и сэо пак, и все снова заработало
     
    • Нравится Нравится x 2
  13. byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    мне из старого пака помог:
    Открываем .htaccess, находим код :
    Код:
    # Сам пост
    RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),([0-9]+),(.*).html$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&cstart=$5&news_name=$6&seourl=$6 [L]
    RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),(.*).html$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5&seourl=$5 [L]
    RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/print:page,([0-9]+),(.*).html$ engine/print.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5&seourl=$5 [L]
    RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*).html$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_name=$4&seourl=$4 [L]
    
    RewriteRule ^([^.]+)/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html$ index.php?newsid=$4&news_page=$2&cstart=$3&seourl=$5&seocat=$1 [L]
    RewriteRule ^([^.]+)/page,([0-9]+),([0-9]+)-(.*).html$ index.php?newsid=$3&news_page=$2&seourl=$4&seocat=$1 [L]
    RewriteRule ^([^.]+)/print:page,([0-9]+),([0-9]+)-(.*).html$ engine/print.php?news_page=$2&newsid=$3&seourl=$4&seocat=$1 [L]
    RewriteRule ^([^.]+)/([0-9]+)-(.*).html$ index.php?newsid=$2&seourl=$3&seocat=$1 [L]
    
    RewriteRule ^page,([0-9]+),([0-9]+),([0-9]+)-(.*).html$ index.php?newsid=$3&news_page=$1&cstart=$2&seourl=$4 [L]
    RewriteRule ^page,([0-9]+),([0-9]+)-(.*).html$ index.php?newsid=$2&news_page=$1&seourl=$3 [L]
    RewriteRule ^print:page,([0-9]+),([0-9]+)-(.*).html$ engine/print.php?news_page=$1&newsid=$2&seourl=$3 [L]
    RewriteRule ^([0-9]+)-(.*).html$ index.php?newsid=$1&seourl=$2 [L]
    И заменяем на:
    Код:
    # Сам пост
    RewriteBase /
    RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),([0-9]+),(.*)\.(.*)$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&cstart=$5&news_name=$6 [L]
    RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),(.*)\.(.*)$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5 [L]
    RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/print:page,([0-9]+),(.*)\.(.*)$ engine/print.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5 [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)\.(.*)$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_name=$4 [L]
    RewriteRule ^([^.]+)/page,([0-9]+),([0-9]+),([0-9]+)-(.*)$ index.php?newsid=$4&news_page=$2&cstart=$3 [L]
    RewriteRule ^([^.]+)/page,([0-9]+),([0-9]+)-(.*)$ index.php?newsid=$3&news_page=$2 [L]
    RewriteRule ^([^.]+)/print:page,([0-9]+),([0-9]+)-(.*)$ engine/print.php?news_page=$2&newsid=$3 [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^([^.]+)/([0-9]+)-(.*)$ index.php?newsid=$2 [L]
    RewriteRule ^page,([0-9]+),([0-9]+),([0-9]+)-(.*)$ index.php?newsid=$3&news_page=$1&cstart=$2 [L]
    RewriteRule ^page,([0-9]+),([0-9]+)-(.*)$ index.php?newsid=$2&news_page=$1 [L]
    RewriteRule ^print:page,([0-9]+),([0-9]+)-(.*)$ engine/print.php?news_page=$1&newsid=$2 [L]
    RewriteRule ^([0-9]+)-(.*)$ index.php?newsid=$1 [L]
    Открываем ./engine/modules/show.full.php, находим код и удаляем
    Код:
    if ($config['seo_control'] AND ( isset($_GET['seourl']) OR strpos ( $_SERVER['REQUEST_URI'], "?" ) !== false ) ) {
        if ($_GET['seourl'] != $row['alt_name'] OR $_GET['seocat'] != $c_url OR strpos ( $_SERVER['REQUEST_URI'], "?" ) !== false) {
    
            if ($view_template == "print") {
    
                $re_url = explode ( "engine/print.php", strtolower ( $_SERVER['PHP_SELF'] ) );
                $re_url = reset ( $re_url );
    
            } else {
    
                $re_url = explode ( "index.php", strtolower ( $_SERVER['PHP_SELF'] ) );
                $re_url = reset ( $re_url );
    
            }
    
            header("HTTP/1.0 301 Moved Permanently");
            header("Location: {$re_url}{$c_url}/{$row['id']}-{$row['alt_name']}.html");
            die("Redirect");
    
        }
    
    }
    так же удаляем
    Код:
    if ($config['seo_control'] AND ( isset($_GET['seourl']) OR strpos ( $_SERVER['REQUEST_URI'], "?" ) !== false ) ) {
        if ($_GET['seourl'] != $row['alt_name'] OR $_GET['seocat'] OR $_GET['news_name'] OR strpos ( $_SERVER['REQUEST_URI'], "?" ) !== false ) {
    
            if ($view_template == "print") {
    
                $re_url = explode ( "engine/print.php", strtolower ( $_SERVER['PHP_SELF'] ) );
                $re_url = reset ( $re_url );
    
            } else {
    
                $re_url = explode ( "index.php", strtolower ( $_SERVER['PHP_SELF'] ) );
                $re_url = reset ( $re_url );
    
            }
    
            header("HTTP/1.0 301 Moved Permanently");
            header("Location: {$re_url}{$row['id']}-{$row['alt_name']}.html");
            die("Redirect");
    
        }
    
    }
    так же удаляем
    Код:
    if ( $config['seo_control'] ) {
        if ($_GET['newsid'] OR strpos ( $_SERVER['REQUEST_URI'], "?" ) !== false) {
    
            if ($view_template == "print") {
    
                $re_url = explode ( "engine/print.php", strtolower ( $_SERVER['PHP_SELF'] ) );
                $re_url = reset ( $re_url );
    
            } else {
    
                $re_url = explode ( "index.php", strtolower ( $_SERVER['PHP_SELF'] ) );
                $re_url = reset ( $re_url );
    
            }
    
            header("HTTP/1.0 301 Moved Permanently");
            header("Location: {$re_url}".date( 'Y/m/d/', $row['date'] ).$row['alt_name'].".html");
            die("Redirect");
    
        }
    
    }
    Далее находим код
    Код:
    } else {
    
        $full_link = $config['http_home_url'] . "index.php?newsid=" . $row['id'];
        $print_link = $config['http_home_url'] . "engine/print.php?newsid=" . $row['id'];
        $short_link = "";
        $link_page = "";
        $news_name = "";
    
    И выше вставляем
    Код:
    $true_link = $config['http_home_url'] . substr ($_SERVER['REQUEST_URI'], 1);
    if (intval($_REQUEST['cstart']) >= 2) $full_link = $link_page . intval($_REQUEST['cstart']) . "," . $news_name . ".html";
    elseif ($news_page >= 2) $full_link = $link_page . $news_name . ".html";
    
    if ($true_link != $full_link) {
        header('HTTP/1.1 301 Moved Permanently');
        header ('Location: ' . $full_link);
        die();
    }
    а вообще прежде чем его ставить, надо подумать - надо ли оно? какую пользу оно принесет кроме гололовной боли?
     
    • Нравится Нравится x 1
  14. romanbkn

    Команда форума VIP Кинотрафик v2

    Регистрация:
    14 авг 2015
    Сообщения:
    3.423
    Лучших ответов:
    0
    Рейтинги:
    +1.290 / 0 / -0
    реально наверно нахер его, больше геомра чем пользы=)
     
  15. DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.194 / 9 / -0
    Штука полезная, но не рабочая. После установки перестает работать чпу в категорих и перестает работать профиль пользователя. Категории чинятся выключением обработки неверных чпу в админке, но это создаст дубли страниц, что нам не нужно. Проверено на чистом Dle 11.0 последней стабильной версии
     
    • Нравится Нравится x 1
  16. shevket007

    shevket007 Местный

    Регистрация:
    13 фев 2016
    Сообщения:
    1.612
    Лучших ответов:
    0
    Рейтинги:
    +515 / 3 / -0
    @Gameer Может кто нибудь внесет правки в этот SEO пак для актуальной версии?, так и проблема осталась не решенная, с вечной переадресацией и профилем пользователя
     
  17. DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.194 / 9 / -0
    как я понял простым смертным глючное барахло доступно, в привате же все поправленное есть.
     
    • Нравится Нравится x 1
  18. aeneas

    Забанен

    Регистрация:
    12 мар 2016
    Сообщения:
    11.489
    Лучших ответов:
    10
    Рейтинги:
    +4.043 / 208 / -0
    там есть по 3 ману скоректирвоаное, ставишь и траф попер
     
  19. DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.194 / 9 / -0
    я первый свой киносайт делаю, на приват как и у многих денег нет. Буду пробовать своими силами вывести в свет
     
  20. shevket007

    shevket007 Местный

    Регистрация:
    13 фев 2016
    Сообщения:
    1.612
    Лучших ответов:
    0
    Рейтинги:
    +515 / 3 / -0
    Да хотя бы укратить ссылку с такого xfsearch/year/2016/ на такой /year/2016/ или такой /2016/ кто решил у себя эту проблему?
     
Яндекс.Метрика