Избавляемся от темы по-умолчанию при ответах (RE:..)

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
ZhAN
phpBB 1.2.1
Сообщения: 25
Стаж: 18 лет 2 месяца
Откуда: Киев
Благодарил (а): 2 раза
Поблагодарили: 4 раза

Избавляемся от темы по-умолчанию при ответах (RE:..)

Сообщение ZhAN »

Использую phpBB 3.0.2.
Просматривая любое обсуждение форума вначале каждого сообщения крупным шрифтом отображается тема сообщения. Значение этой темы в абсолютном большинстве случаев автор не изменяет. По умолчанию туда прописывается RE: + Оригинальное название темы. В результате 99% сообщений содержат "тему сообщения" не несущую никакой полезной информации. Я посчитал нужным с побороться с этим явлением.

1. Чистим бесполезные темы сообщений, которые уже созданы:

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

UPDATE phpbb_posts SET post_subject = '' WHERE post_subject LIKE 'RE:%'
2. Делаем так, чтобы при ответах на сообщения подставлялась пустая тема, вместе обычного "RE: .." :

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

#-----[ OPEN ]-----
posting.php

#-----[ FIND ]-----
	$post_data['post_subject'] = ((strpos($post_data['post_subject'], 'Re: ') !== 0) ? 'Re: ' : '') . censor_text($post_data['post_subject']);

#-----[ REPLACE ]-----
	$post_data['post_subject'] = '';

#-----[ SAVE/CLOSE ALL FILES ]-----
Таким образом автор сообщения (ответа) не лишается возможности указать желаемую тему сообщения, но по-умолчанию она пустая, соответственно не дублирует название оригинальной темы топика.

Добавлено спустя 11 минут 52 секунды:
Хотелось бы услышать комментарии знающих людей про негативные последствия от пустых phpbb_posts.post_subject
Повлияет ли это негативно например на поиск?
Последний раз редактировалось ZhAN 07.08.2008 14:01, всего редактировалось 1 раз.
Kastaneda
Former team member
Сообщения: 702
Стаж: 21 год 11 месяцев
Поблагодарили: 4 раза

Re: Избавляемся от темы по-умолчанию при ответах (RE:..)

Сообщение Kastaneda »

Я не помню с какой беты отключил автоматическое добавление заголовка (как раз вашим методом). Никаких проблем с поиском и с прочим не замечаю до сих пор.
Shurik.Mcl
phpBB 1.4.1
Сообщения: 48
Стаж: 18 лет 3 месяца
Откуда: UA Черкассы
Благодарил (а): 1 раз

Re: Избавляемся от темы по-умолчанию при ответах (RE:..)

Сообщение Shurik.Mcl »

у кого установлен мод [Beta] User Reputation Points 0.2.0a крайне не рекомендую делать сабж
потеряете в коментариях к репе урл поста. оказалось он привязан к post_subject
Аватара пользователя
Fray98rus
Former team member
Сообщения: 442
Стаж: 18 лет 11 месяцев
Откуда: Санкт-Петербург
Благодарил (а): 3 раза
Поблагодарили: 2 раза

Re: Избавляемся от темы по-умолчанию при ответах (RE:..)

Сообщение Fray98rus »

ZhAN писал(а):негативные последствия
Кликая по заголовку сообщения, мы можем получить ссылку прямо на сообщение. т.е. автоматическая прокрутка до него.
Если там ничего не будет, то этой возможности мы будем лишены.
Fazan
phpBB 1.4.2
Сообщения: 61
Стаж: 18 лет 5 месяцев
Благодарил (а): 2 раза

Re: Избавляемся от темы по-умолчанию при ответах (RE:..)

Сообщение Fazan »

Fray98rus
почему?
вот ссылка на твое сообщение с кликом на заголовок сообщения:
http://www.phpbbguru.net/community/topi ... ml#p233191
а вот ссылка на тоже сообщение с кликом на значок рядом с ником под заголовком сообщения (Изображение или Изображение):
http://www.phpbbguru.net/community/topi ... ml#p233191
как видим ссылки идентичны, и данные правки не убирают вторую ссылку ;)
т.е. в базе и в моде [Beta] User Reputation Points 0.2.0a надо изменить поле post_subject на название второй ссылки (не знаю как называется)
Strider11
phpBB 1.0.0
Сообщения: 7
Стаж: 17 лет 6 месяцев

Re: Избавляемся от темы по-умолчанию при ответах (RE:..)

Сообщение Strider11 »

Я пошел немного дальше и решил удалить заголовок сообщения в форме быстрого ответа. Надеюсь уважаемый rxu будет не против такого вмешательства в его мод. Итак:

1. Выполняем шаги из первого поста этой темы.

2.

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

#-----[ OPEN ]-----
language/ru/mods/quick_reply.php

#-----[ FIND ]-----
$subject = ((strpos($main_data['topic_title'], 'Re: ') !== 0) ? 'Re: ' : '') . censor_text($main_data['topic_title']);

#-----[ REPLACE WITH]-----
$subject = '';

#-----[ OPEN ]-----
styles/prosilver/template/quick_reply.html

#-----[ FIND & DELETE THIS]-----
<!-- IF S_POST_ACTION -->
		<dl style="clear: left;">
			<dt><label for="subject">{L_SUBJECT}:</label></dt>
			<dd><input type="text" name="subject" id="subject" size="45" maxlength="<!-- IF S_NEW_MESSAGE -->60<!-- ELSE -->64<!-- ENDIF -->" tabindex="2" value="{SUBJECT}" class="inputbox autowidth" /></dd>
		</dl>
			<!-- IF S_CONFIRM_CODE -->
			<dl>
				<dt><label for="confirm_code">{L_CONFIRM_CODE}:</label><br /><span>{L_CONFIRM_CODE_EXPLAIN}</span></dt>
					<dd><input type="hidden" name="confirm_id" value="{CONFIRM_ID}" />{CONFIRM_IMAGE}</dd>
					<dd><input type="text" name="confirm_code" id="confirm_code" size="8" maxlength="8" tabindex="3" class="inputbox narrow" title="{L_CONFIRM_CODE}" /></dd>
			</dl>
			<!-- ENDIF -->
		<!-- ENDIF -->
Способ грубоват, скорее всего не будет показываться окно подтверждения отправки, но моего знания html не хватает на большее :) Для моих целей хватает, может и еще кому пригодится
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 8 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Re: Избавляемся от темы по-умолчанию при ответах (RE:..)

Сообщение Alecto »

Подскажите, как удалить заголовок из встроенного быстрого ответа (не мода) для форума версии 3.07 PL1?
Понимаю, что надо править файл quickreply_editor.html в шаблонах Prosilver, но если можно, конкретики от специалистов.
Аватара пользователя
Nekstati
Поддержка
Поддержка
Сообщения: 3365
Стаж: 17 лет 6 месяцев
Благодарил (а): 37 раз
Поблагодарили: 1454 раза

Re: Избавляемся от темы по-умолчанию при ответах (RE:..)

Сообщение Nekstati »

Если нужно удалить поле, убирайте эти строки:

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

					<dl style="clear: left;">
						<dt><label for="subject">{L_SUBJECT}:</label></dt>
						<dd><input type="text" name="subject" id="subject" size="45" maxlength="64" tabindex="2" value="{SUBJECT}" class="inputbox autowidth" /></dd>
					</dl>
Если нужен пустой заголовок по умолчанию: Убрать RE из заголовка сообщения
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 8 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Re: Избавляемся от темы по-умолчанию при ответах (RE:..)

Сообщение Alecto »

отлично. то что нужно

Добавлено спустя 2 минуты 20 секунд:
еще маленький вопросик.
практически такая же конструкция встречается в коде. ее тоже надо удалить?

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

<noscript>
	<form method="post" action="{U_QR_ACTION}">
...
					<h2>{L_QUICKREPLY}</h2>
					<fieldset class="fields1">
						<dl style="clear: left;">
							<dt><label for="subject">{L_SUBJECT}:</label></dt>
							<dd><input type="text" name="subject" id="subject-ns" size="45" maxlength="64" tabindex="2" value="{SUBJECT}" class="inputbox autowidth" /></dd>
						</dl>
...
</noscript>
Аватара пользователя
Nekstati
Поддержка
Поддержка
Сообщения: 3365
Стаж: 17 лет 6 месяцев
Благодарил (а): 37 раз
Поблагодарили: 1454 раза

Re: Избавляемся от темы по-умолчанию при ответах (RE:..)

Сообщение Nekstati »

Как хотите. То, что находится внутри тэга <noscript>, отображается при выключенном Яваскрипте.
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 5 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: Избавляемся от темы по-умолчанию при ответах (RE:..)

Сообщение HAMMER663 »

ZhAN писал(а):Хотелось бы услышать комментарии знающих людей про негативные последствия от пустых phpbb_posts.post_subject
если включена модерация сообщений, то в модераторском разделе вместо название темы пишет что-то типа "без названия".
поэтому я бы просто заменил на это:

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

$post_data['post_subject'] =  censor_text($post_data['post_subject']);
Аватара пользователя
FladeX
Former team member
Сообщения: 1935
Стаж: 19 лет 3 месяца
Откуда: Саранск
Благодарил (а): 7 раз
Поблагодарили: 59 раз

Re: Избавляемся от темы по-умолчанию при ответах (RE:..)

Сообщение FladeX »

//
// Okay, let's do the loop, yeah come on baby let's do the loop
// and it goes like this ...
| phpBB Adept ] | Каталог форумов | генератор sitemap для форумов | форум про форумы
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 5 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: Избавляемся от темы по-умолчанию при ответах (RE:..)

Сообщение HAMMER663 »

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

Вернуться в «Для авторов (phpBB 3.0.x)»