Замена bbcode

Вопросы без привязки к версии. Установлена авточистка (2 года).
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Ответить
Vlad__
phpBB 2.0.4
Сообщения: 406
Зарегистрирован: 10.12.2016 11:06
Благодарил (а): 239 раз
Поблагодарили: 26 раз

Замена bbcode

Сообщение Vlad__ » 20.07.2017 12:27

Видео ютюба были в ббкодах [video][/video]
Как по всей базе форума заменить их на [media][/media] ?
SQL запросом пойдет?

Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 8592
Зарегистрирован: 08.08.2011 2:02
Благодарил (а): 153 раза
Поблагодарили: 2433 раза

Re: Замена bbcode

Сообщение Татьяна5 » 20.07.2017 12:30

Переименовать media в video и сделать репарсинг сообщений

Аватара пользователя
Alecto
phpBB 3.0.11
Сообщения: 2842
Зарегистрирован: 25.12.2009 0:27
Откуда: Украина! Харьков
Благодарил (а): 69 раз
Поблагодарили: 286 раз
Контактная информация:

Re: Замена bbcode

Сообщение Alecto » 11.10.2018 18:10

Прошу помощи...

Возникла необходимость избавиться от старых ббкодов на форуме, есть такие конструкции:

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

[imw][/imw]
[imw={NUMBER}]{URL}[/imw]
[im={IDENTIFIER},{NUMBER}]{URL}[/im]
[imh={NUMBER}]{URL}[/imh]
[ims={NUMBER1},{NUMBER2}]{URL}[/ims]
все надо заменить на стандартный

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

[img][/img]
каким запросом можно сделать замену?

Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 8592
Зарегистрирован: 08.08.2011 2:02
Благодарил (а): 153 раза
Поблагодарили: 2433 раза

Re: Замена bbcode

Сообщение Татьяна5 » 11.10.2018 19:17

Зависит от версии форума. Обработка ббкодов разная

Аватара пользователя
Alecto
phpBB 3.0.11
Сообщения: 2842
Зарегистрирован: 25.12.2009 0:27
Откуда: Украина! Харьков
Благодарил (а): 69 раз
Поблагодарили: 286 раз
Контактная информация:

Re: Замена bbcode

Сообщение Alecto » 11.10.2018 19:23

сегодня обновился, последний, 3.2.3

я пробовал отсюда Массовая замена бб-кода файл replace.php, но ничего не получилось (вернее скрипт показал 29к+ замен, а по факту все в базе так и осталось).
экспортировать базу, сделать замены редакторе и закачать - не вариант?

Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 8592
Зарегистрирован: 08.08.2011 2:02
Благодарил (а): 153 раза
Поблагодарили: 2433 раза

Re: Замена bbcode

Сообщение Татьяна5 » 11.10.2018 19:28

Вариант, если БД не очень большая
Заменить, потом пройтись репарсингом

Аватара пользователя
Alecto
phpBB 3.0.11
Сообщения: 2842
Зарегистрирован: 25.12.2009 0:27
Откуда: Украина! Харьков
Благодарил (а): 69 раз
Поблагодарили: 286 раз
Контактная информация:

Re: Замена bbcode

Сообщение Alecto » 11.10.2018 21:17

Татьяна5, вроде получается, спасибо.

Еще вопрос...
Обнаружил очень много "битых" ббкодов вида

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

[img][/img]
вместо

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

[img:hash][/img:hash]
их можно как-то заменой поправить? если например в битый ббкод добавить двоеточие и подставить "отфонарное" значение из любого работающего ббкода, репарсинг STK сможет исправить получившуюся конструкцию?

Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 8592
Зарегистрирован: 08.08.2011 2:02
Благодарил (а): 153 раза
Поблагодарили: 2433 раза

Re: Замена bbcode

Сообщение Татьяна5 » 11.10.2018 21:42

Это для 3.2 не битые, это как раз нормальные. Вот с хешем битые, их репарсить надо

Аватара пользователя
Alecto
phpBB 3.0.11
Сообщения: 2842
Зарегистрирован: 25.12.2009 0:27
Откуда: Украина! Харьков
Благодарил (а): 69 раз
Поблагодарили: 286 раз
Контактная информация:

Re: Замена bbcode

Сообщение Alecto » 11.10.2018 21:45

понял. сейчас попробую удалить хэш по маске.

Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 8592
Зарегистрирован: 08.08.2011 2:02
Благодарил (а): 153 раза
Поблагодарили: 2433 раза

Re: Замена bbcode

Сообщение Татьяна5 » 11.10.2018 22:06

В таком случае ббкоды станут просто текстом. В БД сейчас другой тип разметки (рядом с ббкодами, в скобках <>), её без репарсинга получить проблематично

Аватара пользователя
Alecto
phpBB 3.0.11
Сообщения: 2842
Зарегистрирован: 25.12.2009 0:27
Откуда: Украина! Харьков
Благодарил (а): 69 раз
Поблагодарили: 286 раз
Контактная информация:

Re: Замена bbcode

Сообщение Alecto » 11.10.2018 22:16

да, просто текст.
я избавился от хэша в открывающем и закрывающем кодах, теперь репарсинг?

Отправлено спустя 7 минут 36 секунд:
репарсинг ббкод по максимальному варианту оставил просто текст.
не пойму, как быть. на форуме почти 50 000 изображений, не пересохранять же каждый пост?

Отправлено спустя 6 минут 22 секунды:
у меня в базе вот это

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

[img]http&#58;//i020&#46;radikal&#46;ru/0911/5b/db6853f8825a&#46;gif[/img]
должно быть чтото типа этого

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

<IMG src=\"http://i020.radikal.ru/0911/5b/db6853f8825a.gif\">
но как получить нужный вариант, если репарсинг сообщений stk ничего не делает?????

Отправлено спустя 33 минуты 4 секунды:
вобщем получилось.
проблема была в криво работающем stk, который за один раз обрабатывал ровно половину ббкодов, т.е....
показывает 20к - сделано, ОК.
запускаю повторный репасинг, уже 10к - ОК.
5к, 2.5к... и тд с надцатого захода все ббкоды были обработаны и теперь картинки отображаются.

Аватара пользователя
Sheer
phpBB Guru
phpBB Guru
Сообщения: 10570
Зарегистрирован: 18.02.2007 19:01
Откуда: Рига, Латвия (страна-недоразумение)
Благодарил (а): 40 раз
Поблагодарили: 2277 раз

Re: Замена bbcode

Сообщение Sheer » 12.10.2018 0:05

Alecto писал(а):
11.10.2018 23:03
за один раз обрабатывал ровно половину
Ентиресна... с этого места по-подробнее пжалста. Какой вариант репарсинга использовался? Полный или выборочный по форумам?
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.

Аватара пользователя
Beer
phpBB 2.0.7a
Сообщения: 610
Зарегистрирован: 07.07.2011 1:33
Благодарил (а): 154 раза
Поблагодарили: 59 раз

Re: Замена bbcode

Сообщение Beer » 12.10.2018 0:08

Я запросами к БД все делал на локалхосте, а потом в STK на хостинге - там есть поле для ввода запроса. У меня много смайлов выводилось как текст после конвертации из SMF, т.к. там другая разметка. В общем делал так:
1. Выбираем интересующие записи для просмотра:

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

SELECT phpbb_posts.post_text, phpbb_posts.post_id, post_text from phpbb_posts WHERE (
post_text RLIKE 'ЧТО_ИЩЕМ' 
)
2. Меняем то, что нужно на требуемое:

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

UPDATE phpbb_posts SET post_text = REPLACE (post_text, 'ЧТО_ИЩЕМ', ' <E>sm64</E> ');
Пьем пиво.
Сконвертировался с SMF2 в phpBB3.2

Аватара пользователя
Alecto
phpBB 3.0.11
Сообщения: 2842
Зарегистрирован: 25.12.2009 0:27
Откуда: Украина! Харьков
Благодарил (а): 69 раз
Поблагодарили: 286 раз
Контактная информация:

Re: Замена bbcode

Сообщение Alecto » 12.10.2018 0:11

Sheer,
так делал http://prntscr.com/l51a22
Репарсинг абсолютно всех BBCode:
Beer, спасибо большое за совет.
пока справился, но возможно придется еще ббкоды чистить, воспользуюсь.

Ответить

Вернуться в «phpBB-пространство»