普通视图

发现新文章,点击刷新页面。
昨天以前首页

Obsidian 和 WordPress 我都用什么插件

作者 Jeff
2024年9月3日 19:24

Obsidian 插件

1. Hover Editor
快速悬浮模式编辑。

2. Outliner
整理大纲。

3. Clearing Unused Images
用于清理图片,该插件默认不开启,需要清理时才启用。但现在基本不插入图片到笔记,纯文本记录。

以上就是我当前使用的所有第三方插件。之前也试过安装 Calendar、Kanban、Thino 等等插件,但感觉都没太大必要,软件自带功能和核心插件完全可以应付常规笔记需求。插件多了反而影响软件秒开。

我使用 Obsidian 插件的使用原则是,脱离 Obsidian 后,所有内容可以在其他编辑软件中继续正常使用。这意味着类似 Dataview 需要语法来判断、筛选内容的插件不符合我的要求。没有 Dataview 的便捷性,反而让我对于索引卡制作和双链的使用更加严格,对内容有更多的思考。提升效率的插件可以考虑安装一两个,或者多记几个快捷键。


WordPress 插件

1. Akismet
默认插件,能应付部分垃圾评论。

2. Autoptimize
优化 HTML、CSS、JS。

3. Object Cache
优化缓存。

4. WP Permalinks Migration
去年简化固定链接后作重定向安装的,计划明年删除。

以上就是我当前使用的所有插件,其他就是依赖部署服务器的时候一些优化,买的最低配轻量应用服务器。目前感觉网站整体速度还可以。我的开源主题,我会在functions.php 中禁用一些不需要的功能。我自己用的主题,我会禁用更多,比如禁止WordPress自动生成缩略图、禁止响应式图片。我不考虑使用第三方服务,比如图床,以避免以后服务终止或迁移带来的困扰。

-

个人觉得,做笔记也好,写博客也好,软件/程序功能上的需求没有那么多,就是图片和文本信息。基于极简原则,其他都是画蛇添足或锦上添花。花样多,需要投入的非必要时间就多,让你分心的东西越多。够用就好。

WP搬家策略

作者 xrspook
2024年8月30日 19:44

当年今日

现在WordPress服务器供应商的服务期限大概到今年10月就满了,所以在那之前,团长是应该带着我搬家的,今年早些时候我们已经讨论过这个问题,因为他已经忘记了账号密码,所以常规的搬家步骤不没办法实现,因为根本进不了后台,导出不了数据库,同时也不能把我挂在上面的网站拷贝出来。今年4月的时候,我已经折腾了一番,用的是一个WP的插件(All-in-One WP Migration),那个东西可以在WP后台的界面把网站所有数据全部导出。导出的那些数据被压缩成一个文件。那个文件通过他们网站上面的某些工具,可以在线浏览里面的内容,也可以下载工具安装之后把它解压出来。但即便都解压了出来,那个东西的结构跟WP网站本身还是有一定区别,所以我猜他们没想过用户会把数据导出来以后,通过手工搬家的方式,把数据库挪到其他地方。比如在新的服务器那里,首先进行一个数据库的导入,然后把网站解压的内容复制到新的服务器。为什么这么说呢?因为上面说过,文件加压后的结构跟WP网站本身是有点区别的,但我并没有研究过差异在哪里。有区别就意味着直接搬过去肯定会遭殃。所有人都知道服务器上传文件的大小是有限制的,有可能服务商对你进行了限制,也有可能是软件进行了限制。所以这个插件还卖了一个功能,他们可以把超大的压缩文件上传到你的网站上。你完全不需要考虑文件超限,做不了任何事情。这么高端的操作是付费服务。如果人人都可以轻易地自己挪动,这个付费也就毫无意义,他们也就无法靠这个东西生存下去了。如果网站的数据超限了,但又不想给钱,他们还是给出了一些调整的方案,但这些步骤对小白来说有点复杂,但是对我这种不怕折腾,只要能免费的人来说,完全是可行的。主要步骤分为两个,第一个是在我WP的文件里插入某些语句,但即便这样插入了,也不能保证上传一定不超限。因为还有服务商那边的门槛,所以必要的时候还是要跟服务商沟通一下。在测试搬家这个问题上,我用过两个方式,一个是纯粹的导出导入,第二个是在导入形成网站之后,再导出那个网站的数据库文件,接着把那个网站的网页文件复制到一个新的地方,然后把数据库文件另存为一个新的数据库文件并修改网址,最后把新的网页文件指向新的数据库。之所以做这么无聊的测试,是因为万一服务器那边无论我怎么修改,就是不让我直接导入大文件,我还可以通过这种方式搬家。我20年数据的整个文件不到600MB,而数据库文件只有70多MB。不让600多MB的文件上传,我觉得这是有点可以理解的,但是70多MB的数据库文件,我感觉还是可以成功导入的。如果能实现,我很折腾的第二个方案就意味着我可以把网站从线上搬到线下,然后进行一个普通搬家的流程。之前说过,之所以得这么折腾,是我没办法直接访问现在那个网站的后台,折腾一番以后,实际上我就是把网站线上的后台搬到了线下。

这两年来写了很多的VBA+ADO+SQL,所以我在 phpmyadmin里看到数据库和SQL的时候,我感到了默默的亲切。当我在那里测试SQL语句的时候,发现那个速度实在太感人了。70多MB的SQL文件用Notepad++打开,大概13万行。我要更新里面的某些东西,那是眨眼就能完成的事,跟用Excel处理的速度相比,专业的数据库真的太伟大了。

星期三就已经找过团长,但到星期四下班的时候,他还没回复我。通常情况下不会这么长时间都没反应的,大概他出差了吧…

14年的独立blog

作者 xrspook
2024年8月29日 08:45

当年今日

blog在WordPress上,不知不觉已经14个年头。如果没记错的话,是在2010年开始的,因为那个时候BlogBus崩掉了。这14年,我都是跟着同一个团长。那个团长是在豆瓣上认识的,估计现在那个团里面就只剩下我和他了,其他人可能都已经渐渐退掉。实际上,对blog有需求的人,可能只剩下我一个,只有我一个积极用户。团长本身就只是做那个事而已,我不知道他有没有在服务器上折腾些什么。以前可能他是有折腾的,但折腾这种事,对普通人来说不可能一直都折腾。因为写blog本身不算太折腾,每天都耗费基本上相似的时间,习惯下来就好。

我有想过有一天团长不干了,我该怎么办。我自己独立一个门户吗?那个时候,如果遇到一些技术上的故障,我该怎么办呢?现在实际上,我们也的确遇到了技术上的故障。因为团长换电脑了,所以那个服务器的账号密码不见了。理论上联系服务商,只要你提供足够的资料,对方是可以帮你找回密码或者帮你重置密码的,但关键是邮件发过去,对方完全不理你,还真一点办法都没有。当然,如果服务商是大型的,估计不会发生这种事,但如果那只是一个小众的服务商,那么发生这种事,绝对是有可能的,中途跑路也是有可能的。这么多年下来一直都相安无事,我觉得都已经是个奇迹了。中途我们有没有搬过家呢?我没什么印象,因为不是我操作的,我顶多是一段时间开不了网页,但实际上,无论我开得了还是开不了网页,我的blog都会继续,都会在记事本上写下来。重新能开网页的时候,我就把之前囤下的那些东西发布上去,仅此而已。

如果有一天团长不干了,我还会继续每天写,但那个时候估计就不能称之为blog,要称之为日记了,blog和日记对我来说,最大的区别在于一个自己存着,另外一个放在网上,谁都可以看到。

服务商这种东西,即便是最大型的,也说不准靠谱不靠谱,因为大型的服务商也非常有可能有倒闭的那一天,某一天,他们不再开展这个业务了,转而开展别的,把这个业务关闭了,你一点办法都没有。一直以来我们的数据都是放在外国的服务器的。以现在的局势看来,继续放在外国好像有点风险。倒不是因为我的数据有什么问题,涉及了什么方面的东西,而是如果一旦某些事情发生,互联网中断,即便我的东西还存在着,但我再也接触不到了。

我从2004年开始写自己的blog,到昨天为止,我备份了一下全站的内容,媒体资料有400多MB,数据库有70多MB,其它的都是一些很小的脚本。文字内容的东西基本上都在数据库的SQL文件里,附件类图片音频之类的东西其实这么多年下来也不是很大,最主要的原因是可能一开始我会用得比较多,尤其是在我刻橡皮章的时候,后来越来越少了,尤其是近几年,我基本上没有了什么兴趣爱好之后。

还记得一开始在BlogBus上开我自己的blog的时候,我的誓言是一辈子都写,每天不间断,但现在看来,写不写下去靠的是我个人,但能不能让其成为blog,外部干扰因素很大。如果是短时间内,外部因素干扰可以忽略,但如果把时间延长到十年甚至几十年,外部干扰因素影响非常大。

有天赋?

作者 xrspook
2024年8月15日 08:42

当年今日

有时候我也搞不懂自己是不是真的有编程的天赋,还是说不知道为什么我对这方面会特别感兴趣。之所以这样,我觉得一定程度上跟我过往的经历有关。我不讨厌数学,但因为自己的计算能力有问题,经常会因为这样那样的原因出错,所以越往上学,我的成绩就越会出现提不上去。知道那个思路,但是却算不出那个答案。这种情况在某些只需要答案不需要过程的考试里面就很吃亏。即便需要计算过程,但如果我在第一个部分就算错了,后面也就没有什么意义了,因为根本算不下去。

编程好像一定程度上弥补了我的计算失误。因为计算结果是由机器完成的,而我只需要提供思路。在简单的问题上,那种百发百中的感觉真好。不过当问题遇到的越来越多,思路不是一下子就能畅通,我需要碰过很多壁以后才能出结果我会觉得刺激。在考虑很多因素的时候,总是有这样那样的不到位。有些步骤可以做在前面,也可以坐在后面,但是哪个会更优呢?最终都能得到同样的结果,那个时候我就得用机器的方式去考虑,怎么样才能最大程度节省资源,提高运算速度。

如果说写脚本的话,高中的时候我已经在干,那个时候是写网站,现在写CSS,然后是 HTML,再到后来当我接触WordPress以后是PHP。一开始用的CSS 那个时候就完全只是控制网站的部分格式而已。CSS可以控制很多东西,但是核心的部件是没办法修改的,有些控制封装在核心部件里,于是自定义CSS无法到达,那个时候我感觉到有一点点的无力。相对而言,WordPress控制方面可以说只有你想不到没有做不到。哪怕有些部分可能CSS真的无能,但实际上当你得知那个控制手段以后,你还可以配合其它的脚本实现某些格式的自定义。

最终让我觉得自己的编程技术总算是用到了点子上是近几年Python,Power Qurey和Power Pivot以及VBA的使用。这几个东西是从Excel的数据处理开始的。我基础的东西都齐全了,但是我怎么才能快捷获取某个成品的结果呢?我知道那个事情该怎么干。但是天天都干,又或者是在很短的时间内要我干那个事情,首先是觉得很烦,其次是非常容易出错,于是这让我想到为什么我不能用编程的手段把它们高度的结合起来。要用什么编程语言?其实一直我都在摸索。用过了一段时间,大家都尝试过了以后,我觉得大部分情况下,无论哪个语言,都能获得类似的结果,但复杂程度不一样,在不同设备上的运行速度不一样,需要的设备基础也不一样。我要用什么编程实现那个结果,我就得考虑这些东西。我是不是经常要用,是不是我一个人用,是不是我还得给别人用。最终我觉得稳定性首先必须保证,最终那个结果也是,必须得以某个我要求的方式输出的,第三点就是看看我的第一感觉是哪个编程软件。

可能某一天,某些软件用不了了,我只能用其它方法去替代,虽然这很麻烦,但是我也相信,我有能力可以做出替代,但我希望不需要有那么一天。

如何搭建一个博客?

作者 青山
2023年12月25日 19:40

记得一个脑筋急转弯,把一头大象装进冰箱需要几步?三步,打开冰箱,然后把大象装进去,关闭冰箱。

我对于个人博客的搭建步骤也可以用三步来概括,注册域名、购买服务器、搭建博客,但当我们实际操作起来步骤远比想象的要多。

今天写一篇从0到1的博客搭建教程,希望影响更多想写博客的人

如何搭建一个博客? - 第1张图片

防杠说明:我只以我的经验为基础,推荐和介绍我所用的服务器、程序,更好的方案有很多,不喜勿喷。

并不是因为没有内容可写才出一篇搭建博客的教程,相反,我希望用这篇教程,让想写博客的人,可以写。

基本概念

在介绍博客如何搭建之前,有必要解释相关的概念。这里我采用初之音博客的解释,加以修改。

访问我的博客,需要在浏览器里输入域名 yinji.org,浏览器通过域名解析服务查询到上述网址指向的 IP 地址为 64.88.88.xx,IP 地址与服务器绑定,访问IP就是访问服务器。服务器查询到 yinji.org 指向的位置是 WordPress 博客程序所在的目录,因此返回该目录下所有可以展示的文件。最后,由博客程序将内容返回给访客,显示在浏览器上。

因此,我们需要有域名、服务器、域名解析服务、IP、博客程序、运行环境。

域名

一个完整的域名有前缀和后缀,比如 yinji.orgyinji 是前缀,org 是后缀,中间用符号.链接。所以我们在注册域名时,预先想好前缀,然后在可供选择的后缀中选择合适或者喜欢的。

常见的后缀有 .com.net.org.me.top,不推荐国别域名后缀 .cn。如果用作个人博客,我推荐使用 .com.net.me.im

在国内服务商注册域名,好处是价格较便宜,支付方便,但需要实名认证,我建议使用国外的域名商,看个人选择。

国内域名服务商推荐腾讯云、阿里云,如果想注册非主流域名后缀,可以使用趣域网。国外域名服务商推荐 NameNameCheapNameSiloPorkbunGandi,使用之前可以参考比价网站,对比不同域名后缀在不同域名服务商的注册、续费、转入价格,比如哪煮米TLD-ListNameBeta,尽可能选择知名度较高的大厂。

服务器

云服务器和 VPS 有区别,也有联系,为了容易理解,下面都以 VPS 为介绍对象。

使用国内的 VPS,域名必须备案,所以你如果打算购买腾讯云华为云或者阿里云等国内云服务商的 VPS,最好是在同一个服务商注册域名,方便管理和备案。

如果使用大陆以外的 VPS,比如香港、台湾、日本、美国的服务器,不用备案。

相对来说,国内 VPS 带宽小、价格便宜,其他地区的 VPS 带宽大、价格稍贵,但也有性价比不错的商家,下面会有介绍。

腾讯云、阿里云、华为云都有相应的学生认证服务,通过学生认证可以以优惠价购买配置还不错的 VPS,如果你符合该条件,可以试试。

国外的云服务商选择很多,知名的有 AWSVultrLinode搬瓦工,他们所提供的服务器质量好、售后好,但也很贵,不建议新手玩家购买。如果你每年只有300元以内的预算,推荐 CloudCone 或者 RackNerd

我目前使用的 VPS 来自 CloudCone,在2023年4月复活节期间购买,配置为 CPU&内存:2核(vCPU)&2GB,存储:60GB硬盘,带宽:1Gbps,每个月3TB流量,25.5美元/年,续费同价。至于使用体验,可以查看我以前的文章《使用 CloudCone 的第 7 个月》。

或者考虑使用同一机房,但配置稍微低一点的 RackNerd

对了,国外云服务商还有一个更重要的优点,续费同价,不像国内的套路云,往往只有新人和第一年才有优惠价。

购买 VPS 和注册域名一样,选择知名度高的厂商,虽然我推荐的这两家没有 AWS、Vultr 这些大厂名气大,但在圈内也比较知名,性价比高。

搭建博客

购买服务器

以上面提到的 CloudCone 为例,介绍从购买服务器到搭建博客的过程。

目前 CloudCone 已无库存,可以考虑购买 RackNerd 的 VPS,也有洛杉矶 DC2 机房

首先在 CloudCone 注册账号,该服务商需要提前充值金额,所以先看好想买的 VPS 价格,充值好对应的金额。点击头像,然后进入 Billing 页面。

如何搭建一个博客? - 第2张图片

下方有一个 Add funds 按钮,支持支付宝支付。

如何搭建一个博客? - 第3张图片

充值好金额之后,以圣诞节特惠 VPS 26美元款为例,然后进入购买页面,选择合适的系统,设置好 Hostname,即可下单。

如何搭建一个博客? - 第4张图片 如何搭建一个博客? - 第5张图片

推荐使用 Debian 或者 Ubuntu 系统,版本选择最新即可,Hostname 没有太多限值要求,英文+数字组合即可。然后等待 VPS 开通成功,之后会收到来自 CloudCone 邮件通知,包含 VPS 的 IP 地址和 SSH 登录账号和密码。

如何搭建一个博客? - 第6张图片

解析域名

一般域名注册商会提供免费的域名解析服务,或者使用其他服务商提供的域名解析,例如 Cloudflare。

这里以 Cloudflare 为例进行介绍。首先需要注册 Cloudflare 账号并登录,点击添加站点。

如何搭建一个博客? - 第7张图片

输入需要添加的域名之后,选择最下方的 Free 方案,点击继续,会提示你修改域名的 DNS 服务器。然后只需要回到域名注册商后台,修改 DNS 服务器即可。

如何搭建一个博客? - 第8张图片

等待 DNS 服务器更新完成,回到 Cloudflare 后台,为域名添加解析。类型选择 A,名称填写 @ 或者 www,IPv4 地址就填写上面购买的 VPS 的 IP 地址,代理状态不建议使用 Cloudflare 代理,一般用不上,建议取消,最后点击保存即可。

关于名称,多说两句。以我的域名 yinji.org 为例,如果填写 @,则解析后的域名就是 yinji.org;如果填写 www,则解析后的域名就是 www.yinji.org 。建议两种都解析,将 yinji.org 作为主域名,设置 www.yinji.org 跳转至 yinji.org。

如何搭建一个博客? - 第9张图片

安装环境

使用 WordPress 程序安装博客,我的常用做法是安装宝塔面板,一键配置 lnmp 环境,Linux+Nginx+MySQL+PHP。

首先需要使用任意一个 SSH 客户端登录服务器,输入账号 root 和登录密码,端口一般为22。如果你的电脑是 Windows 系统,可以直接在 Terminal 上输入命令ssh root@142.1xx.2xx.xx -p 22登录服务器。

下图是堡塔远程工具的截图,输入对应的内容登录即可。

如何搭建一个博客? - 第10张图片

不同的系统安装宝塔面板所用的命令也不一样,以宝塔官网提供的为准。

CentOS 系统:

yum install -y wget && wget -O install.sh https://download.bt.cn/install/install_6.0.sh && sh install.sh ed8484bec

Ubuntu 系统:

wget -O install.sh https://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh ed8484bec

Debian 系统:

wget -O install.sh https://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh ed8484bec

如何搭建一个博客? - 第11张图片

只需要输入一行命令,整个过程基本上自动完成,安装成功之后,会显示面板登录地址及其账号密码,保存即可退出。

按照提供的地址和账号密码,登录宝塔面板,会弹出环境安装的选择,一般选择 LNMP,极速安装。

如何搭建一个博客? - 第12张图片

上述步骤完成,搭建 WordPress 博客所需的环境也就安装成功了。

创建网站

博客程序种类丰富,常见的 WordPress、Typecho 等,这里以 WordPress 为例。首先需要前往 WordPress 官网下载程序包,一个包含中文语言的压缩包。

如何搭建一个博客? - 第13张图片

紧接着回到宝塔面板,在左侧找到“网站”一栏,添加站点→创建站点→输入域名(例如 yinji.org)→数据库(选择 MySQL,设置账号和密码)→PHP 版本(选择 PHP-81),最后点击提交。

注意:这一步既创建了网站目录,也创建了数据库,所以后面无须再次创建数据库,记住这一步骤下的数据库名、数据库账号和密码即可。

新建一个站点之后,点击左侧“文件”,便会看到系统自动创建了一个以域名为文件名的文件夹,我们称之为网站根目录。

如何搭建一个博客? - 第14张图片 如何搭建一个博客? - 第15张图片

站点创建之后,进入该站点所在目录,删除目录内所有文件,一般只剩下一个 .user.ini 文件,删不掉也没关系。

上传下载好的 WordPress 压缩包,并解压,得到一个名为 WordPress 的文件夹,将文件夹里面的文件全部移动到网站根目录。

如何搭建一个博客? - 第16张图片

上述步骤完成,一般就可以在浏览器里输入域名进行程序安装,但为了减少后面的麻烦,可以先将 SSL 和伪静态提前设置好。

点击刚刚创建好的网站,选择左侧的 SSL,然后选择 Let\'s Encrypt,选择需要配置 SSL 证书的域名,点击申请即可。

如何搭建一个博客? - 第17张图片 如何搭建一个博客? - 第18张图片

最后开启强制 HTTPS,点击保存。

关于伪静态设置也很简单,打开左侧的“伪静态”,下拉找到 WordPress,点击保存就可以了。

如何搭建一个博客? - 第19张图片

设置好 SSL 和伪静态之后,便可以在浏览器里输入绑定好的域名,进入 WordPress 程序安装环节。

安装 WordPress 程序

在浏览器里输入域名,进入程序安装界面。

如何搭建一个博客? - 第20张图片

这一步需要用到数据库名、数据库账号、数据库密码,这些都可以在宝塔面板里找到,数据库主机和表前缀保持默认即可,不用修改。

如何搭建一个博客? - 第21张图片

填写正确之后提交,下一个页面是设置站点标题、后台用户名和密码等内容。

如何搭建一个博客? - 第22张图片

全部内容填写完毕之后,通过 域名/wp-admin 路径进入博客后台,即可看到如下图所示的界面,即博客搭建大功告成。

如何搭建一个博客? - 第23张图片

后面你所需要做的事情就是熟悉 WordPress,在后台摸索文章、媒体、页面、评论,以及如何上传/更换主题、安装插件等功能。

写在最后

WordPress 是我最早接触的程序,宝塔也是我最早接触的可视化服务器面板,所以我一直以来的博客搭建方案便是 VPS+宝塔+WordPress,这些都有平替,比如 1panel,再比如直接使用命令行,手动安装环境,但我不会,学起来也比较困难。

怎么方便我就怎么来,即使有人说 WordPress 臃肿,即使有人说静态博客更好,即使有人说宝塔面板好多广告,但看个人选择吧,做好自己,不要求别人。

所以上述所有内容都是基于我个人经验写作而成,存在很强的主观性,仅仅是作为一种选择,提供给想搭建独立博客进行写作的人。同时,由于我能力和知识有限,如果上述内容有任何问题,欢迎指正。

就像东评西就的博主小饿所说:在这个日益浮躁的环境下,难得有非技术人士肯花时间再次开始写独立博客了。博客从来就不是技术人士的专属,非技术人士也可以通过自己的学习和努力搭建属于自己的独立博客,希望我的内容能帮到这些人。

从写一个 WordPress 插件说起

作者 夏泉
2024年6月22日 12:53

之前博客的《目录》页面用的是 List category posts 这个插件生成。可这个插件虽然功能比较多,但是不支持(还是我不知道?)我要生成的页面。

再往前用的插件是 Dagon Design Sitemap Generator,它可以生成一个以「分类目录」为主题的文章页面列表(例子可以看文章存档 – 木遥的窗子)。但是这个插件很长时间没更新了,甚至它的官网都打不开了,没办法重新下载这个插件。

考虑到这个插件功能并不复杂,索性自己写好了。我的文章本身不多,因此也不用做分页或者其他的配置,用最简单的方式即可。这个插件应该符合以下功能:

  • 生成一个双层级的 bullet list
    • 以「分类目录」为第一层,排序方式按单词字母正序
    • 以该分类目录下属的文章为第二层,排序方式按文章创建时间倒序
  • 「分类目录」的展示需要加前缀 “Category”,且这个前缀需要加粗
  • 「分类目录」的内容为分类标题,该标题为该分类的 URL
  • 文章列表都是可点击的 URL
  • 文章标题后面增加文章创建的时间

以上功能其实不复杂,最后只用把它们拼成 HTML 语法的代码即可。

问题在于,我从来没写过 WordPress 插件,甚至我也不会 PHP。换在两年前,如果需要完成这项任务我应该需要:

  1. 用至少 2 天时间学习 PHP 的基本语法,其中可能包括:
    • 找到合适的上手文档/教材
    • 搜索无数次 StackOverflow 搭一套可运行环境
    • 学点基础语法,并且在写的过程中反复查文档
  2. 用至少 2 天时间学习 WordPress 的开发过程,其中可能包括:
    • 为了性能和效率,先在本地机器跑起一个 WordPress 页面
    • 从 WordPress 的文档看怎么写出一个 Hello World 插件
    • 搜索无数次 StackOverflow 看别人怎么解决各种意想不到的问题

但是自从有了生成式 AI 后,完成这么一项任务变得无比简单。以这次写插件为例,用的是 Anthropic 新发布的模型 Claude 3.5 Sonnet,前后只用了 30 分钟就完成了。我并没有学 PHP 的基础语法,也没有查过 WordPress 的文档。只需要通过合适的 Prompt 引导 AI 生成合适的代码,同时让 AI 告诉我怎么把插件安装到 WordPress 即可。

当然,初次生成的代码不是完美的,但是把需要改进的内容告诉 AI 即可慢慢引导到正确的结果。

这与程序员目前写代码是一样的过程:刚开始写好的大概率是不完善的,有错误或此前没考虑到的地方,一步步改好重新运行,通过不断的试错达到最终的效果。

这就是 Sam Altman 提到的完全使用自然语言编程。几十年前的程序员写的是汇编语言,而今天绝大多数的程序员都不再用,而是通过 Python 等高级语言(这里的高级并非褒义词,而是高度封装的意思,类似于预制菜和炒菜的区别)完成任务。而如今的 AI 是一个新的编译器,它可以让大多数人直接通过自然语言编程。

或者类比一下,coder 有点类似于国内较早学习英文的人,有能力将中英文互相翻译。而现在的 AI 可以充当一个翻译器,让人可以直接用自然语言和计算机交流。

但这并不意味着编程就成为一件无门槛的事—尽管门槛降低了些。我们依然要整理好需求和思路才能完成任务。以刚刚的 WordPress 插件为例,如果只是说「做一个插件支持以『分类目录』归类展示文章列表」,那么有可能会作出很多不同版本的插件。

事实上,这也是 software engineer 和 coder 的区别。前者更多的工作在于将一个较大的任务拆分成小任务,通过合适的方式组合起来完成;而后者更强调翻译这项工作。

这也让我想起,前段时间和朋友聊起,我们这行未来能做什么。我并没有想好这个问题,但是会让我想到如果要转行,什么能力是通用的?在我看来其中一个就是解决问题的思路。小的问题比如家里一颗灯泡坏了怎么修?大的问题类似如果要设计一套银行系统需要怎么完成(我现在自然还不能胜任这项工作)?

也正是因此,前段时间教两个朋友编程的时候,我并没有怎么注重语法,而是更关注解决问题的思路。通过自然语言把问题拆解出步骤,然后翻译成代码。回想起当年自己自学的时候那种无力感实在痛苦,已经忘记是怎么熬过来的了。幸运的是,现在的人不必如此。

前段时间去了趟大英博物馆,看到了镇馆之宝罗塞塔石碑。两百多年前,法国人商博良 (Jean-François Champollion) 以这块石碑为突破口,破译了古埃及圣书体,成为埃及学创始人。这块石碑上印有三种文字,分别是古埃及圣书体、世俗体及古希腊文。或许在未来,非自然语言的代码都会被人遗忘。而某一段写着自然语言注释的代码会成为新的罗塞塔石碑。

WordPress文章归档页面分组和分页

作者 老王
2024年6月15日 20:41
WordPress 归档页面是一个网站的历史内容存档,它允许用户浏览网站的过去内容。它的存在有以下几个意义:为用户提供内容索引和历史参考,提供搜索引擎优化,方便用户查找特定时间段的内容,对网站管理员来说,归档页面可以帮助管理网站的内容,通过定期归档旧内容,可以保持网站的速度和效率。

用 WP-CLI 给 WordPress 网站重新生成缩略图

作者 Kevin
2024年6月10日 23:47

此前为了保证图片浏览质量和节省磁盘空间,我几乎关闭了 WordPress 所有缩略图的输出,以前更新少流量低,也没觉得这么干有啥问题。近来博客更新比较频繁,流量也越来越高,一查发现这个博客消耗的宽带竟然比另一个主站还高(访问量远不及另一个),都是媒体文件尺寸过大惹的祸…!

有《WordPress 有哪些不同尺寸的缩略图,如何完全禁用&批量删除》一文详细介绍了咱 WordPress 都有哪些缩略图并如何处理它们。WordPress 默认的缩略有如下几个:

[ 阅读全文 ]

原文链接:https://www.shephe.com/post/wp-cli-wp-media-regenerate/
版权声明: Kevin's Space 版权所有,转载请用明链标明本文地址
本站相关:随机文章 | 站长微博 | 关于本站 | 联系站长 | 捐助作者
缩略图名称图像尺寸
缩略图( Thumbnail )(大小取决于媒体设置。默认为 150 像素)
中等大小( Medium )(大小取决于媒体设置。默认为 300 像素)
大尺寸( Large )(大小取决于媒体设置。默认为 1024 像素)
中大尺寸( Medium Large )768 像素
2x 中大尺寸( 2x Medium Large )1536 像素
2x 大尺寸( 2x Large )2048 像素
缩放( Scaled )2560 像素

初识 WordPress 古腾堡编辑器的区块样板

作者 Kevin
2024年5月28日 10:48

前不久连着发了数篇文章,让博客的流量稍微增高了一些,巅峰时期超过了 500IP,我寻思着这流量不能白白浪费啊…我服务器很贵的好伐!于是我又开始折腾广告了…起先仍然是放了 Google AdSense,不过 G 家的中文广告实在太少了…每天十来个点击量恐怕都是误操作来的。因此,我想进一步在页面上增加 CPS 广告…这时,怎么放,放哪里成了一个值得探讨的命题。

如你所见,我最开始粗暴地将红包广告放在了边栏上,点的人少不说且看起来十分丑陋!所以我还是打算将它们插入到正文视图。直接用 WordPress 过滤器把内容加在正文中间或末尾处是个省事儿的办法,不过但每次修改广告还要动代码不甚安全,且灵活性不够,于是我想到了 WordPress 的区块样板功能。话说回来,WordPress 区块诞生已久我一直没认真用过,究其原因是我两个站的主题模块已经足够强大,且每当要另外构建页面时,一般都用更强大的 WPBakery Page Builder。

[ 阅读全文 ]

原文链接: https://www.shephe.com/website/wordpress-block-patterns/
版权声明: Kevin's Space 版权所有,转载请用明链标明本文地址
本站相关: 随机文章 | 站长微博 | 关于本站 | 联系站长 | 捐助作者

近期调整计划

作者 大灰
2024年5月16日 00:30
最近这几天心情挺烦躁,有时候压抑,有时候暴躁的很。真不知怎么了做事也特别没有耐心,也许是太多事压在心头闹的! 试了新的wordpress自带主题,感觉还蛮不错的,配置起来还不是很麻烦。 最近网站的一些调整: 1. 打算把文章别名改为数字ID,因为有时候文章名会重复,也懒得在一次次修改这个拼音别名了。(毕竟新版wordpress已经很好了,别名终将成为过去,必须接受新的事物。)-待定 2. 彻底修改图床程序,现已改为wordpress,图片链接地址不变。-已实现 3. 准备取消自建的统计?统计了又有什么用?CF自带的也挺爽,折腾这些多余的没啥作用。-待定 4. 有计划取消自建的RSS,2-3究其 […]

近期的主题更新

作者 sys
2024年5月11日 23:23

当前自用的 WordPress 主题 Slocks 自上线以来,一直也没间断调整代码。业余无暇,就少改一改,最近时间宽裕,就多修了一修。今天有兴致发篇日志,记录一下最近的改动,巧合的是,搜出来主题发布官宣的文章,居然正好是两年前的今天,2022 年 5 月 11 号。

主题更新

这种感觉,虽然不像从压箱底的换季衣服兜里摸出一百块钱来那么洋洋得意,也不是丢了手机又失而复得那么轻松释然,更不如自己从无意之间发现自己于无意当中购买了自己在无意选择的几个号码作为幸运数字的彩票中了头奖那么欣喜若狂,但是看到这种没有多少意义的冥冥注定,我的心底还是泛出一丝波澜来。当然,我是记得那篇文章是 5 月份发布的,点开之前也闪念而过会不会是刚好两周年,那也仅是闪念。可尽管有了这闪念作为一点心理准备,当注视着这精确吻合的月份和日子,我的心底还是泛出一丝波澜来。

神奇。

两周年过去了,我的折腾劲头仍旧未减当年,不过倒是熟练了许多。而有了 AI 的加持,我的 Coding 时间也些许变成了“怎么当好一个提问者”。这里往下,记录都在哪里动刀。

第一处

oEmbed 站内文章样式定制。这是直接在编辑器贴上站内链接,就会生成一个文章块(还是叫卡片?)样式的文章链接,看本文紧挨第一段文字后的展示。oEmbed 当然不仅用于展示站内链接,还有国外各大类似于 Youtube 一样的视频站、社交媒体站等,就是说只要贴一个链接,WordPress 就会自动把嵌入到文章的媒体、链接样式做好了,雅。对我有什么用?貌似无,仅把这个功能还原出来。之前,是禁用了 oEmbed 功能相关的 js 资源输出。所谓样式定制,仅仅是用 css 把默认最大 550px 的宽度调整成 100% 了。

第二处

留言板和链接,这两个页面合二为一。作为非 PO 文的留言入口,留下一个足矣。除了删除原有的留言页,这里还涉及到一个评论迁移的问题。迁移成功后,当页的评论数量统计错误,编辑页面重存一下就好。这里是从 GPT 索取的代码,把留言板的评论迁入链接页:

UPDATE wp_comments SET comment_post_ID = '链接页ID' WHERE comment_post_ID = '留言页ID';

此外,链接页里,链接的样式现在改成了按钮,布局使用 Bootstrap 的网格类,也做了下优化。

第三处

代码高亮,从 SyntaxHighlighter Evolved 插件替换为主题原生支持的 Prism.js。我想,对于折腾 WP 主题的用户,代码高亮功能是必不可少的。不论是记录、还是科普,文章页上代码的字体和颜色,如果跟普通文字混为一谈别无二致,那就如同饭吃到一半掌柜的端来号称镇店美味的特色菜,客人听闻嘴里含着马上就要流出来的口水,瞪大了快要掉地上的眼珠子定睛一看:是一盘白米饭。

其实真就有这么的索然无味。我想,用这个类比来形容是极贴切,对于不折腾代码的人,可理解、可哑然。

第四处

Pingback 引用通知的启用和样式定制。在我的文章里贴上你的文章链接,你的文章评论区会出现一条评论,文字内容是我的文章题目和我的站名,并将文字赋链接,地址是我的文章,目的是告诉你:我引用你的文献了。我发布文章,就会自动 Ping 引用的链接,对方在评论区显示出来我的链接就是 Pingback。出于对垃圾评论控制、和莫名原因的考虑,多数站点禁用此功能。我亦把它启用起来,并在 comment walker 当中编写了输出的 html 结构、定制了 css 样式。

北京环球影城一日游

现在,这篇文章里边就有一条 Pingback,评论区见。显然,这属于站内 Ping。依据 WP 官方,使用 Slug 以避免站内 Ping。

第五处

评论 Ajax 提交及翻页的细节改进。完全基于 /wp-includes/js/comment-reply.js 的代码添加了 Ajax 评论提交、完善了评论表单移动的功能,而评论提交/翻页也均使用的 WordPress 的原生 Ajax 处理方式,维护和定制都方便多了。

第六处

这本质上不算一处,而应称为例行更新。引用的各种库文件,通常在放出新版后,更新到主题中。当前有 BootstrapFancyBox UIFont Awesome,当然还有业已停更的 Javascript-MD5、和 Prism.js,这就没办法追新了。

第七处

临时想起的,标签页里对标签的样式和布局也做了微调,也是直接套用的 Bootstrap 网格类做的调整。

结语

磨磨蹭蹭近两小时,文赶紧发了,不然时间到了明天再发,那就不是两周年了。

使用 Bing 每日图片作为网站首页背景

作者 Kevin
2024年5月8日 16:32

使用 Bing 每日图片作为网站首页背景,也是来自于上一个主题的想法。其实方法相对简单,即利用必应公开的 API 调用每日图片再设置为 Background 就行了,不过我在使用时还叠加了网格和黑色的半透明像素,这样才能让白色文字看得更清晰不至于混乱。废话不说直接上代码您各位参考:

// 获取必应每日图片的URL
function get_bing_daily_image_url() {
    // 必应API URL,用于获取每日图片的JSON数据
    $bing_api_url = 'https://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1';
    
    // 设置缓存键值,用于存储和检索图片URL
    $cache_key = 'bing_daily_image_url';
    
    // 尝试获取缓存中的图片URL
    $img_url = get_transient($cache_key);

    // 如果缓存中没有找到图片URL,则请求必应API
    if (!$img_url) {
        // 使用WordPress函数发送HTTP GET请求到必应API..... [ 阅读全文 ]

原文链接: https://www.shephe.com/website/set-bing-daily-image-homepage/
版权声明: Kevin's Space 版权所有,转载请用明链标明本文地址
本站相关: 随机文章 | 站长微博 | 关于本站 | 联系站长 | 捐助作者

代码实现 WordPress 漂亮的标签归档页面

作者 Kevin
2024年5月6日 20:33

前段时间把 WordPress 文章归档页面、网站分类、文章标签以及导航菜单等进行了优化,但目前在实际使用过程中仍觉得“分类”不够清晰。思来想去,还是觉得用“标签归档”来作为分类导航比较直观。于是 Kevin 着手创建一个新的 WordPress 标签归档页面…嗯,还是觉得原来 Tiny 主题用的标签页好看,扒下来吧。

代码实现 WordPress 漂亮的标签归档页面
[ 阅读全文 ]

原文链接: https://www.shephe.com/website/wordpress-tags-archvie-page/
版权声明: Kevin's Space 版权所有,转载请用明链标明本文地址
本站相关: 随机文章 | 站长微博 | 关于本站 | 联系站长 | 捐助作者

截断 WordPress RSS 输出,并添加版权信息

作者 Kevin
2024年4月28日 08:48

前两天一网友留言说本站以前的 RSS 没法正常获取图片了,网站更新后也没有看到新的 RSS,请求更新一下…我粗略估计是因为近期开启了图片防盗链,导致大家在 RSS 浏览器里边都看不到我的文章图片,影响了阅读体验。为何这么做不用细说,因为我至少看到一个站点在采集本博,流量似乎比本体还高,开启图片防盗链也是无奈之举啊……

那么干脆一不做二不休,反正 RSS 阅读器里面观看效果都不好,何不如截断 RSS Feed 输出,并且在输出的内容后边添加版权信息,引导读者来到源站打开呢?一通折腾现在我 WordPress RSS 的效果如下图:

截断 WordPress RSS输出,并添加版权信息[ 阅读全文 ]

原文链接: https://www.shephe.com/website/wordpress-rss-append-copyright-and-truncate/
版权声明: Kevin's Space 版权所有,转载请用明链标明本文地址
本站相关: 随机文章 | 站长微博 | 关于本站 | 联系站长 | 捐助作者

WordPress 文章星级评分插件哪款好(2024)

作者 Kevin
2024年4月27日 08:51

前儿在搜资料的时候,看到一个结果页(Google SERP)有星级评分,于是想着自己也搞一个…稍一对比后装上了我熟悉的 kk star ratings 评分插件,然后就是各种调试、修改样式表、修改图形和位置。折腾了半天形成了下方截图的样子,我省去了文字提示,把 Kevin's 主题原有的心心点赞伪装成了个按钮排进了标签中,星级评分部分则排在了同一行的右侧。同时,为了页面颜色统一和美观,我还把星星换成了灰色……

这样子虽有取舍但总体看着还行,我想差不多就这样了吧…结果忽然在开发者工具中发现页面数据查询量竟高达 180 次,这还了得?!我前几天好不容易才用上了Memcached 缓存把查询量降到 30 以下!于是又一通折腾,发现 kk star ratings 插件不仅本体消耗资源高,而且似乎会阻止 Memcached 内存缓存,让我站访问速度明显慢了一截。因此,我又下载体验了多款 WordPress 文章..... [ 阅读全文 ]


原文链接: https://www.shephe.com/website/wordpress-post-star-rating-plugin/
版权声明: Kevin's Space 版权所有,转载请用明链标明本文地址
本站相关: 随机文章 | 站长微博 | 关于本站 | 联系站长 | 捐助作者

wxsync:采集微信公众号图文插件

作者 从良未遂
2024年4月20日 09:17

标准云微信公众号文章采集与自动同步插件wxsync,手动采集永久免费,自动同步采集可按月收费。下载和付费地址:http://std.cloud。

插件支持wordpress和zblog平台,支持公众号历史文章链接付费导出。

搞一个垃圾站,偶尔需要采集微信公众号文章,由于使用频率不高,所有没有选择使用付费的WPJAM GrabMP。实际使用下来,wxsync已经完全够用,能够去除微信公众号文章里的大量无用代码,还可以自动保存图片到本地。我找过很久,免费且实用的插件并不多,且用且珍惜。插件相关功能如图所示,不一一介绍,基本都很直观。

出售企业主题Factory

作者 从良未遂
2024年4月20日 07:45

之前一个朋友想让我给他的企业做个官网,由于水平有限,直接入手了XinTheme的付费主题Factory。后来朋友取消了建站计划,导致这个付费主题一直无用武之地,现在决定拿来出售,相关信息和说明如下:

1、官网Factory介绍

2、我购买的是1个站点授权,原价468,现出售价300。

3、为确保安全,我直接把官网账号密码给买家。

4、证明信息如下图所示,有意者留下微信号。

 

❌
❌