Изменяем ссылку на профиль пользователя для DLE

Изменяем ссылку на профиль пользователя

По умолчанию в dle ссылка на профиль пользователя имеет следующий вид:
http://nfhelp.ru/user/Sander

Этот хак позволяет изменить ссылку на свой профиль, вида:
http://nfhelp.ru/profile


Поддержка с и без ЧПУ.
1. Открыть файл /engine/engine.php
После строки:
} elseif ($subaction == 'userinfo') {

Вставить:
        } elseif ($subaction == 'profile') {
            // ################ Вывод своего профиля #################
            if ($cstart) {
                
                $cstart = $cstart - 1;
                $cstart = $cstart * $config['news_number'];
            
            }
            $user=$member_id['name'];
            $url_page = $config['http_home_url'] . "user/" . urlencode ( $user );
            $user_query = "subaction=userinfo&user=" . urlencode ( $user );

            if (isset ( $_SESSION['dle_sort_userinfo'] )) $news_sort_by = $_SESSION['dle_sort_userinfo'];
            if (isset ( $_SESSION['dle_direction_userinfo'] )) $news_direction_by = $_SESSION['dle_direction_userinfo'];
                
            $sql_select = "SELECT id, autor, date, short_story, SUBSTRING(full_story, 1, 15) as full_story, xfields, title, category, alt_name, comm_num, allow_comm, allow_rate, approve, fixed, rating, vote_num, news_read, flag, editdate, editor, reason, view_edit, tags FROM " . PREFIX . "_post WHERE autor = '$user' AND approve = '0' ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
            $sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post WHERE autor = '$user' AND approve = '0'";
            $allow_active_news = true;
            
            $config['allow_cache'] = false;


Перед строкой:
            if ($subaction == 'userinfo') {

Вставить:
            if ($subaction == 'profile') {
                $user=$member_id['name'];
                $allow_userinfo = TRUE;
                include_once (ENGINE_DIR . '/modules/profile.php');
            
            } else {
                $allow_active_news = TRUE;
            }



2. Открыть файл .htaccess (он скрытый, в корне - рядом с index.php)
После строки:
# вывод для отдельного юзера

Вставить:
RewriteRule ^profile(/?)+$ index.php?subaction=profile [L]


На всякий случай прикрепил инструкцию в файле.
Инструкция [1,83 Kb] (cкачиваний: 43)
Комментарии: (8)
  1. foto
    Посетитель 17 ноября 2013 13:04 #
    странно, все сделал по инструкции, очистил кешь, но все-равно отображает видом таким:
    http://nfhelp.ru/user/Sander

    версия дле 10
    +1
    1. foto
      Посетитель 15 сентября 2017 00:57 #
      Правильно, будет выводиться, поскольку стандартный вариант /user/ не удаляли.
      если ввести site.ru/profile, тогда будет отображать профиль.
      P.S
      Sander, после правки кода, отображаются материалы, а в стандартной схеме при выкл. режиме не отображает blush
      Проверено: DLE 12.0 версия
      0
  2. foto
    Посетитель 1 апреля 2014 17:48 #
    Подскажите пожалуйста, как сделать так, что-бы при просмотре стандартной страницы профиля (http://бла-бла/user/бла/) не выводились все новости с главной страницы?

    Пример: http://sandev.pro/user/vinder/
    0
    1. foto
      Администратор 15 сентября 2017 11:19 #
      По умолчанию на странице профиля не выводится контент. Там могут выводиться новости пользователя находящиеся на модерации, но не все новости с главной.
      Админка -> Настройки - Вкладка "Посетители" - Параметр "Выводить новости, ожидающие модерации в профиле пользователя".


      Возможно у вас главная выводится тегом custom и он не спрятан на странице профиля, смотрите в шаблоне main.tpl
      0
  3. foto
    Гость 2 июня 2018 13:03 #
    А как можно скрыть ссылки на профили и почтовые адреса в комментариях от гостей ?
    0
    1. foto
      Администратор 2 июня 2018 17:35 #
      [commentsgroup=5]{login}[/commentsgroup]
      [not-commentsgroup=5]{author}[/not-commentsgroup]
      0
      1. foto
        Гость 3 июня 2018 13:58 #
        Спасибо.
        0
        1. foto
          Гость 5 июня 2018 20:19 #
          П.с. для дле 11+ вот такой вариант рабочий -
          [group=5]{login}[/group]
          [not-group=5]{author}[/not-group]
          0
Добавить комментарий
  • Логин
  • E-mail (не обязательно)
Повторите рисунок:
antibot
© Sander-Development. 2009-2018.
При копировании, ссылка на источник обязательна.