X   Сообщение сайта
(Сообщение закроется через 2 секунды)

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Собственный bb-код: тег блюпоста, Как сделать?
Гость_Frey_*
сообщение 2010-10-05, 23:32
Сообщение #1



Гости





Подскажите, как сделать собственный bb-код на основе quote, но с собственным дизайном? Конкретно хочу сделать тег блю-поста, на примере того, что есть для vbulletin: http://vbsupport.org/forum/showthread.php?t=25606, но не знаю, куда воткнуть код стиля и вообще какие файлы править :rolleyes: Если несложно, расскажите поэтапно?
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2010-10-06, 1:38
Сообщение #2
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


Вот посмотрите, совсем рядом есть тема о том, как вообще сделать тег спойлера. Возьмите его код за основу и действуйте. Если что будет не ясно - спрашивайте.

http://forum.eleanor-cms.ru/index.php?showtopic=2099
Перейти в начало страницы
+Цитировать сообщение
Гость_Frey_*
сообщение 2010-10-06, 12:29
Сообщение #3



Гости





Спасибо, воспользовался спойлером в качестве основы и сделал все, как и хотел :) Возможно, кому-то пригодится, цитата Loader'а с моими правками под мои же цели:


Цитата (Loader @ 2010-10-04, 23:41)
Итак, 3-й вариант спойлера: (всё-таки я его добил)

Огромное спасибо Phoenix84 ! Делается он так:

1) Заходим в templates/Ваша-тема/style/ и в конец любого файла .css дописываем следующее:


/* ============        БЛЮПОСТ     ============ */
.spoiler-wrap {
    width: 95%;
    margin: 6px auto;
    clear: both;
    background: #333;
    border: solid #000;
    border-width: 1px 1px 1px 2px;
    font: 12px Verdana,Arial,sans-serif;
     border-radius: 4px;
     -webkit-border-radius: 4px;
     -moz-border-radius: 4px; 
}
.spoiler-head {
    font-weight: bold;
    color: #0099FF;
    background: #333;
    padding: 5px;
    font-size: 11px;
}
.spoiler-body {
    display: block;
    border: none;
    background: #333;
    padding: 0 5px;
    color: #0099FF;

}

.clickable {
    cursor: pointer;
}

.folded {
    color: #0099FF;
    display: block;
    background: transparent url(/images/blizz-post.gif) no-repeat left center;
}

.unfolded {
    color: #0099FF;
    display: block;
    background: transparent url(/images/blizz-post.gif) no-repeat left center;
}
/* ============ БЛЮПОСТ конец ============ */



2) Далее в файл index.php Вашей темы добавляем перед тэгом </body> такой код:

<!-- Блюпост -->
<SCRIPT type=text/javascript>
function initSpoilers(context)
{
var context = context || 'body';
$('div.spoiler-head', $(context))
.click(function(){
$(this).toggleClass('unfolded');
$(this).next('div.spoiler-body').slideToggle('fast');
})
;
}

$(document).ready(function(){
initSpoilers('body');
});
</SCRIPT>
<!-- Блюпост конец -->


3) В файл /classes/others/class_ownbb.php в конец, но перед "?>" добавляем следующий код:

# Блюпост
class OwnBbCode_blizz extends BaseOwnBbCode
{
public function PreDisplay($tag,$params,$content,$canuse)
{
if(!$canuse)
return $this->RestrictDisplay();
$params=$params ? Strings::ParseParams($params) : array();
if(isset($params['noparse']))
{
unset($params['noparse']);
return parent::PreEdit($tag,$params,$content,true);
}
If (!isset($params['name'])) {
$params['name']='Blizzard пишет:';}
return '<div class="spoiler-wrap"><div class="spoiler-head folded clickable"><span style="padding-left:29px">'.$params['name'].'</span></div><div class="spoiler-body">'.$content.'</div></div>';
}
}
# Блюпост конец


4) В папку /images/ закидываем файл blizz-icon.gif (прикреплен ниже)

5) В Админке сайта добавляем свой ББ-код blizz

Пользуемся! На этом всё. Можно использовать просто как [blizz] текст, рисунок которые надо скрыть [/blizz] , а можно задавать спойлеру имя таким образом: [blizzname="заголовок блюпоста"] блюпост [/blizz]


Прикрепляю скрины того что получилось:


Иконка для поста:

Спасибо Лоадеру и Фениксу84 =) И Александру, конечно)
Перейти в начало страницы
+Цитировать сообщение
Loader
сообщение 2010-10-06, 14:42
Сообщение #4
Профессионал
Иконка группы

Группа: Eleanor user
Сообщений: 1 161
Регистрация: 2010-04-19

Репутация:   нет  
Всего: нет


Чёт я не пойму - он как спойлер разъезжается что-ли? Пример можешь показать в работе?
Перейти в начало страницы
+Цитировать сообщение
Гость_Frey_*
сообщение 2010-10-06, 18:17
Сообщение #5



Гости





По умолчанию раскрыт, но может и сворачиваться/разворачиваться как спойлер. По сути - это и есть ваш спойлер, только стилизованный под посты представителей Blizzard и снабженный соответствующей иконкой вместо + и - =)
ulduar.su
Перейти в начало страницы
+Цитировать сообщение
KeSSLeR
сообщение 2010-10-20, 4:29
Сообщение #6
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 483
Регистрация: 2010-02-11
Версия системы: RC5

Репутация:   нет  
Всего: нет


В свое время сделал блюпосты на основе тега цитаты. Помоему удобнее и намного меньше гемора..

Добавлено через 2 минут, 7 секунд:

При желании можно прикрутить ссылку на источник поста итд.

з.ы. [blizzname="тратата"]text[/blizz] нерабит
Перейти в начало страницы
+Цитировать сообщение
KeSSLeR
сообщение 2010-10-20, 8:59
Сообщение #7
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 483
Регистрация: 2010-02-11
Версия системы: RC5

Репутация:   нет  
Всего: нет


з.ы. [blizz name="тратата"]text[/blizz] рабит))
Перейти в начало страницы
+Цитировать сообщение

Ответить в данную темуНачать новую тему
0 чел. читают эту тему (гостей: 0, скрытых пользователей: 0)
Пользователей: 0

 
RSS Текстовая версия 0.0339 сек.    11 запросов    GZIP включен    Сейчас: 2024-04-16, 8:07