Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Доктор Фредди

Написание хука для шаблона

Recommended Posts

Есть необходимость изменить ссылку на профиль пользователя внутри тема форума.

 

1315159701-clip-7kb.png

 

Выводится она в шаблона skin_topic / topicViewTemplate, вот в этом куске:

 

						<if test="postMember:|:$post['author']['member_id']">
						<if test="postOnline:|:$post['author']['_online']">
							{parse replacement="user_online"}
						<else />
							{parse replacement="user_offline"}
						</if>  
							<span class="author vcard"><a class="url fn" href='{parse url="showuser={$post['author']['member_id']}" base="public" template="showuser" seotitle="{$post['author']['members_seo_name']}"}'>{$post['author']['members_display_name']}</a>{parse template="user_popup" group="global" params="$post['author']['member_id'], $post['author']['members_seo_name']"}</span>
					<else />
						{$post['author']['members_display_name']}
					</if>

 

Я так понимаю, мне нужен хук для шаблона. Что-то в духе:

 

1315159471-clip-11kb.png

 

Код хука должен представлять из себя что-то вроде:

 

<?php

class members_names
{	
public function getOutput()
{
  return '';
}
}

 

Через функцию getOutput я могу добавить что-то до или после имени пользователя, но как поменять то, что выводит приведённый выше код, т.е. заменить ссылку на форумный профиль нужной мне ссылкой? И, самое главное, как из хука получить доступ к идентификатору пользователя, для которого выполняется if statement?

Share this post


Link to post
Share on other sites

Я делал как ritsuka показывал в этом топике http://forums.ibresource.ru/index.php?/topic/61606/ - Перегрузка стиля

 

Тип файла хука: перегрузчик стиля

members_names.php

class members_names extends skin_topic(~id~)
{       
function topicViewTemplate( $forum, $topic, $post_data, $displayData )
{
	$html = parent::topicViewTemplate( $forum, $topic, $post_data, $displayData );

	//return $html;
	return '<h2>Hellow</h2>';
}
}

 

Хотя по мне проще руками внести пару строчек в шаблоне, чем париться здесь с хуками.

  • Upvote 1

Share this post


Link to post
Share on other sites

Хотя по мне проще руками внести пару строчек в шаблоне, чем париться здесь с хуками.

ага :(

Share this post


Link to post
Share on other sites

siv1987, по задаче для генерации ссылки мне нужно будет обращаться к БД, так что малой кровью, думаю, не обойтись.

 

Спасибо за пример, попробую сегодня.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...