Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы Как изменить адрес профиля сайта на особый?

Как изменить адрес профиля сайта на особый?


     28.05.2016    Общие вопросы    337

вопрос
Всем привет!
Может кто-то пробовал такое, как сделать так чтобы профиль открывался не по ссылке вида:

/user/admin/

А по ссылке вида

/accaunt/

Так чтобы никто тупо не смог смотреть чужие профили, вместо accaunt конечно чтоб свое можно было вставить. И можно не играться с юзертитле и подобными и сразу везде указывать ссылку на такой вариант.

Что думаете на этот счет?

Ответил: Gameer


1. Открыть /engine/modules/profile.php найти и удалить :
$user_found = FALSE;

if( preg_match( "/[\||\'|\<|\>|\"|\!|\?|\$|\@|\/|\\\|\&\~\*\+]/", $user ) ) $user="";

$sql_result = $db->query( "SELECT * FROM " . USERPREFIX . "_users WHERE name = '$user'" );
Далее найти :
while ( $row = $db->get_row( $sql_result ) ) {
Заменить на :
$row = $member_id;
Далее найти
}

$tpl->clear();
Заменить на :
$tpl->clear();
Далее найти (все разы)
"user/" . urlencode( $row['name'] )
Заменить на :
"account"
Далее найти (все разы) :
&amp;user=" . urlencode( $row['name'] )
Заменить на
"
Далее найти :
&amp;userid=" . $row['user_id']
Заменить на
"
Далее найти :
&user=" . urlencode( $row['name'] )
Заменить на :
"
Далее найти (все разы) :
subaction=userinfo
Заменить на :
subaction=account

2. Открыть /engine/engine.php найти (все разы) :
$subaction == 'userinfo'
Заменить на
$subaction == 'account'
Далее найти (все разы)
&user=" . urlencode ( $user )
Заменить на :
"
Далее найти
subaction=userinfo
Заменить на :
subaction=account
Далее найти :
$url_page = $config['http_home_url'] . "user/" . urlencode ( $user );
Заменить на :
$url_page = $config['http_home_url'] . "account/";
Далее найти:
$url_page = $config['http_home_url'] . "user/" . urlencode ( $user ) . "/news";
Заменить на :
$url_page = $config['http_home_url'] . "account/news";
Далее найти:
$rss_url = $config['http_home_url'] . "user/" . urlencode ( $user ) . "/" . "rss.xml";
Заменить на :
$rss_url = $config['http_home_url'] . "account/rss.xml";

3. Открыть /engine/init.php найти :
if (isset ( $_GET['user'] )) {

    $user = @strip_tags ( str_replace ( '/', '', urldecode ( (string)$_GET['user'] ) ) );

    if ( $config['charset'] == "windows-1251" AND $config['charset'] != detect_encoding($user) ) {
        if( function_exists( 'mb_convert_encoding' ) ) {

            $user = mb_convert_encoding( $user, "windows-1251", "UTF-8" );

        } elseif( function_exists( 'iconv' ) ) {

            $user = iconv( "UTF-8", "windows-1251//IGNORE", $user );

        }

    }

    $user = $db->safesql ( $user );

    if( preg_match( "/[\||\'|\<|\>|\"|\!|\?|\$|\@|\#|\/|\\\|\&\~\*\+]/", $user ) ) $user="";

} else $user = '';
Заменить на :
if (isset ( $member_id["name"] ) && $member_id["user_group"] != 5) {

    $user = $member_id["name"];

    if ( $config['charset'] == "windows-1251" AND $config['charset'] != detect_encoding($user) ) {
        if( function_exists( 'mb_convert_encoding' ) ) {

            $user = mb_convert_encoding( $user, "windows-1251", "UTF-8" );

        } elseif( function_exists( 'iconv' ) ) {

            $user = iconv( "UTF-8", "windows-1251//IGNORE", $user );

        }

    }

    $user = $db->safesql ( $user );

    if( preg_match( "/[\||\'|\<|\>|\"|\!|\?|\$|\@|\#|\/|\\\|\&\~\*\+]/", $user ) ) $user="";

} else $user = '';

4. Открыть .htaccess найти
RewriteRule ^user/([^/]*)/rss.xml$ engine/rss.php?subaction=allnews&user=$1 [L]
RewriteRule ^user/([^/]*)(/?)+$ index.php?subaction=userinfo&user=$1 [L]
RewriteRule ^user/([^/]*)/page/([0-9]+)(/?)+$ index.php?subaction=userinfo&user=$1&cstart=$2 [L]
RewriteRule ^user/([^/]*)/news(/?)+$ index.php?subaction=allnews&user=$1 [L]
RewriteRule ^user/([^/]*)/news/page/([0-9]+)(/?)+$ index.php?subaction=allnews&user=$1&cstart=$2 [L]
RewriteRule ^user/([^/]*)/news/rss.xml(/?)+$ engine/rss.php?subaction=allnews&user=$1 [L]
Заменить на :
RewriteRule ^account/rss.xml$ engine/rss.php?subaction=allnews [L]
RewriteRule ^account(/?)+$ index.php?subaction=account [L]
RewriteRule ^account/page/([0-9]+)(/?)+$ index.php?subaction=account&cstart=$1 [L]
RewriteRule ^account/news(/?)+$ index.php?subaction=allnews [L]
RewriteRule ^account/news/page/([0-9]+)(/?)+$ index.php?subaction=allnews&cstart=$1 [L]
RewriteRule ^account/news/rss.xml(/?)+$ engine/rss.php?subaction=allnews [L]


Как-то так.
Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы