Всем привет. На днях получил целых два письма с текстом «Предсудебное уведомление» от компании СофтНьюс Медиа Групп, все дело в том что я использовал нелегальную копию DLE. Я обычно игнорирую такие письма и не обращаю внимание. Но в это раз я решил переехать с DLE и навсегда забыть о данной CMS, так как она содержит в себе кучу багов, платная и с большим количеством дыр. В ней есть конечно плюсы, выдерживает большие нагрузки, функциональная, но все это можно осуществить на WordPress, Joomla в крайнем случаи Drupal…
Сколько бы я не создавал сайтов на DLE, ни один из них, высоко не поднимался, так как требуется большие доработки в самом движке, например Дубли страниц. По этому будем работать с тем что есть.
Как перенести сайт с DLE (ДЛЕ) на WordPress (ВордПресс)
Скажу честно, это не тяжелее чем, перенести сайт на хостинг FastVPS , единственное отличие это работа с базой данных, Давайте попрядку.
1) Создаем бекап сайта и БД. Первым делом создаем Бекап Базы данных и файлов, это нужно сделать обязательно, ниже расскажу почему. Как это сделать, я думаю не составит труда, после того как вы будете уверенны что все файлы есть в бекапе, удаляем все DLE файлы и папки c вашего сайта с помощью FTP-клиента, я использую Total Commander, кому нужно, Вот инструкция как настроить FTP клиент.
2) Устанавливаем WordPress. Идем на сайт ry.wordpress.org и скачиваем последнюю версию WordPress и распаковываем ее на сайт. Здесь я думаю тоже не должно возникнуть проблем.
После того как вы загрузили сайт, переходим в браузере по адресу http://Вашсайт.ру/ и устанавливаем WordPress,
В появившемся окне указываем данные от старой базы и пароль. Если вы их не помните, можете посмотреть в бекапе : путь — Engine — Data — dbconfig.php:
- define («DBNAME», «Имя базы данных»);
- define («DBUSER», «Имя пользователя»);
- define («DBPASS», «Пароль»);
Если Вы сделали Все правильно Ваш сайт должен уже работать на WordPress.
Настройка WordPress. В первую очередь нам нужно скачать и активировать два плагина :
- Wp-no-category-base — Убирает ссылки типа «/category/»
- Rus-to-lat — Переводит URl на латинские символы
Остальные плагины установите позже.
Еще Важный момент Dle генерирует ссылки типа http://Название сайта/категория/id статьи — название новости.Html
Наша задача привести ссылки с исходному виду чтобы не потерять индексацию страниц. В вордпресс переходим: Консоль — Параметры — Постоянные ссылки — В общих настройках ставим галочку Произвольно и добавляем следующее:
/%category%/%post_id%-%postname%.html
Пример: Как должно выглядеть
Сохраняем и переходи к завершительному шагу.
Работа с Базой Данных. На хостинге переходим в phpMyAdmin, наша задача импортировать нашу старую БД в новую, делать это будем с помощью запроса SQL.
Переходим во вкладку SQL и выполняем запрос:
DELETE FROM `wp_users` WHERE `wp_users`.`ID` != 1; INSERT 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`; INSERT INTO `wp_terms` (`term_id`, `name`, `slug`) SELECT `id`, `name`, `alt_name` FROM `dle_category`; TRUNCATE `wp_term_taxonomy`; INSERT 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`; INSERT INTO wp_term_relationships (object_id, term_taxonomy_id) SELECT id, category FROM dle_post; TRUNCATE wp_posts; INSERT 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`; INSERT 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;
Код повзаимстовал на сайте http://www.64soft.net/ , на этом этапе ваш сайт должен уже отображаться со статьями.
Остается залить картинки с папки uploads старого сайта на DLe в папку с новым сайтом, путь: wp-content — uploads. Остальные корректировка я проделывал в ручную.
Как восстановить старый сайт на DLE
Бывают такие моменты, когда старый сайт еще нужен, например посмотреть расположение блоков, как выглядели статьи, что не переехало на новый сайт итд. Я решаю проблему следующим образом. Создаю поддомен и в него заливаю все файлы, создаю БД и импортирую туда старую базу, через минуту сайт уже доступен и я могу оценить что не так и что еще нужно перенести.
Данный способ я использую когда продаю сайт, заливаю все на поддомен и даю новому администратору сравнить изменения и устранить их.
Самыми полезными для меня оказались первые строчки )))) Резко перестал рассматривать DLE как платформу для нового проекта. Остались Joomla и WordPress. Спасибо!
Про DLE немало хороших отзывов и пользуются ей немало людей. Дырявые наверно все СМС, какие-то больше, какие-то меньше. Мне сложно судить, какая более дырявая, слабо в этом разбираюсь. Интересно, какая цена вопроса была для платной DLE и сколько пользовались нелегальной копией.
Drupal, кстати, вещь. Превосходит все бесплатные. Один сильный недостаток в ней — её сложность. Немало порталов её используют. Но для обычного блогера она всё равно, что по воробьям пушкой стрелять.
Интересно было узнать, как с одной СМС переносится сайт на другую. Интересовали ссылки и БД. В ссылке что значит нижний прочерк? И ещё: в SQL-запросе нужно построчно всё вводить или phpMyAdmin может сразу несколько запросов обработать?
Перевожу сайт http://mastervmoemdome.ru/ на вордпресс. В чем-то накосячил — пишет при попытке перехода по любой ссылке с главной страницы:
Not Found
The requested URL /newsi/713-primenenie-cokolnogo-saydinga-v-stroitelstve.html was not found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
В чем может быть дело?
Да, все работает. Уже 2 сайта перетащил таким способом.
Перенес сайт,статья помогла отлично,автору респект.Тоже пришло письмо решил перебраться на ВП только вот вывод новостей как настроить чтобы было как на дле на главной новости отдельно,и на других категориях тоже
Это нужно через код выводить. Вот например:
< ?php $posts = get_posts( "category=1&numberposts=5" ); ?>
< ?php if( $posts ) : ?>
< ?php foreach( $posts as $post ) : setup_postdata( $post ); ?>-
" rel="bookmark">
Дата: < ?php the_time('F j'); ?>
Просмотров: < ?php if(function_exists('the_views')) { the_views(); } ?>
< ?php the_post_thumbnail('mini-thumb', array('class' => 'minithumb')); ?>
" title="Permanent Link to < ?php the_title(); ?>">< ?php the_title(); ?>
< ?php endforeach; ?>
< ?php endif; ?>
Далее добавить id категорий и количество записей. Потом настроить стили и расположение блоков
Все как бы сделал, но есть проблема — на страницах склеивает анонс и полную новость(дублирует часть текста), ссылки на сторонние сайты отображаются некорректно. Посмотреть пример можно на http://sonechko.ru/1291-kak-nuzhno-lechit-allergicheskiy-nasmork.html. Как это исправить.
Заранее благодарен, ответ прошу прислать на chmelyuk_s@mail.ru
Спасибо за статью. Мне еще нужно будет перенести из базы данных дополнительные поля записей. Как это сделать? В вордпрессе я установил специальный плагин для доп. полей — Advanced Custom Fields
Это нужно допиливать БД, создайте аналогичные поля, посмотрите в базе как они будут выглядеть, потом нужно будет сделать запрос в базе и перенести, я думаю это вазможно
php-скрипт переноса базы с DLE на WP: https://github.com/olegabr/dle2wordpress
Сделал для собственных нужд, теперь пылится. Если кому-то пригодится, буду рад.
Ехей, пользуюсь вашей инструкцией, спасибо за публикацию. Сейчас посмотрю чего интересного на вашем сайте. Полюбому в закладки сайт.
У меня почему-то после переноса на сайте оказалось 111 статей вместо 168 🙁
Как поправить?
Попробуйте повторно проделать работу, может не догрузились или еще что то.
Чуток покопался, сравнил dle_post и wp_post в базе SQL и понял проблему: на старом движке было зарегистрировано три пользователя. При исполнении запроса в SQL переносится только один:(
Соответственно, статьи опубликованные другими пользователями не переносятся. Как решить вопрос еще не придумал.
Вообще первый раз сталкиваюсь с подобным вопросом и работой с MySQL, но проблему решил. Короче, сайт был куплен с месяц назад и после покупки, всех «левых» пользователей удалил. Соответственно они были удалены из базы SQL, а сейчас при переносе столкнулся с проблемой описанной выше. Хорошо что не удалил базу данных переданную мне продавцом, восстановил ее и перенос прошел отлично, все статьи на месте!
Спасибо за данный пост, очень полезно!
Огромное вам спасибо!
Не подскажите, можно ли конвертировать урлы в такой вариант: /index.php?newsid=165525, попробывал сделать, но он всёравно редиректит на wp вариант урла просто с номером поста.
Попробуйте в общих настройках сделать и выбрать заданный URL,хотя наверно это нужно делать через базу данных.
Перенес так один сайт, но получилось как-то кривовато, возможно с базами перемудрил или просто руки кривые!)))
Привет! А нет инструкции как перенести наоборот, с WP на DLE? У меня есть старый сайт еще на WP 2.2.3 сделан был еще 7 лет назад, хочу перенести на DLE и нигде не могу найти инструкции.
как правильно перенести доп поля с dle на wordpress ?
И меня интересуют поля если кто делал отпишетесь. спасибо
Приветствую, у меня в базе ДЛЕ 1080 записей а получается импортировать только 340.
К сожалению, эти sql запросы не устанавливают связи между записью и рубрикой. Не создают меток. Все перенесенные пользователи не имеют ника и роли. Подумаю, как доработать и выложу результат. Но это всё ерунда, а вот почему у меня из 8867 записей переносится 6к с хвостиком пока не пойму. Если использовать цикл PHP, который по 1 записи переносит, то переносится всё чётко.