涉及数据库的操作,务必请提前做好备份!提前做好备份!!做好备份!!!
小鸟数据的当前主题的缩略图字段命名为augPostThumb
,这几天在尝试完善一下原有主题,下载了原站的数据库导入了测试站用于测试页面效果,测试主题的缩略图相关字段拟修改为_Postthumb
,新名称在前面增加一个下划线以区别设置项与文章自定义字段。但老的数据库里已经有近千文章,这近千文章的自定义字段augPostThumb
都已经保存并放进了数据库里。所以就准备在数据库里直接去修改它。
我们拟修改的表是typecho_fields
这张表,如果您安装了phpMyAdmin,可以直接点击上方的按钮运行sql语句。
实现需求用的以下的代码:
UPDATE `typecho_fields` SET name = '_Postthumb' WHERE name = 'augPostThumb' AND type = 'str';
输入如上代码后选择执行即可。顺便贴一个删除对应关键词的语句:
DELETE FROM typecho_fields WHERE name = 'keywords'
分割内容提取前者
UPDATE your_table_name
SET str_value = SUBSTRING_INDEX(str_value, '||', 1)
WHERE name = '_Postthumb'
AND type = 'str'
AND str_value LIKE '%||%';
详细说明:
SUBSTRING_INDEX(str_value, '||', 1) 会提取 || 之前的部分
WHERE 条件限定了只处理:
name = '_Postthumb' 的记录
type = 'str' 的字符串类型
str_value LIKE '%||%' 包含 || 的条目
去除指定内容
UPDATE `typecho_fields`
SET str_value = REPLACE(str_value, '_thumb', '')
WHERE name = '_Postthumb'
AND type = 'str'
AND str_value LIKE '%_thumb%';
关于单选框的默认选项问题
当自定义字段有值的时候,编辑文章时我们会看到单选框的选项自动跳到了已选位置。单选框的当前选中项博主感觉是利用计算后得到的值来逆推选项的,所以当更换主题后但仍旧想使用这个值,就需要对自定义字段进行一致化的修改,比如字段的名称,比如值中的主题名称,需要注意的是这个值是大小写敏感的,哪怕只是大小写有差异,也会导致当前选项无法被获取,那么当重新保存文章时,有可能会使已保存值无意中被修改成了默认值。
主题厄余数据
主题或多或少会创建几个自己的专属字段,如果没有明显感觉站点卡顿、出错的现象,个人建议即便切换了主题,也不必忙于删除,删除之前,主动权在我,万一误删或导致有用的数据丢失,那就得不偿失了。