Массовая замена бб-кода

Проблемы с установкой или работой phpBB 3.0.x? Получите помощь здесь!
С 1 января 2017 года phpBB Group прекращает поддержку phpBB версии 3.0.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.0 до 1 июля 2017 года.
Подробнее: Окончание поддержки phpBB 3.0.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Booker
phpBB 2.0.7a
Сообщения: 627
Стаж: 15 лет 3 месяца
Благодарил (а): 165 раз
Поблагодарили: 21 раз

Массовая замена бб-кода

Сообщение Booker »

Возможно ли "одним кликом" заменить на форуме один бб-код другим?
Суть в том, что мне нужно удалить бб-код ютуба и заменить его другим, но при этом чтобы в старых сообщениях все коды, обрамлённые старым бб-кодом видео, одновременно обернулись кодом новым, ибо править вручную нужно тысячи постов, что нереально.
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 13159
Стаж: 15 лет 1 месяц
Благодарил (а): 236 раз
Поблагодарили: 3750 раз

Re: Массовая замена бб-кода

Сообщение Татьяна5 »

Убрать для ютуба галочку "Показывать на странице ответа", а сам ббкод оставить
Booker
phpBB 2.0.7a
Сообщения: 627
Стаж: 15 лет 3 месяца
Благодарил (а): 165 раз
Поблагодарили: 21 раз

Re: Массовая замена бб-кода

Сообщение Booker »

Я глупость сделал - сначала удалил код, а потом вдруг дошло, что многие старые видео им обёрнуты. Да, идиот, согласен. Можно ли всё-таки сделать массовую замену или теперь только руками менять в каждом посте?
Аватара пользователя
c61
phpBB 2.0.6
Сообщения: 506
Стаж: 13 лет 9 месяцев
Благодарил (а): 42 раза
Поблагодарили: 251 раз

Re: Массовая замена бб-кода

Сообщение c61 »

Самый "железобетонный" способ:
1) отключить конференцию в админке
2) сделать дамп базы; достаточно только таблицу phpbb_posts, youtube вряд ли кто-то использует в ЛС и др. местах)
3) вручную каким-то редактором (дамп - это ведь обычный текстовый файл), понимающим utf-8 и умеющим осуществлять контекстную замену, поправить бб-код на другой (но если параметры бб-кодов не совпадают, придётся маленько шаманить), например:
[youtube] -> [video]
[/youtube] -> [/video]
4) восстановить таблицу из дампа
5) включить конференцию
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Массовая замена бб-кода

Сообщение Sheer »

Booker, STK -->Репарсинг bb-кодов.
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Booker
phpBB 2.0.7a
Сообщения: 627
Стаж: 15 лет 3 месяца
Благодарил (а): 165 раз
Поблагодарили: 21 раз

Re: Массовая замена бб-кода

Сообщение Booker »

Что при работе STK "репарсинг кодов" реально обозначает "шаг выполнен"? Это проход одного сообщения?
За два часа прошло примерно 1 500 шагов, если это означает проход 1 500 постов, то парсить 330 тысяч постов он будет две с половиной недели?
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Массовая замена бб-кода

Сообщение Sheer »

Booker писал(а):Это проход одного сообщения?
Пачка. А сколько в пачке, я не знаю, надо смотреть код STK.
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Массовая замена бб-кода

Сообщение Пчелкин »

330 000 - примерно часа три на впске...
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Booker
phpBB 2.0.7a
Сообщения: 627
Стаж: 15 лет 3 месяца
Благодарил (а): 165 раз
Поблагодарили: 21 раз

Re: Массовая замена бб-кода

Сообщение Booker »

Репарсинг не помог, всё осталось как и было.
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Массовая замена бб-кода

Сообщение Sheer »

Ну а ты в базе-то поменял перед этим?
c61 писал(а):[youtube] -> [video]
[/youtube] -> [/video]
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Shredder
Former team member
Сообщения: 2266
Стаж: 17 лет 9 месяцев
Благодарил (а): 283 раза
Поблагодарили: 584 раза

Re: Массовая замена бб-кода

Сообщение Shredder »

В базе это добро хранится в совсем другом формате, нежели простые [youtube] -> [video]. А именно (на примере кода b):
[b:2b9798n5]текст[/b:2b9798n5]
- после двоеточия, естественно, идут переменные, поэтому просто так их не заменишь. Нужно писать регулярные выражения.

Да и со скачиванием-перезаливкой бекапа - далеко не самый удобный способ, если базы гигабайтные.
Проще всего - сделать sql-запросом на основе LIKE, но и в этом случае нужно следить, чтобы кроме кодов вам в обычном тексте что-нибудь не наменяло.
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Массовая замена бб-кода

Сообщение Sheer »

Shredder писал(а):В базе это добро хранится в совсем другом формате
Ну да, поэтому после и репарсинг надо делать.
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
c61
phpBB 2.0.6
Сообщения: 506
Стаж: 13 лет 9 месяцев
Благодарил (а): 42 раза
Поблагодарили: 251 раз

Re: Массовая замена бб-кода

Сообщение c61 »

Shredder, про это-то я и забыл, но [youtube: -> [video: и т.п. можно поменять смело))

Есть ещё один метод. Создать пользователя с правами на редактирование любых сообщений, настроить и запустить робота (того самого, которого здесь кое-кто не любит) под его аккаунтом и пусть он потихонечку правит все тысячи-миллионы сообщений. Если за минуту 3-4 сообщения обработает, то к осени закончит))
Shredder
Former team member
Сообщения: 2266
Стаж: 17 лет 9 месяцев
Благодарил (а): 283 раза
Поблагодарили: 584 раза

Re: Массовая замена бб-кода

Сообщение Shredder »

Кто не любит? Я люблю роботов. Напомни ссылку на тему, хочу её себе сохранить.
Аватара пользователя
c61
phpBB 2.0.6
Сообщения: 506
Стаж: 13 лет 9 месяцев
Благодарил (а): 42 раза
Поблагодарили: 251 раз

Re: Массовая замена бб-кода

Сообщение c61 »

Shredder писал(а):Напомни ссылку
[Анонс] Класс php - робот конференций phpbb3 , но вроде что-то ещё изменял после 1.0.8, мелочи какие-то, несущественные...

Добавлено спустя 13 минут 52 секунды:
Кстати, а так ли серьёзна проблема ?.. Ведь если BB-codes yuotube и video c одинаковыми параметрами, то достаточно создать заново удаленный BB-code youtube, но взять всё из video (если параметры не совпадают, можно модифицировать и подогнать как надо). Скрыть его, и добавить BB-code video. Какой BB-code youtube использовался, Booker, не сообщите ?

Вернуться в «Поддержка phpBB 3.0.х»