Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#1 2013-05-09 17:53:19

qwas
Участник
Откуда Kyyiv
Зарегистрирован: 2012-05-16
Сообщений: 229
Рейтинг :   
Сайт

Авто тег <br>

Доброго времени суток. У меня такой вопрос:
При добавлении или редактировании новости в том месте, где автор жмёт "ENTER", то есть делает перенос на новую строку (абзац), при выводе появляется тег <br>. Подскажите, в каком файле можно найти и изменить этот появляющийся тег? И можно ли?
Моя цель: заменить вывод <br>  на </p><p>. Таким образом текст новости будет поделён на параграфы, и при помощи СSS можно сделать смещение первой строки каждого параграфа:

.post p{text-indent: 20px;}

Так текст каждого абзаца(параграфа) в новости будет выделен смещением первой строки, и визуально мог бы соответствовать элементарным типографическим правилам.
Конечно, можно натыкать в каждом нужном месте    , но это не выход, если работаешь с большими объёмами информации. Более того тег <br>  не является валидным, в отличие от <br />

Не в сети

#2 2013-05-09 18:49:36

easmik
VIP забанил этого пользователя.
Зарегистрирован: 2011-02-01
Сообщений: 1,031
Рейтинг :   37 

Re: Авто тег <br>

qwas, для параграфа есть отдельный тег. Перенос строки через тег <p> будет не корректен

Не в сети

#3 2013-05-09 19:16:01

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: Авто тег <br>

Если ты отключишь автоформатирование в новостях, то при нажатии enter - не будет добавляться <br/> - в таком случае ты сможешь на html полностью настраивать вид страницы.

Не в сети

#4 2013-05-09 19:27:14

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Авто тег <br>

qwas, надо не забыть тогда в начало новости запихнуть <p>, а в конец - </p>

engine/includes/classes/parse.class.php, функция htmlformatter, строка ~413:

		$content	=	preg_replace('/\n/', "<br />", $content);

Можешь попробовать заменить на:

		$content	=	preg_replace('/\n/', "</p><p>", $content);

а ниже

		return $content;

заменить на:

		return "<p>".$content."</p>";

Не в сети

#5 2013-05-10 09:15:30

qwas
Участник
Откуда Kyyiv
Зарегистрирован: 2012-05-16
Сообщений: 229
Рейтинг :   
Сайт

Re: Авто тег <br>

vitaly пишет:

qwas, надо не забыть тогда в начало новости запихнуть <p>, а в конец - </p>

Но текст новости уже выводится меж тегов <p></p>
Спасибо за ответ. Сейчас попробую

Не в сети

#6 2013-05-10 09:41:52

qwas
Участник
Откуда Kyyiv
Зарегистрирован: 2012-05-16
Сообщений: 229
Рейтинг :   
Сайт

Re: Авто тег <br>

Спасибо, всё работает smile
Здесь ничего не менял:

return $content;

До:
beforex.th.jpg
После:
afterqh.th.jpg

Теперь главное следить, чтобы не было лишних нажатий ENTER. Иначе пустые параграфы появятся big_smile

Не в сети

#7 2013-05-10 09:54:48

qwas
Участник
Откуда Kyyiv
Зарегистрирован: 2012-05-16
Сообщений: 229
Рейтинг :   
Сайт

Re: Авто тег <br>

Поправка: в engine/includes/classes/parse.class.php  не менял

return $content;

потому что в моём шаблоне news.full.tpl пост уже заключён в теги <p></p>

        <p> 
			{short-story}{full-story}
			[full-link]Читать полностью »[/full-link]
		</p>

Изменено qwas (2013-05-10 09:56:57)

Не в сети

#8 2013-05-10 10:47:43

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Авто тег <br>

qwas пишет:

Теперь главное следить, чтобы не было лишних нажатий ENTER. Иначе пустые параграфы появятся big_smile

Попробуй так:

  $content    =    preg_replace("/\n+/", "</p><p>", $content);

Не в сети

#9 2013-05-10 11:06:28

qwas
Участник
Откуда Kyyiv
Зарегистрирован: 2012-05-16
Сообщений: 229
Рейтинг :   
Сайт

Re: Авто тег <br>

$content    =    preg_replace("/\n+/", "</p><p>", $content);

Не помогло. Лиса выводит единичный <p> </p> (с пробелом, вне зависимости от кол-ва нажатий ENTER)
И ещё: теперь при ручном вписывании в новость тега <br /> при выводе он игнорируется. Приравняв нажатие ENTER к новому параграфу, мы, получается, убрали единственную возможность использования <br /> big_smile

Не в сети

#10 2013-05-10 11:09:00

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Авто тег <br>

qwas, а BB код [br] работает?

Не в сети

#11 2013-05-10 11:17:13

qwas
Участник
Откуда Kyyiv
Зарегистрирован: 2012-05-16
Сообщений: 229
Рейтинг :   
Сайт

Re: Авто тег <br>

О, да! Забыл о его существовании smile Только теперь его желательно использовать или в конце предыдущего параграфа (дважды), или в начале нового (единожды). Иначе он тоже попадёт в отдельных параграф smile

Не в сети

#12 2013-05-10 12:44:08

qwas
Участник
Откуда Kyyiv
Зарегистрирован: 2012-05-16
Сообщений: 229
Рейтинг :   
Сайт

Re: Авто тег <br>

Прикольно так... Теперь с моего аккаунта кто-то левый пишет, супер!

Пардон, ложная тревога. Друг заходил отписывал big_smile

Изменено qwas (2013-05-10 14:54:38)

Не в сети

Подвал раздела

Работает на FluxBB