Перенос сайта с dle на wordpress

Как и многие вебмастера во время торжества покупных ссылок я тоже клепал кучу ГС для продажи ссылок. Чтобы разнообразить сетки сайтов, некоторые сайты я делал на движке DLE (DataLife Engine). И конечно это были движки null версии, в те времена просто не кошерно было делать сайты на платном движке. Да и сейчас большая часть сайтов с этим движком использует его не совсем законно.

dle wordpress
Перенос сайта с ДЛЕ на Вордпресс

Эра ГС прошла но некоторые сайты остались в замороженном состоянии. толи выкинуть жалко, толи домены мне ценны. При этом на почту доменов постоянно сыпались предупреждения, что сайты используют не лицензированнную версию движка. (хотя у меня стояла древняя версия, которая еще подпадала под лицензию GNU GPL, и по советам «специалистов» на форумах, я просто забивал на предупреждения). Но недавно получил от регистратора сообщение об абузе.  Боясь потерять домен я решил организовать переезд сайтов с DLE на WordPress.

Как оказалось это не сложная процедура. Ниже приведу инструкцию по быстрому переносу сайта с этого движка.

Пошаговая инструкция переноса сайта с DLE  на Wordpress

  1. Делаем бэкапы базы данных и всех файлов. (на всякий случай, вдруг не получится перенос)
  2. В корневую папку устанавливаем wordpress
  3. В качестве базы указываем базу от сайта на dle
  4. Устанавливаем плагины: Wp-no-category-base (убирает ссылки на /category/) , Rus-to-lat  (Переводит урлы в латиницу)
  5. Приводим Url wordpress к виду как они были на dle.  (для этого Идем Консоль -> Параметры->Постоянные ссылки-> Произвольно-> Ставим:  «/%category%/%post_id%-%postname%.html»  )
  6. Конвертируем базу данных

Для этого в phpmyadmin необходимо выполнить вот такой запрос:

DELETE FROM `wp_users` WHERE `wp_users`.`ID` != 1;
REPLACE INTO wp_users    (ID, user_login, user_nicename, user_email, user_registered, display_name) SELECT user_id, name, name, email, FROM_UNIXTIME( reg_date ), name FROM dle_users WHERE  user_id != 1;
TRUNCATE  `wp_terms`;
REPLACE INTO `wp_terms` (`term_id`, `name`, `slug`) SELECT `id`, `name`, `alt_name` FROM `dle_category`;
TRUNCATE  `wp_term_taxonomy`;
REPLACE INTO `wp_term_taxonomy` (`term_taxonomy_id`, `term_id`, `description`, `parent`) SELECT  `id`, `id`, `descr`, `parentid` FROM `dle_category`;
UPDATE  `wp_term_taxonomy` SET `taxonomy`='category';
TRUNCATE  `wp_term_relationships`;
REPLACE INTO wp_term_relationships (object_id, term_taxonomy_id) SELECT id, category FROM dle_post;
TRUNCATE  wp_posts;
REPLACE INTO wp_posts (id, post_author, post_date, post_content, post_title, post_name) SELECT d_p.id, d_u.user_id, d_p.date, CONCAT(d_p.short_story, '<!--more-->' ,d_p.full_story), d_p.title, d_p.alt_name FROM dle_post as d_p, dle_users as d_u WHERE d_p.autor = d_u.name;
TRUNCATE  `wp_comments`;
REPLACE INTO wp_comments (comment_ID,comment_post_ID, comment_author, comment_author_email, comment_date, comment_content) SELECT id, post_id, autor, email, date, text FROM dle_comments;

Оригинал кода взят вот тут.

В принципе сайт уже должен работать. Остается только подогнать шаблон, вернуть все блоки, кнопки и прочее. Но это уже скорее относится к настройкам wordpress, чем к предмету этой статьи, поэтому просто упущу этот момент.

Выводы.

Я думал переезд займет несколько суток кропотливого труда, но все заняло не более получаса со всеми разбирательствами и вниканиями в тему переезда. Как говорится Глаза боятся, а руки делают.

Теперь вы знаете, что делать, если пришло письмо от разработчиков или правообладателей DLE, что вы используете систему управления сайтом Data Life Engine незаконно, вот варианты:

  1. Оплатить лицензию и спать спокойно (на момент публикации этой статьи базовая лицензия стоит 3190 рублей)
  2. Переехать c DLE на wordpress (инструкция выше)
  3. Переехать на абузоустойчивый сервер
  4. Забить на предупреждения и надеяться что последствий не будет

 

 

 

23 комментария

  • Александр

    15.09.2015

    Спасибо за инструкцию по переезду с DLE на WP, то что искал!

    Reply
    • ZeDDy

      15.09.2015

      Пожалуйста, не забывайте делать бэкапы перед началом работ.

      Reply
  • Лучше, думаю, использовать Yoast WordPress SEO, чтобы убрать категории из url. Просто плагин итак обязательный к установке и там уже есть этот функционал.

    Reply
  • seoonly.ru

    15.09.2015

    Письмо с угрозой пришло?

    Reply
    • ZeDDy

      15.09.2015

      Пришло письмо от регистратора. обычно правообладатель писал, а теперь регистратор, это чревато минимумом потерей домена, поэтому переехал.

      Reply
  • seoonly.ru

    16.09.2015

    Ничего себе, кризис ударил по ДЛЕ, теперь уже через регистраторов щемят

    Reply
    • ZeDDy

      16.09.2015

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

      Reply
      • ZeDDy

        17.09.2015

        похоже явление массовое.
        еще один сайт на дле из старых сеток нашли. пришлось переносить.

        Reply
  • Аркадий

    21.09.2015

    А вот смотри, в DLE же много доп.полей используется в шаблоне, как потом в шаблоне WP их вывести?

    Reply
  • Потап

    28.10.2015

    Меня тоже интересует дополнительные поля с DLE как перенести, пробовал так ,‘ ,d_p.full_story, d_p.xfields не получатся ,

    Reply
  • Alex

    26.12.2015

    Все так сделал, в админки все посты есть, на главной тоже, а переход по ссылки полной новости пишет что нет такой страницы !!! И по ссылки категории тоже самое !!! Где у меня глюк получается и как его убрать ???

    Reply
    • ZeDDy

      27.12.2015

      Посмотри ЧПУ,
      и возможно у тебя есть точки в нем.
      Вернее точки в url статей

      Reply
  • Alex

    27.12.2015

    Точек нет, только тире одни, не ну есть конечно .html но это ж не в счет !!!

    Reply
  • Alex

    27.12.2015

    Нашел я в чем глюк, в конце названия поста я вместо токи знак восклицательный ставил, DLE его в ссылки как тире писал, а WP тире в конце ссылки не хавает и когда в посте на WP ставишь восклицательный знак он в ссылки его вообще не как не обозначает !!!
    Теперь вот вопрос как эти тире по убирать с адреса ссылок !!!???

    Reply
    • ZeDDy

      27.12.2015

      Если постов не много то в ручную,
      если чуть больше то залезь через phpmyadmin
      там эти url записаны в таблице wp_posts в столбце post-name
      и если ты знаешь что косяк к конечном тире или воскл. знаке, то поубирай его или добавь.
      в принципе можно придумать sql запрос который разом все исправит, но я в этом не силен.

      Reply
  • Alex

    27.12.2015

    Вот и я не селе, а постов 6556 с 1 января 12 года сайт у меня !!! Так что в ручную не вариант даже через phpMyAdmin, нашел я там эти ссылки но как их пометь то !!!???

    Reply
    • ZeDDy

      28.12.2015

      сделай бекап базы, и попробуй

      UPDATE ИМЯ_ТАБЛИЦЫ SET ИМЯ_ПОЛЯ = REPLACE(ИМЯ_ПОЛЯ, ‘строка для замены’, ‘чем заменяем’);

      Reply
  • Alex

    28.12.2015

    я про такое сразу подумал, но в адресе ссылки есть еще тире, всмысле пробел в названии поста DLE тоже заменяет на тире, и если такое сделать то оно все тире по убирает, да и заменять то на что ??? на пробел ??? это надо какая то команда чтоб в строках по удаляла последний символ !!!

    Reply
  • Wstory

    22.11.2017

    Здравствуйте! Подскажите, а как перенести статические страницы из базы DLE в WP?

    Reply
    • ZeDDy

      23.11.2017

      К сожалению не могу подсказать.
      Последний раз переносил давно.
      Если их не много то может быстрее вручную перенести?

      Reply
  • Арчи

    20.12.2018

    А файлы то сайта на DLE куда переносить? Про базу понятно.

    Reply
    • ZeDDy

      23.12.2018

      Файлы от движка уже не нужны и переносить их не придется,
      а медиафайлы лучше переложить в идентичную папку (как было на движке DLE) чтобы все обращения внутри контента сохранились.

      Кстати не уверен что сейчас эта статья актуальна, прошло уже 3 года с момента написания, и возможно в движке и базах ДЛЕ были изменения, которые делают приведенный выше код не рабочим.

      Reply

Добавить комментарий