[FAQ] Пользовательские BBCode

Темы по наиболее часто задаваемым вопросам без привязки к версии phpBB. Читать в первую очередь!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB 3.1.x/3.2.x | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 14194
Зарегистрирован: 12.05.2006 18:16
Откуда: Красноярск
Благодарил (а): 338 раз
Поблагодарили: 1461 раз
Контактная информация:

[FAQ] Пользовательские BBCode

Сообщение rxu » 20.10.2007 6:52

База данных пользовательских BBCode на официальном сайте phpBB.

Вот ссылка на тему на официальном сайте, где приведены наиболее популярные пользовательские BBCode для phpBB3: Особенно прошу обратить внимание на последний, очень простой и без использования яваскрипта.

Некоторые другие BBCode приведены в этой статье в базе знаний (на английском).
Большая коллекция пользовательских BBCode
Например, вставка изображений в поток текста


*****
RuTube.ru
Video.Mail.Ru (Хотя таблицу оттуда хорошо бы выкинуть)
Google map

*****
От пользователя mau
Для изменения порядка BBCode установите мод Custom BBCode Sorting. (только для 3.0.х)
Последний раз редактировалось rxu 20.10.2012 10:45, всего редактировалось 5 раз.
Изображение

gLs
phpBB 1.0.0
Сообщения: 8
Зарегистрирован: 31.10.2007 15:20

Сообщение gLs » 13.11.2007 23:08

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

Самый популярный сервис для обмена видеофайлами теперь переведен на русский язык. Русская версия YouTube имеет локализованную домашнюю страницу и систему поиска. На русский язык переведены разделы «Рекомендуем посмотреть», «В центре внимания», есть возможность установки окна YouTube на сайте пользователя. Кроме этого, естественно, пользователи YouTube.ru смогут общаться между собой на родном языке.
Нужно под нас редактировать http://ru.youtube.com/

Gisher
phpBB 2.0.12
Сообщения: 857
Зарегистрирован: 04.10.2006 7:50
Благодарил (а): 11 раз
Поблагодарили: 13 раз

Сообщение Gisher » 16.12.2007 4:16

на счёт тега Youtube посоветую ставить следющий код, так как другие коды могут не показывать в звисимости от того, ссылка с www или без него
BBCode:

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

[youtube]{TEXT}watch?v={TEXT1}[/youtube]
HTML:

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

<object width="425" height="350"><param name="movie" value="{TEXT}v/{TEXT1}"></param><param name="wmode" value="transparent"></param><embed src="{TEXT}v/{TEXT1}" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object>

Аватара пользователя
Merlin
phpBB 1.4.2
Сообщения: 54
Зарегистрирован: 06.03.2005 6:24
Откуда: odessa.ua
Благодарил (а): 1 раз
Поблагодарили: 1 раз
Контактная информация:

Сообщение Merlin » 18.12.2007 10:20

Вопрос возник. Имеются пользовательские коды в 2.0.22 - [center][/center] и [mod][/mod] - если я их добавлю в 3.0.0 ДО конвертации, будут ли они пропарсены?
Если спросят: "Куда?", отвечай: "В никуда!",
Это правда, и в этом беда!

Thanx
phpBB 2.0.2
Сообщения: 334
Зарегистрирован: 27.12.2005 17:37
Благодарил (а): 16 раз
Контактная информация:

Сообщение Thanx » 18.12.2007 10:52

Тоже вопрос. Можно ли из всех BBCode отключить только [img]?

Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 14194
Зарегистрирован: 12.05.2006 18:16
Откуда: Красноярск
Благодарил (а): 338 раз
Поблагодарили: 1461 раз
Контактная информация:

Сообщение rxu » 18.12.2007 16:33

Merlin
Должны.

Thanx
Нет.
Изображение

Pirat2007
phpBB 1.0.0
Сообщения: 8
Зарегистрирован: 14.12.2007 16:16

Сообщение Pirat2007 » 20.12.2007 20:02

Здесь есть спойлер, но там просто текст на черном фоне, а я хочу хочу, чтоб было что-то типа кнопочки. Щелкнул по ней и спойлер раскрылся.

Подскажите: есть такие моды или еще что-нибудь?

Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 14194
Зарегистрирован: 12.05.2006 18:16
Откуда: Красноярск
Благодарил (а): 338 раз
Поблагодарили: 1461 раз
Контактная информация:

Сообщение rxu » 25.12.2007 16:10

Есть много разных в теме на оффсайте. Вот такой, например.
Изображение

Pirat2007
phpBB 1.0.0
Сообщения: 8
Зарегистрирован: 14.12.2007 16:16

Сообщение Pirat2007 » 27.12.2007 19:44

rxu

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

Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 14194
Зарегистрирован: 12.05.2006 18:16
Откуда: Красноярск
Благодарил (а): 338 раз
Поблагодарили: 1461 раз
Контактная информация:

Сообщение rxu » 27.12.2007 20:38

Pirat2007
Попробуйте вот так (вариация приведенного выше спойлера, но принцип можно применить и на других).

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

[spoiler={TEXT1}]{TEXT2}[/spoiler]

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

<div><span onClick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') {  this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerHTML = '<button type=\'button\' onClick=\'return false;\'>{TEXT1}</button>'; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerHTML = '<button type=\'button\' onClick=\'return false;\'>{TEXT1}</button>'; }" /><b></b><button type=\'button\' onClick="return false;">{TEXT1}</button></span></div><div><div style="display: none; border: 1px dashed gray; padding: 1px;">{TEXT2}</div></div>
Применение:
Название спойлера 
Содержимое спойлера
Изображение

Аватара пользователя
Shock13666
phpBB 1.4.4
Сообщения: 176
Зарегистрирован: 19.11.2007 17:51
Откуда: Киев
Контактная информация:

Сообщение Shock13666 » 23.01.2008 20:10

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

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

<div class="spoiler" onclick="
if (this.className='spoiler')
    {this.className='spoiler-selected'}
    else
    {this.className='spoiler';}
">
 <span class="button">Видимый текст</span>
 <div class="hidden">
  Спрятанный текст
 </div>
</div>
 
Дальше прописываем стили:

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

div.spoiler div.hidden{
 display:none;
}
div.spoiler-selected div.hidden{
 display:block;
}
Правда это не совсем правильно решение. Лучше онКлик повесить на внутренний спан и через parent.node передавать отцовскому диву класс. Тогда он будет открыватся-скрыватся только при нажатии на постоянный текст. Но так как я в жс нубак полный, то так сходу и без инструкции это не сделаю

Навскидку, как то так:

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

<div class="spoiler">
 <span class="button" onclick="
if (this.parentNode.className='spoiler')
    {this.parentNode.className='spoiler-selected'}
    else
    {this.parentNode.className='spoiler';}
">Видимый текст</span>
 <div class="hidden">
  Спрятанный текст
 </div>
</div> 
Музыка - как вино. Некачественная попса, со временем, превращается в уксус.. Рок же только обретает свой истинный вкус..
Я не нацист. Но когда кто нибудь осмелится высказать криво о моей стране я прихожу в ярость.
Немножко знаю xHTML, CSS, слышал про JavaScript, PHP. Уже год использую и стараюсь понять, как устроен phpBB.
[ Mozilla Firefox User ] [ Web Dev panel for FF ] [ xHTML 1.0 Strict ] [ Valid CSS 2.1 ] [ Да, я маньяк! ] [ Я ВКонтакте! ]

Gisher
phpBB 2.0.12
Сообщения: 857
Зарегистрирован: 04.10.2006 7:50
Благодарил (а): 11 раз
Поблагодарили: 13 раз

Сообщение Gisher » 28.01.2008 9:24

этот код спойлера принимает смайлики и теги форума, в частности тег code

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

[spoiler]{TEXT}[/spoiler]

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

<div style="margin:20px; margin-top:5px"><div class="quotetitle"><b>Текст:</b> <input type="button" value="Показать" style="width:65px;font-size:10px;margin:0px;padding:0px;" onclick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = '';      this.innerText = ''; this.value = 'Скрыть'; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = 'Показать'; }" /></div><div class="quotecontent"><div style="display: none;">{TEXT}</div></div></div>
Добавлено спустя 5 минут 11 секунд:

пробовал создать тен для модераторов [mod][/mod]

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

<!-- IF U_MCP --><br /><span class="row3"><b>Модераторам:</b> {TEXT}</span><br /><!-- ENDIF -->
, но текст виден даже гостям... есть идеи?

Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 14194
Зарегистрирован: 12.05.2006 18:16
Откуда: Красноярск
Благодарил (а): 338 раз
Поблагодарили: 1461 раз
Контактная информация:

Сообщение rxu » 28.01.2008 11:38

Gisher
bbCode не обрабатываются движком шаблонов, поэтому никакие условные выражения вроде
Gisher писал(а):<!-- IF U_MCP -->
и т.п. работать не будут.
По той же причине реализация ббкодов, доступных только определенным пользователям, стандартным способом недостижима (насколько мне известно, по крайней мере).
Изображение

Аватара пользователя
mixer
phpBB 1.4.0
Сообщения: 38
Зарегистрирован: 07.07.2005 6:29
Откуда: Хабаровск
Поблагодарили: 1 раз
Контактная информация:

Сообщение mixer » 06.02.2008 16:58

Слово в Wikipedia.ru

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

[wiki]{TEXT}[/wiki]
<a href="http://ru.wikipedia.org/wiki/{TEXT}">{TEXT}</a>

playa
phpBB 1.0.0
Сообщения: 3
Зарегистрирован: 04.10.2007 13:06

Сообщение playa » 05.03.2008 17:54

BBcode SPOILER

Использование BBCode:

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

[SPOILER {TEXT1}]{TEXT2}[/SPOILER]
Замена HTML:

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

<div style="margin:20px; margin-top:5px"><div style="font: 11px Verdana, Geneva, Lucida, 'Lucida Grande'; margin-bottom:2px"><b>{TEXT1}:</b> <input type="button" value="Показать" style="width:60px;font-size:10px;margin:0px;padding:0px;" onclick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = '';      this.innerText = ''; this.value = 'Скрыть'; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = 'Показать'; }" /></div><div style="min-height: 20px; background-color: #EDE8E0; margin: 0px; padding: 6px; border: 1px inset;"><div style="display: none;">{TEXT2}</div></div></div>

Перенесено из форума FAQ (phpBB 3.0.x) в форум FAQ 20.03.2015 19:57 модератором Татьяна5

Ответить

Вернуться в «FAQ»