Этот сайт создан как клуб русификаторщиков. Для нас существуют три основных правила.
1. Мы никому и ничего не должны!
2.Один пришедший на сайт толковый русификаторщик дороже всех пользователей.
3. Мы делаем русификаторы для своего сайта, но в оригинале ими могут пользоваться все в интернете.
Решил посмотреть как работает форум Invision Power Board 3.4.9 и его последователи. Установил, пошастал по настройкам, создал темы и всякую лабудень но...это не то . Решил перекинуть нутро своего форума на этот, я скажу вам что это так же занимательно как русификация. Все получилось.
Что перенесено.
1. Пользователи (со всей лабудой, но без без паролей) 2. Категории 3. Темы 4. Сообщения (весь форум) 5. Прикрепления 6. Звания
Для начала смотрим здесь конечный результат конверсии от Bullet-Energy-1.3 до IPS Community Suite 4.2.7
Sypex Dumper [са"йпэкс да"мпер] — это программный продукт (PHP-скрипт), с помощью которого можно просто и быстро создать резервную копию (бекап, бэкап, дамп) базы данных MySQL, а также восстановить в случае необходимости базу данных из резервной копии.
Скачать бесплатный дампер и профессиональный для PHP-7.1 можно здесьНо, профи работает только на локалке!
Скачать IPB3.4.9 Скачать ips_4.2.7_null_rus Скачать Конвертер bullet-energy-1.3 на IPB3.4.9
Этап 1
Установка локального сервера open_server и перенос полного бекапа сайта с хостинга на локалку. Установите open_server , DLE и IPB3.4.9 и перенесите сайт. Базу данных создайте с именем и паролем от балды, они все равно нужны только для локалки. Перенос базы данных делается с помощью Sypex Dumper за пару минут.
Этап 2
В настройках локального сервера выставьте опции
В файле config.php пропишите юзера и пароль от базы данных. Обязательно адрес аватара, сайта и пустышки.
Делаем экспорт таблицы dle_users Выбираем dle_users, жмем Отметить все и кнопку Экспорт. Дальше формат поставить SQL.
Открываем файл в notepad++ и делаем первое изменение для правильной работы конвертера. найти
|
заменить на
!7777777!
Делаем импорт dle_users в базу данных IPB 3.4.9 После импорта делаем экспорт этой таблицы в формате CSV Метод экспорта: обычный - отображать все возможные настройки. Параметры формата: Разделитель полей: поставить разделитель | Значения полей обрамлены: очистить поле Символ экранирования: очистить поле Далее жмем кнопку Вперед Открываем файл dle_users.csv по правой кнопке мыша в Notepad++ и сохраняем в файл dle_users.txt по пути как на картинке.
Запускаем меню конвертера convert.html, проверяем соединение с базой данных IPB 3.4.9 Далее открываем файл 1_convert_ugen.php и вписываем ID групп в левой колонке, в правой не трогать, лишние команды игнорируются.
Все готово для изменения групп как на IPB 3.4.9. Жмите ссылку Конвертация групп
Теперь делаем экспорт из базы данных IPB 3.4.9 таблицы dle_users
Выбираем dle_users, жмем Отметить все и кнопку Экспорт. Дальше формат поставить CSV Метод экспорта: обычный - отображать все возможные настройки. Параметры формата: Разделитель полей: поставить разделитель | Значения полей обрамлены: очистить поле Символ экранирования: очистить поле Далее жмем кнопку Вперед Открываем файл dle_users.csv по правой кнопке мыша в Notepad++ и сохраняем в файл dle_users.txt по пути как на картинке.
Теперь жмем ссылку Конвертация пользователей, дождитесь переноса всех на новый форум и внизу нажмите кнопку Продолжить. Можно посмотреть в админке IPB 3.4.9 результат работы конвертера и настроить группы. Пятую не занимайте - в IPS Community Suite 4 этот ID не используется.
Важно!!!
Конвертер затрет ваш пароль, для входа в админпанель используйте это (замените в таблице members на IPB 3.4.9
member_login_key = 1439c4835c787c12ee50cb65dc0ac607"nmember_login_key_expire = 1430916832"nmembers_pass_hash = 26efd3bbdf8d06534387ddf742badb0d"nmembers_pass_salt = bt5fk"nУстанавливай эти значения и будет пароль 123456
Делаем экспорт dle_be_tree в формате CSV Метод экспорта: обычный - отображать все возможные настройки. Параметры формата: Разделитель полей: поставить разделитель | Значения полей обрамлены: очистить поле Символ экранирования: очистить поле Далее жмем кнопку Вперед Открываем файл dle_be_tree.csv по правой кнопке мыша в Notepad++ и сохраняем в файл dle_be_tree.txt по пути как на картинке.
Теперь включите в notepad++ на регулярные выражения и сделайте как на картинке
найти
(";i:2;i:)(.+?)(;i.+?:")
заменить на
"2"
Переключитесь в notepad++ на обычный режим и сделайте как на картинке
найти
"
заменить на
|
На этом все с этим файлом.
Экспортируем таблицу dle_be_topic
Делаем экспорт dle_be_topic в формате CSV Метод экспорта: обычный - отображать все возможные настройки. Параметры формата: Разделитель полей: поставить разделитель | Значения полей обрамлены: очистить поле Символ экранирования: очистить поле Далее жмем кнопку Вперед Открываем файл dle_be_topic.csv по правой кнопке мыша в Notepad++ и сохраняем в файл dle_be_topic.txt по пути как на картинке.
На этом все с этим файлом.
Экспортируем таблицу dle_be_attachment
Так как картинки экспортировать не надо на новое место, то их и учитывать не стоит. Нужно выбрать все вложения файлов с расширением .rar Нажмите сортировку как на картинке
Теперь выберите архивы и внизу нажмите ссылку Экспорт
Делаем экспорт dle_be_attachment в формате CSV Метод экспорта: обычный - отображать все возможные настройки. Параметры формата: Разделитель полей: поставить разделитель | Значения полей обрамлены: очистить поле Символ экранирования: очистить поле Далее жмем кнопку Вперед Открываем файл dle_be_attachment.csv по правой кнопке мыша в Notepad++ и сохраняем в файл dle_be_attachment.txt по пути как на картинке.
Переключитесь в notepad++ на обычный режим и сделайте как на картинке
найти
|1|
заменить на
|rar|
---------------------------------------------------------------------------------- Продолжение Переходим к следующему файлу. Делаем экспорт dle_be_message.sql, открываем в Notepad++ и далее...
1. Заменить разделитель | на
|
2. Удалить из полей символы разрыва строк вручную. Так перенос строк сохранится как в оригинале.
Выставьте опции как на скрине
.
найти
"n"n"n"n
заменить на
<br />
найти
"n"n"n
заменить на
<br />
найти
"n"n
заменить на
<br />
найти
"n
заменить на
<br />
Далее нужно сделать импорт dle_be_message.sql в базу данных IPB3.4.9. Далее, выбираем в базе данных IPB3.4.9dle_be_message.sql, жмем кнопку Экспорт. Дальше формат поставить CSV. Метод экспорта: обычный - отображать все возможные настройки. Параметры формата: Разделитель полей: поставить разделитель |. Значения полей обрамлены: очистить поле Символ экранирования: очистить поле Поставить гальку Удалить из полей символы разрыва
Далее жмем кнопку Вперед Открываем файл dle_be_message.csv по правой кнопке мыша в Notepad++ и сохраняем в файл dle_be_message.txt
На этом все, файлы готовы для переноса на другой форум ------------------------------------------------------------------------------- Продолжение
После переноса данных, зайдите в админку и настройте права доступа
Потом сделайте пересчет только здесь. Теперь можете переходить на форум и делайте все что захотите
Важно!!! После всех исследований по обновлению форума с третьей версии до четвертой самой удачной конструкцией оказалась версия ips_4.2.7. После обновления на эту версию не слетают стили форума (славится по всему нету этот чудо-форум) и дальше можно обновлять на любую версию что выше. В связи с этим был заменен в конвертере файл 9_convert_forum_post.php Что делать нужно сразу после обновления на четверку - зайти в админку
А по части такой конвертации нет подводных камней? Что говорят?
Так конвертер я сам сделал Что могут говорить, если в сети такой конвертации с Bullet-Energy-1.3 на Invision Power Board 3.4.9 нет Буду выкладывать по порядку метод перекачки данных из одного форума в другой. Надо знать, что база данных это просто текст. У на в русификации посложней будет до ума доводить какую то программу, чем здесь.
Да, забыл написать - все здесь зарегистрированные могут входить со своим паролем и логином на тестовый форум, вы там будете в такой же группе как тут.
Так конвертер я сам сделал biggrin_mini2 Что могут говорить, если в сети такой конвертации с Bullet-Energy-1.3 на Invision Power Board 3.4.9 нет
Вот теперь понятно. Вопрос, а при таком перекиде ссылки со сторонних ресурсов ведущие на форум остаются живы?
Один момент ещё допишу, наверно не правильно когда ты уже перешёл на форум и нет обратного линка на сайт. Я по крайней меру не нашёл как с него вернуться на сайт. Наверно взаимосвязь должна быть, хотя бы простой перелинковкой к примеру в шапке по клику на эмблему что - ли.
Сообщение отредактировал dinis124 6 апреля 2019 - 21:35
dinis124, все там настаивается, просто это тестовый форум. Ссылки любые можно редикнуть, делаешь регулярку и в notepad++ перегоняешь, например ссылки DLE что вели на форум Bullet-Energy-1.3 легко перегоняешь на другой форум.
Понятно, это хорошо что всё хорошо. А то подумал половина отвалится как было до этого при переходе на другой движок или что делали не знаю точно. У меня ссылки на некоторые мануалы от Leserg с сайта вели в 404 и пришлось удалять так как часть материалов еще как оказалось куда то делось.
У меня ссылки на некоторые мануалы от Leserg с сайта вели в 404 и пришлось удалять так как часть материалов еще как оказалось куда то делось.
Они все канули в небытие, он удалил свой яндекс-диск. Что было в резерве, то и восстановили. Да и ссылки мрут со сторонних сайтов, за всеми не уследишь.
Вообще то я пока не собираюсь переходить на другой форум, это для тех, кто хочет уйти с Bullet-Energy. Пишу инфу как настроить файлы для конвертера, пока работа идет потихоньку - много мирской работы.
Продолжение в шапке Да, для четвертой версии запросы, если упали счетчики
-- Количество сообщений в каждой теме
UPDATE forums_topics LEFT JOIN (
SELECT topic_id, count(0) AS messages_cnt
FROM forums_posts WHERE queued=0
GROUP BY topic_id
) msg_cnt ON topic_id = forums_topics.tid
SET posts = coalesce(messages_cnt, 0);
-- Количество тем в каждом разделе
UPDATE forums_forums LEFT JOIN (
SELECT forum_id, count(0) AS topics_cnt, sum(posts) AS msg_cnt
FROM forums_topics WHERE approved=1
GROUP BY forum_id
) msg_cnt ON forum_id = forums_forums.id
SET topics = coalesce(topics_cnt, 0),
posts = coalesce(msg_cnt, 0);
-- Количество сообщений у каждого пользователя
UPDATE core_members LEFT JOIN (
SELECT author_id, count(0) AS messages_cnt
FROM forums_posts WHERE queued=0
GROUP BY author_id
) msg_cnt ON author_id = core_members.member_id
SET member_posts = coalesce(messages_cnt, 0);
Кстати - таким методом можно перенести форум LogicBoard 5.1, а юкоз просто как пару пальцев об асфальт
Сообщение отредактировал WYLEK 29 января 2023 - 14:05