PSPx форум

PSPx форум (https://www.pspx.ru/forum/index.php)
-   BB-коды форума (https://www.pspx.ru/forum/forumdisplay.php?f=424)
-   -   Добавление новых ББ-кодов в панель редактирования (https://www.pspx.ru/forum/showthread.php?t=107219)

ErikPshat 05.12.2017 09:28

Добавление новых ББ-кодов в панель редактирования
 
Добавление новых ББ-кодов в панель редактирования

Допустим, в панели быстрого ответа есть иконка на Ютуб: https://www.pspx.ru/forum/cleardoc/editor/youtube.gif. Открываем картинку в новой вкладке правой кнопкой и видим наглядно путь в адресной строке: https://www.pspx.ru/forum/cleardoc/editor/youtube.gif
Видим, что иконки лежат в папке cleardoc/editor

Как добавить ББ-код на панель редактора?
Вот пример кода того же Ютуба:
Код:

<td><div class="imagebutton" id="{$editorid}_cmd_wrap0_youtube"><img src="$stylevar[imgdir_editor]/youtube.gif" width="21" height="20" alt="$vbphrase[wrap_youtube_tags]" /></div></td>
При добавлении новой кнопки, просто копируем код соседней кнопки в нужное место и редактируем:
Код:

id="{$editorid}_cmd_wrap0_youtube"
Это команда CMD для отображения опций при нажатии кнопки. Здесь редактируем это:
cmd_wrap0_youtube" - где wrap0 - без опций при нажатии на кнопку, wrap1 - открывать опции при нажатии.
Ну и на конце youtube - это название ББ-кода.

Это выставляется в админке при создании ББ-кода, но в панель редактирования оно само не прописывается. Нужно учесть, что панели ответа есть в нескольких шаблонах - при быстром ответе, при редактировании чужого сообщения (да, да, там своя панель), при редактировании в расширенном режиме, при отправке сообщений через Личку, при написании сообщений в профиле.

Дальше:
Код:

img src="$stylevar[imgdir_editor]/youtube.gif"
Это иконка в редакторе панели ответа. Собсно, $stylevar[imgdir_editor] - это путь cleardoc/editor, где лежат стандартные иконки панели редактирования.

Далее:
Код:

alt="$vbphrase[wrap_youtube_tags]"
alt - это всегда обязательно прописывается к картинкам, означает всплывающую подсказку. Даже если нет подсказок, то всё равно прописывается, просто с пустыми кавычками alt="". Это обязательный атрибут alt, предназначен, если картинка не доступна на хосте, то вместо неё должно выводиться сообщение типа "Картинка недоступна" и в этом настоящее предназначение этого атрибута, хотя на самом деле за всплывающие подсказки отвечает атрибут title="Всплывающая подсказка".

$vbphrase[wrap_youtube_tags] - это $vbphrase означает языковые фразы. В квадратных скобках [wrap_youtube_tags] пишется любое уникальное название, которое потом заносится в "Языки и фразы" в админке, как новая фраза. И эта фраза потом будет выводится во всплывающей подсказке.

ErikPshat 05.12.2017 10:09

Цитата:

Сообщение от ErikPshat (Сообщение 1123586)
$stylevar[imgdir_editor]/youtube.gif

Сорри, поправочка, $stylevar[imgdir_editor] - это cleardoc/editor, а не images/editor

В шапке менять не буду примеры, пусть будет видно, как можно допустить ошибку!!!

Сейчас в шаблоне showthread_quickreply поменял путь images/editor на переменную $stylevar[imgdir_editor] и в профиле сразу проявился косяк, вся панель ответа развалилась.

in1975 05.12.2017 11:14

Цитата:

Сообщение от ErikPshat (Сообщение 1123595)
$stylevar

Давай теперь правильные исходники, а то выше в 2х местах у тебя ссылка на эту переменную.

ErikPshat 06.12.2017 03:40

in1975, я же в последующем сообщении написал поправочку и там разъяснял что к чему.

Короче, залил 9 картинок в свою родную папку cleardoc/editor
И во всех шаблонах исправил путь ко всем картинкам в редакторе сообщений на $stylevar[imgdir_editor] по стандарту, как положено.

Это просто был мой косяк. Ранее я почему-то решил картинки к ББ-кодам заливать в папку images/editor. Это были 9 картинок, которые я ранее добавлял в редактор к новым ББ-кодам. Впоследствии, более новые иконки к ББ-кодам, я заливал правильно в папку cleardoc/editor.

Ну и теперь получается, что в папке images/editor лежат 9 иконок как мусор.
Если будет возможность, их оттуда надо будет удалить: hr.gif, move.gif, noparse.gif, off.gif, spoiler.gif, strike.gif, swf.gif, youtres.gif, youtube.gif.

Yoti 11.09.2019 12:28

Есть вариант тег [HIDE] добавить? Только чтобы не блоком типа
Цитата:

Для просмотра текста нужна регистрация!
а просто аналогичной строчкой "Для просмотра текста нужна регистрация!".

ErikPshat 11.09.2019 15:56

Цитата:

Сообщение от Yoti (Сообщение 1192948)
Есть вариант тег [HIDE] добавить?

Да можно. Я хотел как-то сделать его, да потом подумал, типа зачем лишние ненужные коды делать :)
  • Есть вариант сделать по разным критериям, как на хакерских сайтах, например [HIDE="25"] - "Для просмотра скрытого сообщения, у вас должно быть не менее 25 сообщений"
Просто подумал, как я там хотел что-то скачать приватное, это сильно бесит, у меня 1 сообщение, а тут пилиять такие требования.
Можно сделать скрытие/открытие/просмотр по группам, можно, пока не скажешь спасибо и т.п.

P.S. А есть пример на сайте, как именно ты хочешь?

Yoti 12.09.2019 12:54

Есть пример в том плане, что люди читают мои инструкции здесь, а обсуждают их везде вокруг. Хочу спрятать внешние ссылки. А не блоком скрытие, чтобы разметка не разъезжалась.

ErikPshat 15.09.2019 08:46

Есть пример в том плане, Для просмотра скрытого текста у вас должно быть не менее 28000 сообщений. что люди читают мои инструкции здесь, а обсуждают их везде вокруг.

in1975 15.09.2019 09:11

ErikPshat, Не скрылось. У меня вроде меньше 28 тыс. :)

ErikPshat 15.09.2019 09:15

in1975, ну вот я сижу и думаю, в чём проблема, где-то синтаксис не тот. Вот скрипт условия:
Код:

<if condition="$bbuserinfo['posts'] < {option}">

<span class="normal">Для просмотра скрытого текста необходимо иметь не менее {option} сообщений</span>

<else />

<span class="normal">{param}</span>

</if>


in1975 15.09.2019 09:31

Цитата:

Сообщение от ErikPshat (Сообщение 1193238)
<else />

разве такой синтаксис у else ?

ErikPshat 15.09.2019 09:36

in1975, ну вроде такой, только вот он как раз и не работает :)
Проинспектируй тот пост, там код раскладывается правильно.

in1975 15.09.2019 10:00

ErikPshat, ну я вижу только:

Код:

Есть пример в том плане, [HIDE]что люди читают мои инструкции здесь, а обсуждают их везде вокруг.[/HIDE]

ErikPshat 15.09.2019 10:08

in1975, странно ты видишь :)
Можешь просто пройтись "Поиск в шаблонах" на ключевое слово <else />
Увидишь кучу примеров.

https://funkyimg.com/i/2X1uB.png

in1975 15.09.2019 11:03

ErikPshat, вижу только:
Код:

<else>
...
</else>

А у тебя как?

сейчас там:
Код:

<div id="post_message_1193236" style="margin:10px;">Есть пример в том плане, <if condition="$bbuserinfo[userid]">
<span>что люди читают мои инструкции здесь, а обсуждают их везде вокруг.</span>
<else>
<span>Для просмотра скрытого текста нужна регистрация.</span>
</else></if></div>

</if> должен там заканчиваться?

https://www.codeproject.com/Question...n-in-HTML-Tags

ErikPshat 15.09.2019 11:13

Цитата:

Сообщение от in1975 (Сообщение 1193245)
А у тебя как?

Ну и всё правильно. В шаблонах и у меня в ББ-коде написано как я выше код написал, через <else />, а при инспектировании код сам на автомате раскрывается как надо и закрывается в конце. Просто я так думаю, что из ББ-кода код загружается в сообщение чуть позже, поэтому условие не срабатывает. А так код верный, он везде во всех шаблонах используется именно так.

ErikPshat 15.09.2019 11:18

Цитата:

Сообщение от in1975 (Сообщение 1193245)
</if> должен там заканчиваться?

Конечно. Ну ты зайди в админку через управление. Смотри там "Стили и шаблоны", открой "Поиск в шаблонах" и введи в первое же окошко <else />
В первом же шаблоне смотри код, щёлкни по шаблону дважды
Код:

<if condition="$navbar">$navbar<else /><br /><br /></if>

ErikPshat 15.09.2019 11:25

Вот, я уже всё перепробовал, 100 всевозможных комбинаций :)
Сейчас у меня там стоит так:
Код:

<if condition="$bbuserinfo['posts'] < {option}">
          <span>Для просмотра скрытого текста у вас должно быть не менее {option} сообщений.</span>
<else />
          <span>{param}</span>
</if>

Это код с опциями, которые вводятся во всплывающем окне и попадают в кавычки [HIDE="28000"]
Эта же цифра на количество сообщений попадает в коде вместо {option}
А код {param} - это тот текст, который мы обрамляем ББ-кодом HIDE для скрытия, если у юзера меньше указанных сообщений.

ErikPshat 15.09.2019 12:01

Что за бред, все остальные ББ-коды работают, там их штук 20, а этот нет.
Нашёл ещё такую конструкцию, видел и на других сайтах, но у нас на форуме впервые такое вижу: http://vb5support.com/developers/template_syntax
Код:

<vb:if condition="$show['member']">
    <b>Welcome Member.</b>
<vb:elseif condition="$show['guest]" />
    <b>Welcome Guest</b>
<vb:else />
    <b>Welcome</b>
</vb:if>

Ещё советы по использованию здесь от профи: https://vbsupport.org/forum/showpost.php?p=419595

Yoti 16.09.2019 00:01

Цитата:

Сообщение от ErikPshat (Сообщение 1193236)
Есть пример в том плане, Для просмотра скрытого текста у вас должно быть не менее 28000 сообщений. что люди читают мои инструкции здесь, а обсуждают их везде вокруг.

Вот так у меня, вместо скрытия — вставка.


Текущее время: 04:52. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2025, vBulletin Solutions, Inc. Перевод: zCarot
PSPx Forum - Сообщество фанатов игровых консолей.