Как закрыть BB код code, php, html от гостей?

Wmboard

Пользователь
Регистрация
01.01.70
Сообщения
9.274
Реакции
2.665
Баллы
28
Адрес
На wmboard
Вопрос кагбэ в заголовке :)
Тема родилась тут: https://lumtu.com/rabota-foruma-vebmasterov/1281-bagi-i-oshibki-v-rabote-foruma-4.html#post70261

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

Во первых лишний мусор в посте уменьшает ценность контента с точки зрения сео, скажу вам точно, как адепт этого учения :D

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

Но это все лирика.

В итоге, ни фига не работают обычные условия с этими ББ кодами. Или кажется, что работают, а потом не работают (например если на следующий день зайти). Или сразу не работают. Или то работают, то не работают.
Экспериментировал в разное время много.
Например:

Код:
<if condition="$show['guest']">
Тут фраза для гостя
<else /> содержимое тега CODE...
</if>

или наоборот, для мембера код, для гостя текст с оформлением.

Другой пример

Код:
<if condition="$bbuserinfo['userid'] == 0">Текст для гостя
<else /> содержимое тега
</if>

Еще бесполезный вариант

Код:
<if condition="$show['member']">
Тут код
<else />
<if condition="$show['guest']">
Регистрируйся и все увидишь
</if></if>

Не работают условия хоть с использованием <else />, хоть без него.

Эти условия

Код:
<if condition="in_array($bbuserinfo[usergroupid], array(тут группы через запятую))"></if>

Код:
<if condition="is_member_of($vbulletin->userinfo, тут группы через запятую)"></if>

Тоже не работают :pardon:

Но у буржуев все работает четко на их форуме. Любопытно каким образом.

Есть у кого какие идеи? :crazy:
 

Kworke

Пользователь
Регистрация
27.04.16
Сообщения
43
Реакции
6
Баллы
3
Адрес
RU
Сейчас на форуме код виден всем :crazy:
Отменили скрытие?
 

YURSHAT

Пользователь
Регистрация
20.07.15
Сообщения
78
Реакции
37
Баллы
3
Адрес
Харьков
Но у буржуев все работает четко на их форуме. Любопытно каким образом.
Правкой скриптов.
Если требуется скрыть только содержимое блока
Код:
, то есть сам код :), то можно так:
Открыть скрипт [B]class_bbcode.php[/B]
Найти функцию [B]handle_bbcode_code[/B]. В этой функции, перед строкой
[CODE]if ($this->printable)
добавить следующее:
Код:
if ($vbulletin->userinfo['userid'] == 0)
{	$code = $vbphrase['phrase_for_guest'];
}


А можно ещё для гостей и упрощённый шаблончик выводить:
найти:
Код:
$template = 'bbcode_code';
заменить на:
Код:
if ($vbulletin->userinfo['userid'] > 0)
{	$template = 'bbcode_code';
}
else
{	$template = 'bbcode_code_printable';
}



ЗЫ. Veter, сделай больше margin для блока кода,
 
Последнее редактирование:

Wmboard

Пользователь
Регистрация
01.01.70
Сообщения
9.274
Реакции
2.665
Баллы
28
Адрес
На wmboard
Семен Семеныч :) Правкой скрипта BBкод. Удивительно рядом :)
Казалось бы обычный шаблон, и в принципе обычный BB код. Будем сейчас пробовать.

phrase_for_guest я так понимаю надо создать перед всем этим :)

$template = 'bbcode_code';
Это как я понимаю нетронутый исходник шаблона bbcode_code

А этот шаблон bbcode_code_printable выводим гостям, предварительно его изменив. У меня принт страницы вообще отключены. Но как выглядит внешне мне нравится :)


ЗЫ. Veter, сделай больше margin для блока кода,
А сколько надо? Там дефолтный 0 стоит в шаблоне.
 

YURSHAT

Пользователь
Регистрация
20.07.15
Сообщения
78
Реакции
37
Баллы
3
Адрес
Харьков

Wmboard

Пользователь
Регистрация
01.01.70
Сообщения
9.274
Реакции
2.665
Баллы
28
Адрес
На wmboard
Все сделал, пока вроде работает :D Будем посмотреть.

10 поставил. Только этот маргин разве на эти отступы влияет?

Добавлено через 4 минуты
Ни фига не на этот. Вернул 0. Надо посмотреть внимательней.

Добавлено через 7 минут
Ну что :)
Поработало недолго :D
Гостем сперва не видел, спустя некоторое время вижу. Даже другой браузер взял.

Добавлено через 4 минуты
Гости не могут видеть содержимое блока.

Теперь мне показывает :D
Эксперимент не удался видимо :(
 

Wmboard

Пользователь
Регистрация
01.01.70
Сообщения
9.274
Реакции
2.665
Баллы
28
Адрес
На wmboard
В старой вижу код.
В этой ни хрена не вижу :)

Добавлено через 3 минуты
Сейчас вот пост с кодом отредактирую, буду видеть. Где то я у буржуев читал о кэшировании. Вобла же кэширует посты.

Добавлено через 1 минуту
Вот первый пост, нажал правка, сохранить. Вижу. Пост
YURSHAT https://lumtu.com/vbulletin/7756-kak-zakryt-bb-kod-code-php-html-ot-gostei.html#post70317 вижу как гость :)

Добавлено через 4 минуты
Эту тему смотрю гостем.
Первый пост, что редактировал вижу гостем, пост
YURSHATа, не вижу https://lumtu.com/vbulletin/7756-kak-zakryt-bb-kod-code-php-html-ot-gostei.html#post70317 :D

Вот такая ерундистика была и с моими экспериментами.

Добавлено через 9 минут
Перестроил кэш сообщений на форуме.
Вижу все. И гостем и юзером :)
 

Льюви

Пользователь
Регистрация
22.05.12
Сообщения
1.216
Реакции
996
Баллы
28
Адрес
Харьков
Вижу все. И гостем и юзером
гость в старой теме:



в этой теме вижу код...
 

Wmboard

Пользователь
Регистрация
01.01.70
Сообщения
9.274
Реакции
2.665
Баллы
28
Адрес
На wmboard

Статистика форума

Темы
200.483
Сообщения
380.307
Пользователи
327.890
Новый пользователь
рикитики
Сверху Снизу