普通视图

制作了款 wordpress 主题 Cooooo

作者 夜枫's
2025年5月24日 23:42

上一个博客主题《Memorable-lit》,缝缝补补也将就用了六七年,况且,博客也是将近一年多没有更新,好多篇博文静静地躺在了草稿箱里……

这次呢,想着借机写一款主题,形式依然是我喜欢单栏。由于很久不写代码,看到代码很生疏了,外加当前前端技术迭代太快了,好多HTML、css3的新特性和js的ES5、ES6,我处于完全看不懂的状态,这个主题的由来是我平时浏览网站的时候,看到别人好看的风格样式,就扒拉扒拉下来了,有的懒得动脑子,就直接参考和借鉴过来。整个主题是使用字节推出的 Trae CN 编辑器,本地电脑搭建环境,外加用上Trae 的 Ai 来写代码,效率是离谱的高,在这个主题绝大部分代码是使用 Ai 的写的。开发效率是有点高,尤其是在解决一些很复杂的逻辑时,你只需告诉 Ai 程序的基本逻辑,它便生成可用的代码,在前端库的选择, 当然我选择的是 jQuery,其实前端JS可以用原生来实现,但是用着jQuery很顺手,代码简单,一行代码就能搞定的,没必要绕弯。别人都在用高级的Hexo、Hugo 等高级,而我依然选择的是 wordpress,可能懒得折腾、懒得写作时用Markdown,也可能是保持了习惯和旧状态,新特性对我没有吸引力吧。

年初一段时间博客感觉被黑了,博客的插件里出现了一些奇奇怪怪的代码,感觉是木马后门之类的代码,之前博客的版本为4.8,也是年久失修的状态,可能存在能利用的漏洞,导致的博客沦陷,当前,wordpress 最新的版本为 6.8.1,借机新主题就在最新的版本上测试开发,前前后后感觉写了近两个月,部分代码也是参考了大佬们的代码,修修补补,也算是正常跑了起来。

当前博客跑在Nginx + Mysql + php 8.1 下,对于 2 核2G 的云主机来说够用,甚至剩余的算力可以跑跑 docker 里的小应用,整体相对比较顺畅。

这次换主题也顺便修修花、剪剪草和施施肥,对于改造博客我也是下了很大的决心,好在一点点雏形出现到基本能用的状态,也是可喜可贺。当然主题若有问题,欢迎评论区提出,当然这个主题足够完善并且很有必要的话,可能也会开源哦。

博客我加个视频播放器、音乐播放器和全景播放器,想着给博友们分享一些我外出拍摄的一些照片和内容吧。

WordPress的文章别名是中文英文拼音,怎么改为文章ID

作者 老灵
2025年5月23日 11:34

WordPress的文章别名是中文英文拼音,怎么改为文章ID

很多人在搭建WordPress的时候,文章固定结构包含了%postname%,而不是%post_id%,后面想改又怕麻烦。其实做好规范,改动也没什么影响的。

在 WordPress 中,如果你想将文章的别名(slug/permalink)从中文改为数字 ID,可以通过以下几种方式实现。

下面是具体操作方法:

✅ 方法一:修改固定链接结构(推荐)

登录 WordPress 后台。

  1. 进入菜单:设置 > 固定链接(Settings > Permalinks)。
  2. 选择自定义结构(Custom Structure)。
  3. 输入以下内容:/archives/%post_id%/
  4. 或简单地使用:/%post_id%/
  5. 保存更改。

这样你的网站文章链接就会变成:https://example.com/123/

♻️方法二:批量修改已有文章的别名(slug)

上述方法修改的是新生成的链接结构,但如果你之前的文章已经使用了中文别名,在固定链接中可能依然显示中文。可以通过插件或代码批量将旧文章的 slug 改为数字 ID。

?方法一:使用 SQL 批量替换(建议备份)

你可以进入数据库(通过 phpMyAdmin 或类似工具),执行如下 SQL 语句:

UPDATE wp_posts SET post_name = ID WHERE post_type = ‘post’ AND post_status = ‘publish’;

注意:wp_posts 表名中的 wp_ 前缀需根据你实际的表前缀调整。

?方法二:手动更改为 ID(适合文章较少)

查看该文章的 ID(可以在浏览器地址栏中看到,比如 post=123)。

在「别名」字段中,将现有内容手动改为这个数字,如:123,点击 更新 即可。

?方法三:通过函数自动设置 slug 为 ID(适合文章较多)

你可以将以下代码添加到你主题的 functions.php 文件中(或使用 Code Snippets 插件添加),自动在文章发布时将别名设置为文章 ID:

https://github.com/lingchenzi/blog/blob/main/wordpress/change_post_slug_to_id


//修改文章别名为文章id
function change_post_slug_to_id($post_id) {
$post = get_post($post_id);
if ($post->post_type == 'post' && $post->post_status == 'publish') {
$new_slug = $post_id;
remove_action('save_post', 'change_post_slug_to_id'); // 避免死循环
wp_update_post(array(
'ID' => $post_id,
'post_name' => $new_slug,
));
add_action('save_post', 'change_post_slug_to_id');
}
}
add_action('save_post', 'change_post_slug_to_id');

? 注意事项

  • 如果你的网站已经上线,改动固定链接可能会影响 SEO 和已有链接。建议设置 301 重定向

  • 可以使用插件如 Redirection 来管理旧链接的跳转。

❌