phpmyadmin文本字段显示NULL但站点正常,同步SQLite能否正常获取数据?
问题原因
你看到的字段显示NULL但前端能正常展示,核心原因是你找错了内容实际存储的位置:
WordPress默认的文章正文存在wp_posts表的post_content字段,但很多社区类主题、内容插件会把自定义发布的内容存在wp_postmeta表的自定义元字段中,不会写入默认的post_content字段,所以你在phpMyAdmin里看对应字段是NULL,前端渲染时会主动拉取wp_postmeta里的对应内容,所以展示正常。
同步SQLite的结果
- 如果你直接同步当前你看到为NULL的这个MySQL字段到SQLite,同步后的值依然是NULL
- 只有先找到内容实际存储的表和字段,再同步对应字段的内容,才能拿到正常的文章文本
排查实际存储位置的方法
- 先确认你查看的表前缀和站点配置一致:对比你wp-config.php文件中的
$table_prefix参数值,确认你打开的不是其他前缀的posts表 - 记录下你看到NULL的那条文章记录的ID值,到
[表前缀]postmeta表中,用post_id = 文章ID作为筛选条件,查找值为对应文章文本的元字段,记住该元字段的键名 - 同步时关联
[表前缀]posts表和[表前缀]postmeta表,把对应元字段的值同步到SQLite的对应字段即可
内容的提问来源于stack exchange,提问作者Brad Cruise
相关产品推荐
相关产品推荐

