Перенос записей из DLE в DRUPAL

Главные вкладки

Аватар пользователя genjak genjak 18 февраля 2009 в 16:34

Наконец то перенес записи из DLE в DRUPAL - перенес только новости, без картинок, без комментариев, пользователей и т.д.

Сделал просто - экспорт таблицы dle_post из базы DLE? затем создал эту же таблицу в базе DRUPAL,
далее два запроса.

INSERT INTO node
(nid, vid, type, title, uid, created, promote)
SELECT
id, id, "news", s.title, 1, UNIX_TIMESTAMP(s.date), 1
FROM
dle_post s

INSERT INTO node_revisions
(nid, vid, uid, title, timestamp, format, body, teaser )
SELECT
id, id, 1, s.title, UNIX_TIMESTAMP(s.date), 1,
CONCAT(s.short_story, "", s.full_story),
s.short_story
FROM
dle_post s

Единственное - нужно что бы NID в node и VID в node_revisions были меньше чем id в dle_post

Комментарии

Аватар пользователя beerman beerman 18 февраля 2009 в 17:31

ммде...
<?php
$result = db_query("SELECT title, body FROM dle_table");
foreach ($row = db_fetch_array($result)) {
$node->title = check_plain($row['title']);
$node->body = $row['body'];
node_save($node);
}
?>

Аватар пользователя iryston iryston 18 февраля 2009 в 20:42

"penexe" wrote:
плохо что так переносили

А почему плохо? Я тоже похожим образом данные экспортировал, уже второй месяц тестирую вроде глюков не замечено.

Аватар пользователя seaji seaji 18 февраля 2009 в 20:59

Все зависит от включенных модулей.
Каждый из них может вклиниваться в процесс сохранения через hook_node_api(), например, path_auto или пресловутая таксономия.
Плюс счетчики нод, комментариев, привязка к автору, формат ввода ну и много других мелочей.

Аватар пользователя theСанитар theСанитар 18 февраля 2009 в 22:02

Вообще, это довольно развесистая задача. Если по уму делать. Я ща ваяю скрипт для переезда с Drupal на "Битрикс" (сорри ;-), одним SQL-запросом явно не обойтись Wink

Аватар пользователя Evgenij Evgenij 4 сентября 2009 в 21:46

"penexe" wrote:
плохо что так переносили, надо было через node_save

Я что то node_save, не нашёл. Не подскажите, где найти?