"Стена" вместо "Информации" (Решено)

Может кто-то подскажет как сделать чтоб в профиле пользователя по умолчанию открывало не «информацию», а «стену»
Скорей всего это не сложно, но я человек далекий от этого всего и только начал знакомство с LS, так что если кто-то тыкнет носом буду очень признателен

Решение найдено благодаря kerby Плюсаните ему, а то у меня рейтинг не позволяет

Если не совсем «по-быстрому», то… classes\actions\ActionProfile.class.php
if (Config::Get('general.reg.invite')) {
                        /**
                         * Получаем список тех кого пригласил юзер
                         */
                        $aUsersInvite=$this->User_GetUsersInvite($this->oUserProfile->getId());
                        $this->Viewer_Assign('aUsersInvite',$aUsersInvite);
                        /**
                         * Получаем того юзера, кто пригласил текущего
                         */
                        $oUserInviteFrom=$this->User_GetUserInviteFrom($this->oUserProfile->getId());
                        $this->Viewer_Assign('oUserInviteFrom',$oUserInviteFrom);
                }
                /**
                 * Получаем список юзеров блога
                 */
                $aBlogUsers=$this->Blog_GetBlogUsersByUserId($this->oUserProfile->getId(),ModuleBlog::BLOG_USER_ROLE_USER);

Меняеям на
if (Config::Get('general.reg.invite')) {
                        /**
                         * Получаем список тех кого пригласил юзер
                         */
                        $aUsersInvite=$this->User_GetUsersInvite($this->oUserProfile->getId());
                        $this->Viewer_Assign('aUsersInvite',$aUsersInvite);
                        /**
                         * Получаем того юзера, кто пригласил текущего
                         */
                        $oUserInviteFrom=$this->User_GetUserInviteFrom($this->oUserProfile->getId());
                        $this->Viewer_Assign('oUserInviteFrom',$oUserInviteFrom);
                }
        if (is_null(Router::GetParam(0)))
            Router::Location($this->oUserProfile->getUserWebPath()."wall/");
                /**
                 * Получаем список юзеров блога
                 */
                $aBlogUsers=$this->Blog_GetBlogUsersByUserId($this->oUserProfile->getId(),ModuleBlog::BLOG_USER_ROLE_USER);


После этого в файле /templates/skin/<шаблон>/action/ActionProfile/sidebar.tpl ищете что-то из серии
<section class="block block-type-profile-nav">
        <ul class="nav nav-pills nav-profile">
                {hook run='profile_sidebar_menu_item_first' oUserProfile=$oUserProfile}
                <li {if $sAction=='profile' && ($aParams[0]=='whois' or $aParams[0]=='')}class="active"{/if}><a href="{$oUserProfile->getUserWebPath()}">{$aLang.user_menu_profile_whois}</a></li>


и вот там
<a href="{$oUserProfile->getUserWebPath()}">

поменять на
<a href="{$oUserProfile->getUserWebPath()}whois/">

16 комментариев

avatar
присоединяюсь к вопросу
avatar
поддерживаю. вопрос актуален, я думаю для многих
avatar
Изначально хотел вот такое в профиле ТЫЦ Тоесть и стена и информация одновременно, мне подсказали что на страничку информации можно добавить стену вот этим плагином
но оно выводит стену под всем добром, чтоб было как хочу надо полностью перепиливать в шаблоне.
Мне кажется будет проще сделать ввывод по умолчанию стены, как описано мною в топике выше
avatar
только как это сделать я к сожалению незнаю (
avatar
Если совсем по-быстрому, то в файле classes\modules\user\entity\User.entity.class.php

заменить
public function getUserWebPath() {
		return Router::GetPath('profile').$this->getLogin().'/';
	}

на
public function getUserWebPath() {
		return Router::GetPath('profile').$this->getLogin().'wall/';
	}
avatar
Да круто, все как хотел, только возле wall еще один слеш надо слева, а то сылка была не совсем правильной и выбивало ошибку

public function getUserWebPath() {
		return Router::GetPath('profile').$this->getLogin().'/wall/';
	}


Огромное спасибо, если б мог плюсанул бы )
avatar
блин теперь слово wall добавило в ссылки на избраное, публикации, друзья и они перестали работать (
ну и по ссылке информация выдает тоже что и на стене.
Блин рановато обрадовался )
avatar
Если не совсем «по-быстрому», то… classes\actions\ActionProfile.class.php

if (Config::Get('general.reg.invite')) {
			/**
			 * Получаем список тех кого пригласил юзер
			 */
			$aUsersInvite=$this->User_GetUsersInvite($this->oUserProfile->getId());
			$this->Viewer_Assign('aUsersInvite',$aUsersInvite);
			/**
			 * Получаем того юзера, кто пригласил текущего
			 */
			$oUserInviteFrom=$this->User_GetUserInviteFrom($this->oUserProfile->getId());
			$this->Viewer_Assign('oUserInviteFrom',$oUserInviteFrom);
		}
		/**
		 * Получаем список юзеров блога
		 */
		$aBlogUsers=$this->Blog_GetBlogUsersByUserId($this->oUserProfile->getId(),ModuleBlog::BLOG_USER_ROLE_USER);


Меняем на

if (Config::Get('general.reg.invite')) {
			/**
			 * Получаем список тех кого пригласил юзер
			 */
			$aUsersInvite=$this->User_GetUsersInvite($this->oUserProfile->getId());
			$this->Viewer_Assign('aUsersInvite',$aUsersInvite);
			/**
			 * Получаем того юзера, кто пригласил текущего
			 */
			$oUserInviteFrom=$this->User_GetUserInviteFrom($this->oUserProfile->getId());
			$this->Viewer_Assign('oUserInviteFrom',$oUserInviteFrom);
		}
        if (is_null(Router::GetParam(0)))
            Router::Location($this->oUserProfile->getUserWebPath()."wall/");
		/**
		 * Получаем список юзеров блога
		 */
		$aBlogUsers=$this->Blog_GetBlogUsersByUserId($this->oUserProfile->getId(),ModuleBlog::BLOG_USER_ROLE_USER);
avatar
Вот щас почти все хорошо, только нажимая на «информация» открывает «стену», тоесть «информацию» нигде и не посмотришь (
avatar
Ну на самом деле это «косяк» шаблона. В этом меню должна быть ссылка на /profile/user/whois/ а не на /profile/user/

Т.е. в файле /templates/skin/<шаблон>/action/ActionProfile/sidebar.tpl ищете что-то из серии
<section class="block block-type-profile-nav">
        <ul class="nav nav-pills nav-profile">
                {hook run='profile_sidebar_menu_item_first' oUserProfile=$oUserProfile}
                <li {if $sAction=='profile' && ($aParams[0]=='whois' or $aParams[0]=='')}class="active"{/if}><a href="{$oUserProfile->getUserWebPath()}">{$aLang.user_menu_profile_whois}</a></li>
 


и вот там
<a href="{$oUserProfile->getUserWebPath()}">

поменять на
<a href="{$oUserProfile->getUserWebPath()}whois/">
avatar
Огромное спасибо что не прошли мимо, помогло, все прекрасно работает )
avatar
Пожалуйста :)
avatar
Да, и предыдущий совет по изменение User.entity.class.php отменяется, естественно.
avatar
И еще момент — когда отвечаете на коммент, лучше всего использовать ссылку «ответить», тогда тот, кому вы отвечаете получит уведомление об ответе, а не обнаружит его случайно :)
avatar
Виноват исправлюсь, спасибо что не прошли мимо )
avatar
А как добавить Информацию с аватаркой перед стеной
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.