将 .sql 数据库迁移到 WordPress
Posted
技术标签:
【中文标题】将 .sql 数据库迁移到 WordPress【英文标题】:Migrating an .sql database to WordPress 【发布时间】:2018-06-22 05:33:39 【问题描述】:我有一个来自旧的自定义博客 CMS 的数据库的 SQL 文件。我正在尝试将文章导入 WordPress,但我现在卡住了。到目前为止,我已经设法隔离了 CMS 的表结构(见下文)。我还确定了我需要的列。这些是(帖子、标题、日期、图像、类别)。现在我必须以某种方式将这些列映射到 Wordpress 架构中的某些列,这就是我卡住的地方。
数据库的SQL结构如下:
CREATE TABLE `ads_ng_ads` (
`id` int(10) unsigned NOT NULL auto_increment,
`ad_type` enum('media','text','html') character set latin1 collate latin1_bin NOT NULL,
`media_type` enum('image','flash','other') character set latin1 collate latin1_bin default NULL,
`media_width` smallint(6) default NULL,
`media_height` smallint(6) default NULL,
`media_size` int(6) default NULL,
`media_path` varchar(128) character set latin1 collate latin1_bin default NULL,
`uri` varchar(128) character set utf8 collate utf8_bin NOT NULL,
`is_hidden` tinyint(1) NOT NULL,
`created_on` int(11) NOT NULL,
`active_from` int(11) NOT NULL,
`active_to` int(11) NOT NULL,
`room_id` int(11) default NULL,
`geo_target` int(11) default NULL,
`alternative` text character set utf8 NOT NULL,
`zone_target` text character set ascii collate ascii_bin NOT NULL,
`uri_target` text character set utf8 collate utf8_bin NOT NULL,
PRIMARY KEY (`id`),
KEY `zone_target` (`is_hidden`,`active_from`,`active_to`,`geo_target`)
) ENGINE=MyISAM AUTO_INCREMENT=757 DEFAULT CHARSET=latin1;
CREATE TABLE `ads_ng_statistics` (
`ad_id` int(10) unsigned NOT NULL,
`date` int(11) NOT NULL,
`views` mediumint(8) unsigned NOT NULL default '0',
`clicks` mediumint(8) unsigned NOT NULL default '0',
PRIMARY KEY (`ad_id`,`date`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `countries` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(100) NOT NULL,
`alias` varchar(3) NOT NULL,
`restricted` tinyint(3) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=253 DEFAULT CHARSET=utf8;
CREATE TABLE `featured_column` (
`id` int(11) unsigned NOT NULL auto_increment,
`date_modified` timestamp NOT NULL default CURRENT_TIMESTAMP,
`date_created` timestamp NOT NULL default '1000-01-01 00:00:00',
`title` varchar(255) NOT NULL,
`alias` varchar(255) NOT NULL,
`body` text NOT NULL,
`body_html` text NOT NULL,
`user_id` int(11) NOT NULL,
`tags` varchar(255) NOT NULL,
`summary` varchar(255) NOT NULL,
`in_homepage` int(1) NOT NULL default '0',
`img_title` int(1) NOT NULL default '0',
`meta_t` varchar(255) NOT NULL,
`meta_k` varchar(255) NOT NULL,
`meta_d` varchar(255) NOT NULL,
`public` int(1) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=1381 DEFAULT CHARSET=utf8;
【问题讨论】:
只想说祝我的朋友好运 你可以查看这个答案来回答你的问题:wordpress.stackexchange.com/questions/49202/… 【参考方案1】:假设您使用的是最新的 WordPress 版本(4.9.1),您只需创建一个脚本,将所有数据导入表 wp_posts,例如,如果您想导入为 WordPress 帖子。示例:“标题”到“post_title”,“帖子”到“post_content”等。
【讨论】:
以上是关于将 .sql 数据库迁移到 WordPress的主要内容,如果未能解决你的问题,请参考以下文章
sql Wordpress在迁移时重定向到旧站点。从数据库更新旧URL的所有发生。