- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Надеюсь тему для вопроса выбрал правильно. Если нет, прошу перенести в "правильный" раздел.
Всем привет! Очень нужна помощь/совет... пытаюсь перенести сайт с WordPress на DLE... Посты с горем пополам перенёс с помощью RSS и программы TextKit. Но, к моему сожалению, перенеслись только тексты, без комментариев...
Попытался перенести их вручную, т.е. Взял из файла sql дамп данных таблицы `wp_comments` в таком вот формате (не знаю, как правильно назвать):
INSERT INTO `wp_comments` (`comment_ID`, `comment_post_ID`, `comment_author`, `comment_author_email`, `comment_author_url`, `comment_author_IP`, `comment_date`, `comment_date_gmt`, `comment_content`, `comment_karma`, `comment_approved`, `comment_agent`, `comment_type`, `comment_parent`, `user_id`, `comment_subscribe`) VALUES
Сделал пробные комментарии на DLE и получил дамп данных таблицы `dle_comments` такого вида:
INSERT INTO `dle_comments` (`id`, `post_id`, `user_id`, `date`, `autor`, `email`, `text`, `ip`, `is_register`, `approve`, `rating`, `vote_num`, `parent`) VALUES
Поменял вручную значения в скобках, что в `wp_comments` на значения, что в скобках `dle_comments` и получил вот такую штуку:
INSERT INTO `dle_comments` (`id`, `post_id`, `autor`, `email`, `comment_author_url`, `user_id`, `ip`, `date`, `comment_date_gmt`, `text`, `comment_karma`, `approved`, `comment_agent`, `comment_type`, `parent`, `user_id`, `comment_subscribe`) VALUES
Попробовал импортировать — не сработало...
Ответ MySQL: #1136 - Column count doesn't match value count at row 1
Погуглил и если правильно понимаю, происходит это из-за несовпадения кол-ва и порядка столбцов таблиц... возможно ещё и из-за того, что в таблице куча информации из WP, которая в DLE не используется...
Вот и вопрос: подскажите, люди добрые, что и как исправить, чтобы комментарии перенеслись? Да, версия DLE 10.6
Вся проблема в том одного соответствия столбцов мало :( вручную этого не сделать. Когда-то встречал утилиту для переноса, но там версии ДЛЕ были до 9-ки
Вся проблема в том одного соответствия столбцов мало :( вручную этого не сделать. Когда-то встречал утилиту для переноса, но там версии ДЛЕ были до 9-ки
Спасибо за ответ! И спасибо, что напомнили про версию движка, а то совсем забыл... утилит никаких не нашёл, потому и пытаюсь руками ... Очень надеялся на TextKit, но он, как я писал выше, перенес только тексты...
утилит никаких не нашёл
Такой перенос просто не популярный. Обычно переходят с нуленного ДЛЕ, который шлет абузы хостеру, на бесплатный ВП.
ну так..
INSERT INTO `dle_comments` (`id`, `post_id`, `autor`, `email`, `comment_author_url`, `user_id`, `ip`, `date`, `comment_date_gmt`, `text`, `comment_karma`, `approved`, `comment_agent`, `comment_type`, `parent`, `comment_subscribe`)
SELECT `comment_ID`, `comment_post_ID`, `comment_author`, `comment_author_email`, `comment_author_url`,
`user_id`,
`comment_author_IP`, `comment_date`, `comment_date_gmt`, `comment_content`, `comment_karma`, `comment_approved`, `comment_agent`, `comment_type`, `comment_parent`, `comment_subscribe` FROM `wp_comments`
таблицу импортнуть wp_comments` в абзу
ну так..
INSERT INTO `dle_comments` (`id`, `post_id`, `autor`, `email`, `comment_author_url`, `user_id`, `ip`, `date`, `comment_date_gmt`, `text`, `comment_karma`, `approved`, `comment_agent`, `comment_type`, `parent`, `comment_subscribe`)
SELECT `comment_ID`, `comment_post_ID`, `comment_author`, `comment_author_email`, `comment_author_url`,
`user_id`,
`comment_author_IP`, `comment_date`, `comment_date_gmt`, `comment_content`, `comment_karma`, `comment_approved`, `comment_agent`, `comment_type`, `comment_parent`, `comment_subscribe` FROM `wp_comments`
таблицу импортнуть wp_comments` в абзу
Спасибо за помощь! Попробовал ваш вариант, тоже ошибка... на этот раз такая:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(22, 116, 'admin', 'aaa@aaa.ru', 'http://namesite.ru', '83.167.116.98' at line 4
У меня нет ваших таблиц
писал на коленке
На вскидку запрос верный.
откуда взялись вот эти данные мне не понятно
Автору не помешало бы предоставить структуру обеих таблиц, а не MySQL-запросы
Проще импортнуть таблицу из ВП, а потом поменять названия столбцов, их порядок и переименовать таблицу. Но нужно смотреть на типы столбцов, используемых в DLE.
Автору не помешало бы предоставить структуру обеих таблиц, а не MySQL-запросы
Проще импортнуть таблицу из ВП, а потом поменять названия столбцов, их порядок и переименовать таблицу. Но нужно смотреть на типы столбцов, используемых в DLE.
Тут такое дело... в общем благодаря Вячеславу (Chukcha ) таблица комментариев загрузилась в БД, но... не заработала на сайте... Скорее всего с ней всё в порядке (я по крайней мере очень на это надеюсь), поскольку выяснилось, что TextKit при переносе постов не скопировал ID-новостей, а назначил им новые... сразу это было не видно, поскольку даты, соответственно хронология и вывод постов остались такими же, как и в оригинале...
Так что теперь нужно ту же процедуру произвести с таблицей постов...
Касательно структуры таблиц, то они вот такие:
--
-- Структура таблицы `wp_posts`
--
CREATE TABLE IF NOT EXISTS `wp_posts` (
`ID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`post_author` bigint(20) NOT NULL DEFAULT '0',
`post_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`post_date_gmt` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`post_content` longtext NOT NULL,
`post_title` text NOT NULL,
`post_category` int(4) NOT NULL DEFAULT '0',
`post_excerpt` text NOT NULL,
`post_status` enum('publish','draft','private','static','object','attachment','inherit','future') NOT NULL DEFAULT 'publish',
`comment_status` enum('open','closed','registered_only') NOT NULL DEFAULT 'open',
`ping_status` enum('open','closed') NOT NULL DEFAULT 'open',
`post_password` varchar(20) NOT NULL DEFAULT '',
`post_name` varchar(200) NOT NULL DEFAULT '',
`to_ping` text NOT NULL,
`pinged` text NOT NULL,
`post_modified` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`post_modified_gmt` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`post_content_filtered` text NOT NULL,
`post_parent` bigint(20) NOT NULL DEFAULT '0',
`guid` varchar(255) NOT NULL DEFAULT '',
`menu_order` int(11) NOT NULL DEFAULT '0',
`post_type` varchar(20) NOT NULL DEFAULT 'post',
`post_mime_type` varchar(100) NOT NULL DEFAULT '',
`comment_count` bigint(20) NOT NULL DEFAULT '0',
PRIMARY KEY (`ID`),
KEY `post_name` (`post_name`),
KEY `type_status_date` (`post_type`,`post_status`,`post_date`,`ID`),
FULLTEXT KEY `post_related` (`post_name`,`post_content`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1322 ;
--
-- Дамп данных таблицы `wp_posts`
--
INSERT INTO `wp_posts` (`ID`, `post_author`, `post_date`, `post_date_gmt`, `post_content`, `post_title`, `post_category`, `post_excerpt`, `post_status`, `comment_status`, `ping_status`, `post_password`, `post_name`, `to_ping`, `pinged`, `post_modified`, `post_modified_gmt`, `post_content_filtered`, `post_parent`, `guid`, `menu_order`, `post_type`, `post_mime_type`, `comment_count`) VALUES
И вот во что нужно превратить:
--
-- Структура таблицы `dle_post`
--
CREATE TABLE IF NOT EXISTS `dle_post` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`autor` varchar(40) NOT NULL DEFAULT '',
`date` datetime NOT NULL DEFAULT '2000-01-01 00:00:00',
`short_story` text NOT NULL,
`full_story` text NOT NULL,
`xfields` text NOT NULL,
`title` varchar(255) NOT NULL DEFAULT '',
`descr` varchar(200) NOT NULL DEFAULT '',
`keywords` text NOT NULL,
`category` varchar(200) NOT NULL DEFAULT '0',
`alt_name` varchar(200) NOT NULL DEFAULT '',
`comm_num` smallint(5) unsigned NOT NULL DEFAULT '0',
`allow_comm` tinyint(1) NOT NULL DEFAULT '1',
`allow_main` tinyint(1) unsigned NOT NULL DEFAULT '1',
`approve` tinyint(1) NOT NULL DEFAULT '0',
`fixed` tinyint(1) NOT NULL DEFAULT '0',
`allow_br` tinyint(1) NOT NULL DEFAULT '1',
`symbol` varchar(3) NOT NULL DEFAULT '',
`tags` varchar(255) NOT NULL DEFAULT '',
`metatitle` varchar(255) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
KEY `autor` (`autor`),
KEY `alt_name` (`alt_name`),
KEY `category` (`category`),
KEY `approve` (`approve`),
KEY `allow_main` (`allow_main`),
KEY `date` (`date`),
KEY `symbol` (`symbol`),
KEY `comm_num` (`comm_num`),
KEY `tags` (`tags`),
KEY `fixed` (`fixed`),
FULLTEXT KEY `short_story` (`short_story`,`full_story`,`xfields`,`title`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=3949 ;
--
-- Дамп данных таблицы `dle_post`
--
INSERT INTO `dle_post` (`id`, `autor`, `date`, `short_story`, `full_story`, `xfields`, `title`, `descr`, `keywords`, `category`, `alt_name`, `comm_num`, `allow_comm`, `allow_main`, `approve`, `fixed`, `allow_br`, `symbol`, `tags`, `metatitle`) VALUES
теперь нужно ту же процедуру произвести с таблицей постов...
Ну и сделай по аналогии, в чём проблема-то:
SELECT `ID`, `post_author`, `post_date`, ..... и т. д. FROM `wp_posts`
Почитай какое поле за что отвечает (или создай 2-а одинаковых поста на разных движках и сравни) и вперёд.
Ну и сделай по аналогии, в чём проблема-то:
Почитай какое поле за что отвечает (или создай 2-а одинаковых поста на разных движках и сравни) и вперёд.
Пробовал - не получилось... не знаю, как правильно называется, но какие-то связи теряются между таблицами... не появляются комментарии в постах, хотя в БД они есть...