мы все учились понемногу болванкам. Подключаешь в листенере нужное событие, пишешь функцию-обработчик этого события, в которой добавляешь переменные в темплейт, например, так ,
<?php
/**
*
* @package myextension
* @copyright (c) 2014 Nickname
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
*
*/
namespace alecto\My\event;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
/**
* Event listener
*/
class listener implements EventSubscriberInterface
{
/**
* Assign functions defined in this class to event listeners in the core
*
* @return array
* @static
* @access public
*/
static public function getSubscribedEvents()
{
return array(
'core.user_setup' => 'load_language_on_setup',
);
}
public function page_header_after($event)
{
$user_id = (int) $member['user_id'];
$this->template->assign_vars(array(
'PROFILE_USER_ID' => $user_id,
));
}
public function load_language_on_setup($event)
{
$lang_set_ext = $event['lang_set_ext'];
$lang_set_ext[] = array(
'ext_name' => 'alecto/My',
'lang_set' => 'my',
);
$event['lang_set_ext'] = $lang_set_ext;
}
}
для себя любимого работает egosearch.
речь идет о профиле любого пользователя.
открываешь любой профиль - нужен айди пользователя этого профиля, чтобы построить выборку.
никто не ругается, только это не конструктор
айди пользователя ты должен извлечь из минипрофиля джаваскиптом и передать на сервер любым образом. Или в командную строку подставить "?u=339", или в контроллере, как параметр
При разработке модов/расширений обычно включают все возможные отладчики (3 строки в config.php, ini_set('display_errors', 'on'); там же, лог сервера) и смотрят на возникающие ошибки. "Белый экран" это не текст ошибки, по нему ничего сказать невозможно