От Sheer урок по дедукции -
Я руководствуюсь пресловутым правилом 1.7 и когда надо, "включаю мозг" несмотря на некую "кривизну рук". Для чего использую метод дедукции
При составлении представления о картине преступления Холмс использует строгую логику, которая позволяет по разрозненным и мало значащим в отдельности деталям восстановить единую картину так, как если бы он видел происшествие своими глазами.
По одной капле воды человек, умеющий мыслить логически, может сделать вывод о возможности существования Атлантического океана или Ниагарского водопада, даже если он не видал ни того, ни другого и никогда о них не слыхал.
_________________________________________
Артур Конан Дойль, «Этюд в багровых тонах»
1.
Пчелкин писал(а):
Мне надо поиск тем из минипрофиля
Минипрофиль у нас формируется в файле
viewtopic.php.
Надеюсь это очевидно. Значит рыть надо там.
2. Поиск осуществляется скриптом
search.php
. Ранее мы выяснили, что если этому скрипту передать некие параметры, то он найдет все темы пользователя, а именно, например
- Код: выделить все
search.php?author_id=2&sr=topics&sf=firstpost
3. За вывод минипрофиля (в частности) у нас отвечает шаблон
viewtopic_body.html
. Значит ссылку надо вставить туда. То есть воткнуть туда некий объект шаблона. Назовем его
U_SEARCH_TOPICS
. Теперь нужно сформировать этот объект. Как уже выяснили, это надо сделать в файле
viewtopic.php
.
4. Открываем, смотрим, где и как формируются похожие вещи, например
U_NOTES
- Код: выделить все
'U_NOTES' => ($auth->acl_getf_global('m_')) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=notes&mode=user_notes&u=' . $poster_id, true, $user->session_id) : '',
Ага, в массиве
postrow
Значит нужно сделать по аналогии, и коли уж ссылки формируются так, то значит
- Код: выделить все
append_sid("{$phpbb_root_path}search.$phpEx", 'author_id='.$poster_id.'&sr=topics&sf=firstpost')
Воткнем проверку, может ли пользователь пользоваться поиском
- Код: выделить все
($auth->acl_get('u_search')) ?
И в завершение вставляем в массив
postrow
- Код: выделить все
'U_SEARCH_TOPICS' => ($auth->acl_get('u_search')) ? append_sid("{$phpbb_root_path}search.$phpEx", 'author_id='.$poster_id.'&sr=topics&sf=firstpost') : '',
Далее с шаблоном уже дело техники. Готово! Хотя три минуты назад, я понятия не имел, как это надо сделать, вернее готового решения не было. (Правда все же некими знаниями обладаю, поковырялся, поднахватался...)
5. Итак, это элементарно, Ватсон!