We build. You grow.

Get best community software here

Start a social network, a fan-site, an education project with oxwall - free opensource community software

Редактируем Sidebar | Forum

Akim
Akim Jun 23 '12
Решил я из Sidebar сделать полноценное меню. На данный момент Sidebar выполняет функцию добавления фотографии, видео, группы, блога и т.п. Задача: сделать универсально меню пользователя (не путать с горизонтальным меню сайта), которое будет направлять пользователя на личные фотографии, группы, блоги и т п., а также - редактировать уже созданный контент или добавлять новый.
В шаблоне, в файле general.html, мы видим код {component class="BASE_CMP_Sidebar"}, который отвечает за выведение Сайдбара. Сам же Сайдбар находится немного глубже - в файле add_new_content.html, полный путь которого - ../ow_system_plugins/base/views/components/add_new_content.html. Однако и в этом файле мы видим скудный код, который направляет нас еще глубже. Сами ссылки Сайдбара находятся в разных плагинах (ow_plugins) в файле init.php. Но не будем туда лезть. Остановимся на add_new_content.html, куда я предлагаю добавлять новые ссылки.
Но тут я столкнулся с проблемой. Обычные ссылки прописать не проблема, например, такие, как ссылка на друзей:
<a class="ow_add_content" href="http://мой_сайт/friends">Друзья</a>
или на добавление фотографии:
<a class="ow_add_content" href="http://мой_сайт/photo/upload/index">Добавитьфото</a>.
Проблема прописать ссылки, в которых фигурирует уникальный ID или USERNAME.
Например, ссылку на собственные фотографии, где фигурирует USERNAME, я прописал так:
<a class="ow_add_content" href="{url_for_route for="photo_user_albums:[user=>`$username`]"}">Моифото</a>.
Должно получится так: http://мой_сайт/photo/useralbums/admin, где admin - USERNAME. Но на выходе я получаю http://мой_сайт/photo/useralbums/, без admin, то есть не читается [user=>`$username`]. В php я дополнительно ничего не прописывал, хотя подозреваю, что надо, раз не читается переменная USERNAME.
В общем, просьба разработчикам и всем знающим - помогите решить проблему со "сложными" ссылками.
Akim
Akim Jun 29 '12
В php прописываю (в файле add_new_content.php):

OW::getRouter()->urlForRoute('photo_user_albums', array('user' => $username));

$albumUrl = OW::getRouter()->urlForRoute('photo_user_album', array( 'user' => BOL_UserService::getInstance()->getUserName($userId), 'album' => $album->id )); 


Все равно ссылка <a class="ow_add_content" href="{url_for_route for="photo_user_albums:[user=>`$username`]"}">Мои фото</a> в файле add_new_content.html не работает. Что делаю не так?