Уважаемые пользователи, по техническим причинам загрузка файлов временно недоступна. Приносим извинения за временные неудобства.

Название темы вместо ссылки на нее

У вас есть идея для расширения функциональности phpBB 3.0.x? Расскажите о ней здесь!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
DOMINATOR
phpBB 1.4.4
Сообщения: 153
Стаж: 19 лет 1 месяц
Откуда: Новосибирск
Поблагодарили: 13 раз

Название темы вместо ссылки на нее

Сообщение DOMINATOR »

Собственно нужен мод который бы заменял ссылку на тему ее названием.
Пример: есть тема форума http://forum ru/viewtopic.php?t=55 называется она "Все обо всем". Если пользователь пишет сообщение с текстом "Посмотрите сюда: http://forum ru/viewtopic.php?t=55" То после написания сообщения текст сообщения становится такого плана: "Посмотрите сюда: Все обо всем", ест-но Все обо всем ведет на http://forum ru/viewtopic.php?t=55
Желательно чтобы мод работал как с ссылками в ббкоде URL, так и без него.

Если кто-то видел что-то подобное (хотябы для двойки) прошу показать. Также могу попробывать сам покопаться (хотя врятли ума хватит), поэтому не откажусь от информации где примерно копать.

PS: все что выдал поиск это http://phpbbguru.net/community/viewtopic.php?t=8020
Важное дополнение к FAQ по установке модов:
Моды ночью/на пьяную голову/с похмелья не ставь, движок сломаешь! Все равно с утра переделывать прийдется...
;)
IRON
phpBB 1.4.1
Сообщения: 46
Стаж: 18 лет 8 месяцев

Re: Название темы вместо ссылки на нее

Сообщение IRON »

Очень несложный (насколько я представляю) и полезный мод! Видел его работу на ипбшке, прекраснейшая вещь!
Очень прошу профессионалов попробовать реализовать.
Аватара пользователя
FladeX
Former team member
Сообщения: 1935
Стаж: 19 лет 4 месяца
Откуда: Саранск
Благодарил (а): 7 раз
Поблагодарили: 59 раз

Re: Название темы вместо ссылки на нее

Сообщение FladeX »

IRON
Дополнительный запрос появляется только в момент отправки сообщения, насколько я понимаю?
//
// Okay, let's do the loop, yeah come on baby let's do the loop
// and it goes like this ...
| phpBB Adept ] | Каталог форумов | генератор sitemap для форумов | форум про форумы
IRON
phpBB 1.4.1
Сообщения: 46
Стаж: 18 лет 8 месяцев

Re: Название темы вместо ссылки на нее

Сообщение IRON »

Если я правильно понял ваш вопрос, то да. Делать запрос каждый раз при обращении к сообщению, содержащему ссылку на тему из форума-непозволительная и бесполезная роскошь.
Аватара пользователя
VladPowers
phpBB 1.4.2
Сообщения: 53
Стаж: 21 год 7 месяцев
Откуда: Бузулук 56rus
Благодарил (а): 2 раза
Поблагодарили: 3 раза

Re: Название темы вместо ссылки на нее

Сообщение VladPowers »

DOMINATOR
Не умею оформлять моды, так что смотрите здесь :)

Открыть файл ./includes/functions_content.php

Найти:

Код: Выделить всё

/**
* A subroutine of make_clickable used with preg_replace
* It places correct HTML around an url, shortens the displayed text
* and makes sure no entities are inside URLs
*/
Вставить до нее:

Код: Выделить всё

/***
* Function find &t and get number topic
*/
function search_topic_title($url)
{
	global $db;
	global $user;
	$t_title = '';
	$url = str_replace('&t=', '_#_t', $url);
	$url = str_replace('&p=', '_#_p', $url);
	$url = str_replace('t=', '&t=', $url);
	$url = str_replace('p=', '&p=', $url);
	$url = str_replace('_#_t', '&t=', $url);
	$url = str_replace('_#_p', '&p=', $url);
	$t = '';
	$p = '';
        $sym = chr(39);
	$sql = '';
	parse_str($url);

	if ($t !== '')
	{
		preg_match('/(?:[0-9]+)?/', $t, $t);
		$sql = 'SELECT t.topic_title as topic_title, ' . $sym . $sym .' as username  FROM ' . TOPICS_TABLE . ' as t WHERE (t.topic_id='.$t[0].')';
	}
      	else
		if ($p !== '')
		{
			preg_match('/(?:[0-9]+)?/', $p, $p);
			$sql = 'SELECT t.topic_title as topic_title, u.username as username FROM ' . POSTS_TABLE . ' as p LEFT JOIN ' . TOPICS_TABLE . ' as t ON p.topic_id = t.topic_id LEFT JOIN ' . USERS_TABLE . ' as u ON p.poster_id = u.user_id where (`post_id`='.$p[0].')';
		};                                                                                                                                                                                      

      	if ($sql !== '')
      	{
		$result = $db->sql_query($sql);
		while ($row = $db->sql_fetchrow($result))
		{
			if ($row['username'] == '')
				$t_title = $user->lang['TOPIC'] . ': ' . $row['topic_title'];
			else
				$t_title = $user->lang['TOPIC'] . ': ' . $row['topic_title'] . ', ' . $user->lang['MESSAGE'] . ' #' . $p[0] . ', ' . $user->lang['AUTHOR'] . ': ' . $row['username'];
		};
      	};

   return $t_title;
}
Найти:

Код: Выделить всё

				$text			= $relative_url;
Заменить на:

Код: Выделить всё

			//here replace our theme
			$text = search_topic_title($relative_url);
			if ($text == '')
				$text			= $relative_url;
Пример работы можно посмотреть здесь http://www.forum.kia-club.ru/viewtopic.php?f=1&t=26324
И точка лазерного прицела на твоём лбу - тоже чья-то точка зрения
C уважением, ВладМощный :)

Правда то, что существуют ангелы, но иногда у них отсутствуют крылья, и мы называем их друзьями.
Аватара пользователя
FladeX
Former team member
Сообщения: 1935
Стаж: 19 лет 4 месяца
Откуда: Саранск
Благодарил (а): 7 раз
Поблагодарили: 59 раз

Re: Название темы вместо ссылки на нее

Сообщение FladeX »

MOD title: Convert URL Links With Page Title
MOD description: Links posted are automatically renamed to what the target Page Title it's defined. Users can disable it when posting and admin can turn it of via ACP.
MOD version: 0.6.0
phpBB version: 3.0.1

Development stage: BETA

phpBB.com
//
// Okay, let's do the loop, yeah come on baby let's do the loop
// and it goes like this ...
| phpBB Adept ] | Каталог форумов | генератор sitemap для форумов | форум про форумы
Аватара пользователя
Romaaa
phpBB 1.2.0
Сообщения: 14
Стаж: 19 лет
Откуда: dp.ua

Re: Название темы вместо ссылки на нее

Сообщение Romaaa »

VladPowers писал(а):Не умею оформлять моды, так что смотрите здесь
спасибо, красивое решение :) один небольшой недочет заметил кода... когда ссылку из поиска даешь, то по ней скрипт не может вытянуть название темы. пример:
_http://localhost/forum/viewtopic.php?f=2&t=5&p=12&hilit=678678678#p12
FladeX писал(а):MOD title: Convert URL Links With Page Title
тестировал этот мод, пока что еще сыроват и не очень дружит с кодировками.. т.е. если на сайте что-то нестандартное, то при отправке сообщения вылетает ошибка мускула
Аватара пользователя
VladPowers
phpBB 1.4.2
Сообщения: 53
Стаж: 21 год 7 месяцев
Откуда: Бузулук 56rus
Благодарил (а): 2 раза
Поблагодарили: 3 раза

Re: Название темы вместо ссылки на нее

Сообщение VladPowers »

Romaaa
Точно :) Надо подумать :) Спасибо за бета-тестирование :)
И точка лазерного прицела на твоём лбу - тоже чья-то точка зрения
C уважением, ВладМощный :)

Правда то, что существуют ангелы, но иногда у них отсутствуют крылья, и мы называем их друзьями.
trooper
phpBB 1.2.1
Сообщения: 28
Стаж: 18 лет 6 месяцев
Благодарил (а): 10 раз
Поблагодарили: 1 раз

Re: Название темы вместо ссылки на нее

Сообщение trooper »

Есть ли аналог решения от VladPowers, который был бы совместим с SEO mod?
Аватара пользователя
Поручик
Former team member
Сообщения: 3942
Стаж: 21 год 5 месяцев
Откуда: Оренбург (Южный Урал)
Благодарил (а): 24 раза
Поблагодарили: 54 раза

Re: Название темы вместо ссылки на нее

Сообщение Поручик »

http://forum.aeroion.ru/topic310.html
Профессионал - тот же дилетант, только знающий, где ошибётся.
Генератор db_update.php для phpBB2 с некоторыми удобствами. Многие моды я беру или ищу здесь, здесь, тут
Все консультации только на форуме, приваты и стук в аську по таким вопросам игнорируются!
FAQ-phpBB3 | Ошибки новичков, или как не поссориться с модератором | Правила конференции

наш форум http://forum.aeroion.ru/cat1.html
trooper
phpBB 1.2.1
Сообщения: 28
Стаж: 18 лет 6 месяцев
Благодарил (а): 10 раз
Поблагодарили: 1 раз

Re: Название темы вместо ссылки на нее

Сообщение trooper »

Низкий поклон, именно то, что было нужно! Работает отлично.
Erlang
phpBB 2.0.15
Сообщения: 1033
Стаж: 22 года 3 месяца
Откуда: Москва
Благодарил (а): 293 раза
Поблагодарили: 7 раз

Сообщение Erlang »

Поручик замечена ошибка при цитировании с сылкой.

А старые ссылки, до установки мода, можно как-то преобразовать?
С уважением,
Сергей

Вернуться в «Запросы модов для phpBB 3.0.x»