Надо было начать с данной темы, восполню пробел.
Компонент комплексный, а это значит состоит из множества мелких компонент и иерархия предельно проста, за исключением главной страницы объектов (профиль пользователя/группы) - на таких страницах множество мелких компонент:
- для пользователя это друзья/группы/дни рождения/последние сообщения форум/блога и так далее (компонент "профиль пользователя)
- для групп это фактически тоже самое, блоки другие (компонент "профиль группы")
А далее все просто, рассмотрим два примера.
Пример 1.
Страница форума пользователя:
- подключаем меню пользователя (вкладки) socialnetwork.user_menu
- подключаем профиль пользователя socialnetwork.user_profile, но шаблон SHORT.
- подключаем исполняемый компонент (в нашем случае это socialnetwork.forum.topic.list
Пример 2.
Страница форума группы:
- подключаем меню группы (вкладки) socialnetwork.group_menu
- подключаем профиль группы socialnetwork.group, шаблон SHORT.
- подключаем исполняемый компонент (в нашем случае это socialnetwork.forum.topic.list
Как видите, все предельно просто.
Но как же узнать, где что подключается? Ну техническому специалисту будет все предельно просто. Открываем socialnetwork/templates/.default и там будет куча файлов. Для форума это будет файл user_forum.php или group_forum.php, открываем и смотрим что подключается. И идем в этот компонент.
Все.
Зная этот механизм можно очень просто подключать свои вкладки, менять логику и прочее.
Компонент комплексный, а это значит состоит из множества мелких компонент и иерархия предельно проста, за исключением главной страницы объектов (профиль пользователя/группы) - на таких страницах множество мелких компонент:
- для пользователя это друзья/группы/дни рождения/последние сообщения форум/блога и так далее (компонент "профиль пользователя)
- для групп это фактически тоже самое, блоки другие (компонент "профиль группы")
А далее все просто, рассмотрим два примера.
Пример 1.
Страница форума пользователя:
- подключаем меню пользователя (вкладки) socialnetwork.user_menu
- подключаем профиль пользователя socialnetwork.user_profile, но шаблон SHORT.
- подключаем исполняемый компонент (в нашем случае это socialnetwork.forum.topic.list
Пример 2.
Страница форума группы:
- подключаем меню группы (вкладки) socialnetwork.group_menu
- подключаем профиль группы socialnetwork.group, шаблон SHORT.
- подключаем исполняемый компонент (в нашем случае это socialnetwork.forum.topic.list
Как видите, все предельно просто.
Но как же узнать, где что подключается? Ну техническому специалисту будет все предельно просто. Открываем socialnetwork/templates/.default и там будет куча файлов. Для форума это будет файл user_forum.php или group_forum.php, открываем и смотрим что подключается. И идем в этот компонент.
Все.
Зная этот механизм можно очень просто подключать свои вкладки, менять логику и прочее.
Я инженер, который решает задачи, а не пишет на языке. Архитектура, разработка, DevOps — подбираю инструменты под цель, строю решения, которые работают в проде и масштабируются без боли.