重塑StevePavlina.com网站 — 第七篇:今日焦点

这篇文章是《重塑StevePavlina.com网站》系列的第七篇,共有九部分。

WordPress插件

在这个设计项目中,除了我自己开发的两款WordPress插件外,还有一大部分工作是关于研究、测试、挑选和配置其他高品质插件,以便在我的网站上使用。

写这篇文章的时候,WordPress的插件库里已经有超过44000款插件,数量之多,单靠个人很难逐一了解。因此,在寻找优质插件时,我遵循了几个简单的原则:

  • 个人推荐 — 我非常看重他人的推荐,尤其是其他开发者和WordPress用户的意见。在拉斯维加斯每月的WordPress聚会上,我已经了解到很多不同的插件。聚会场地有免费的网络,而且网速很快,大家分享插件使用体验时,我总是忍不住立刻在笔记本上试用,何必等到以后再说呢?

  • 高下载量 — 我通常避免使用下载量少于一万的插件。对于那些下载量过十万的插件,我会更加关注。使用人数多的插件往往是个好兆头。我通过WordPress的插件目录或者我的网站后台进行关键词搜索,都能找到一些不错的插件,然后查看高下载量的插件列表。

  • 高评分 — 如果一款插件的用户评分低于4星,我通常不会考虑试用。我还会留意每款插件的评分次数。如果评分数量不够几百,我更希望看到至少有几十个评分记录。如果只有几次评分,我就直接跳过这款插件。

  • 最近更新日期 — 如果看到一款插件几个月甚至几年没有更新,我会怀疑它是否被开发者遗弃。这可能意味着使用这款插件会面临安全和兼容性风险。我偏好那些最近有过更新的插件,说明开发者仍在维护。不过,有些插件只需添加简单功能,更新频率不高,我也会考虑这种情况。

以上信息都可以通过查看WordPress插件目录中每款插件的公开信息获得。这些都是基本的指导原则,对于使用过一段时间WordPress的朋友来说,算是常识。通过这些规则,我能避免随意选择低质量插件的风险。

我也会尽量避免那些存在过度锁定问题的插件,使用一段时间后,用户将很难转向其他更好的插件。我常常回避那些在文章中插入短代码的插件,原因也是如此。一旦卸载这些插件,短代码就失效,读者会看到我文章里的代码碎片,那时我得逐篇清理这些代码。

我寻找的插件,希望它们能长久使用。我会问自己,这款插件五年后还在吗?如果心里没底,我就会考虑其他选择。不过我也会定期回头查阅看似有前途的插件,以验证它们的持久性。

有些插件可以在不到一分钟内安装激活,并且无需配置就能添加功能。还有一些插件需要基本的设置,用户需要自定义选项。更复杂的插件则可能有多个配置界面。我一般会在安装后迅速检查所有选项并进行个性化设置,这样能帮助我理解插件的功能。有时候如果想扩展功能或修改内置选项,我会通过Google搜索来实现,比如让某个插件适用于我网站的新闻区块,而不是仅限于普通博客文章。很多插件都可以修改,但这通常需要一些额外技能,标准文档里可能没有说明。

接下来,我想跟大家分享一些我使用的具体插件,以及我选择它们的理由。

Jetpack

Jetpack是一套由WordPress团队创建和维护的插件集合。简单来说,Jetpack为像我这样的自托管博客提供了许多原本只在WordPress.com上可用的插件功能。

安装Jetpack后,你可以自由启用或禁用其中的每个插件。大部分Jetpack插件都是免费的,还有一些优质的付费选项。目前我只在使用Jetpack的免费插件。

我不会一一介绍自己使用的每个Jetpack插件,因为大部分都很基本,但我会分享一些重要的插件。

其中,Photon是Jetpack中的免费内容分发网络(CDN),它通过将网站的图片分发到全球不同的服务器,来提升图片加载速度。由于我的网站图片不多,所以我并没有明显感受到速度提升,但对于图片量大的网站,这个插件会非常实用。只需点击一下就能启用,使用起来非常方便。

Protect插件可以帮助保护你的网站免受暴力破解。根据我的数据显示,Protect插件在过去三周内阻止了超过5300次的恶意登录尝试,大部分都是来自于自动程序,它们会在网上寻找防护薄弱的WordPress博客。稍后我会在这篇文章中分享更多关于安全的内容。

Monitor插件用于监测网站的宕机时间。如果你的网站因为某种原因下线,Jetpack的服务器将在几分钟内发送邮件通知你。

Subscriptions插件则允许人们通过电子邮件订阅你的博客。我最近刚添加了这个功能,如果你有兴趣,现在就可以通过邮件收到我的新博客文章。

Jetpack还有许多其他功能,我鼓励你亲自去探索一下。如果你想将网站与社交媒体账户关联,一些插件会特别有用,比如可以自动将新博客文章的链接分享到你的Twitter和Facebook账户。

相关博客文章

有一种插件可以在每篇博客底部添加相关文章。读者在看完一篇文章后,可能还想继续阅读相关主题的内容。我多年来一直使用这种插件,很多人告诉我,这也是他们在我网站上长时间阅读的原因之一。

几年前,一个年轻人告诉我,他在寻找自杀方法时,无意中发现了我的网站,最后一夜间阅读了我5-6篇文章。在看完那些文章后,他感到生活有了新的目标,决定继续活下去。因此,我非常重视网站的这项功能。

我之前用的插件似乎已经停止开发,所以决定寻找一款仍在维护中的插件。

我最终选择了一款流行的插件——Contextual Related Posts。安装和配置都没有问题,但无论我尝试了多少不同的解决方案,始终无法让它生成正确的相关文章。它总是会显示几乎完全相同的推荐,文章之间的关联性也很差。在网上寻找帮助时,发现其他人也遇到过类似问题,除了我尝试过的方法,比如重新生成索引文件和安装其他插件,似乎没有其他有效的解决办法。再加上它消耗计算资源的情况,最终我决定放弃,寻求替代方案。我担心即使它现在能正常工作,未来也可能会出现问题,因此选择了更可靠的选项。

最终,我选择了Jetpack中的Related Post插件,它的推荐效果非常好。Jetpack会将你文章的内容上传到云服务器进行处理,然后在你的网站上显示最终结果。生成的推荐结果对于每篇文章来说都很不错。上传完索引后,推荐结果通常在一小时内就能看到。

有人对Jetpack将所有文章内容上传到服务器处理表示担忧。但如果你的文章已经公开发布,这种做法又有什么关系呢?任何人都可以轻易地从公开网页上抓取你的内容,网上也有很多工具可以做到这一点。在我看来,这种担忧有些多余。

不过,遗憾的是,Jetpack推荐的相关文章展示风格与我新网站的视觉风格冲突很大。每篇相关文章都放在单独的框架里,我觉得这种布局显得复杂且不美观。我试着用自己的CSS代码调整布局,结果发现这项工作相当困难。后来我意识到可以禁用它的所有CSS,然后直接用我的代码替换,这样做反而简单多了。而且我还把Jetpack默认的相关文章数量从3篇增加到7篇,这样大家可以有更多选择,毕竟只有三篇看起来实在是太少了。

流量数据

如果你喜欢查看数据,用于WordPress的Google Analytics Dashboard(谷歌分析仪表盘)是个不错的插件。使用前你需要先设置Google Analytics账户。我用这款插件已有几周,帮助我更好地理解网站的流量状况。它还提供一个WordPress管理条,可以让我实时查看任何页面的流量数据。

刚开始写博客时,我非常在意流量数据。但几年后,对于这些数据变化渐渐感到无聊,几乎不再查看,常常是连续6-12个月才看一次。现在我的新网站上线后,关于人们如何与这个网站互动,以及大家花最多时间阅读的内容,我又重新产生了兴趣。

仔细分析自己网站的数据后,我发现了一些有趣的访客模式,比如:

  • 访问我网站的前10个国家依次是美国、英国、加拿大、印度、澳大利亚、德国、菲律宾、南非、中国和新加坡。大约44%的流量来自美国。

  • 47%的访客使用桌面或笔记本电脑访问,45%通过手机访问,还有8%是通过平板电脑。

标题:访客数据背后的故事:你可能不知道的那些小秘密

你知道吗?在通过手机访问我网站的朋友中,超过一半的人都是用苹果的设备。挺有意思的吧?

而且,46%的访客是女性哦,真是个多元化的群体!

说到年龄,61%的访客都在18到35岁之间,看来年轻人对我的内容特别感兴趣。

在浏览器的选择上,49%的人使用Chrome,31%用Safari,还有7%选择了Firefox,真是各有所爱。

现在我网站上最火的页面是《价值观列表》,这个列表还被不少书籍引用呢!紧接着是《如何在30秒内入睡》,第三名则是《两相睡眠》。

有趣的是,每当美国进入夜晚,跟睡眠相关的文章访问量就会猛增。你想过吗?

最给我带来流量的社交媒体是StumbleUpon,Facebook和Twitter加在一起也没它厉害。Reddit也是个不错的引流来源。从我开始写博客以来,StumbleUpon给我带来了成千上万的访客。

有个小笑话,每天大约有500到600人会点开我写的《如何煮糙米饭》,这篇文章内容简单得让人难以置信,但显然很多人都在找这篇文章。实际上,我的很多热门搜索词都和糙米饭有关!这也激励我在2012年写了续集《终极拌饭》,虽然饭做得更好吃,但受欢迎程度却不如前者。

与性相关的文章总是特别火,尤其是《主仆游戏玩法》,它常常出现在访问排行的前十名里。虽然大家都爱看这样的内容,但很少有人愿意提起、分享或链接到他们的社交媒体上。看来这只是我们的小秘密呢。;-)

如果你对数据感兴趣,或者想提升你网站的流量,市面上有很多数据插件可以选择哦。

关于搜索引擎优化

有些人认为要做好SEO(搜索引擎优化),就能解决所有流量问题。但我更在意的是HVO:人类访客优化。我一直以来的写作方法都是为真实的人而写,而不是只顾着迎合电脑的算法。这样一来,网站在搜索引擎的表现也不错。

这些年来,我见过无数SEO技巧,很多我都懒得去理会。我觉得Google迟早会淘汰那些想钻空子的优化手段。与其花时间在这些上面,不如专心帮助人们成长,反而省心不少。这样写出来的内容,自然也能吸引到不错的流量,搜索引擎的流量只是另一种推荐而已。

以前SEO专家们常说,写长文是个错误,建议写300到500字的文章能提高排名。如今又反过来告诉大家,2000字以上的文章更有优势。Google现在也不再推荐短文,毕竟很多内容工厂都在快速生产这些垃圾文章。

与其让自己陷入SEO的游戏,不如专注于为真实的人创造价值,这样更长久、更有效。如果你让网站对人们更有用,不断提升内容质量,推荐机会和流量自然会找上你。

值得庆幸的是,现代的SEO技巧越来越远离那些阴险的手段,而是向与Google合作的方向发展。我认为,诚实的SEO才是正道,避免那些伎俩,你迟早会为此付出代价。

如果你要用任何SEO策略,首先要给文章起个清晰合理的标题。选择标题时不要太聪明或迎合大众。如果我写一篇关于感恩的文章,我就会直接用《感恩》这样简单明了的标题。写《如何从个人博客中赚钱》的话,直接用这个话题做标题。让我希望读者能一眼就知道内容是什么。有时我会用个有点聪明的标题,但大多数时候,我更看重清晰和易懂。当我看到某个博客的文章标题像《行尸走肉》的剧集名那样时,我根本无法猜到内容,效果自然大打折扣。

只要用适合人类理解的标题,文章在搜索引擎上表现也会更好。我们还可以使用其他一些SEO技巧。与其过分关注SEO,不如想想怎么让内容对人们更有用和清晰。合理使用子标题和链接文本,既能帮助读者,也能提升搜索引擎的排名。

把你花在理解Google搜索算法的时间,转而花在理解和服务读者上吧。即使你现在只有少数读者,也要好好服务他们,他们往往会为你带来更多推荐… 除非你写的是与性相关的内容。;-)

我更倾向于将生活方式放在SEO结果之前。由于我主动避开了一些Google喜欢的做法,我的网站SEO排名可能会受到影响。比如我在2014年就停止使用Twitter和Facebook,导致Google无法验证我已经不存在的社交媒体账户。没有社交媒体链接,Google可能会对我的网站内容排名有所降低。不过,这对我来说是个合理的选择。我喜欢无需面对社交媒体的生活,这样我可以更高效地工作,减少社交上的干扰。不用理会网上的那些胡言乱语真是太好了。

另外,我仍然在博客文章的URL中包含了年月信息,文章的发布日期也显示在每篇文章的标题下方。虽然较旧的信息可能会导致排名下降,但我觉得这样对读者更友好,因为有些人想知道文章的实际发布日期。我个人在阅读他人网站的文章时,也很喜欢看到发布日期,所以我把它放在标题下方,方便大家查看。

如果要推荐一个插件,那就是Yoast SEO,这是目前用于WordPress网站最受欢迎的SEO插件。我安装了它,但并没有过多使用,基本上让它自动运行。它有很多值得探索的功能。我特别喜欢它可以为每个页面输入元数据描述,这样Google就会显示那段简短的描述,而不是随便抓取某段文字。

还有一点我很喜欢Yoast SEO,它内置的网站地图生成器。网站地图就是你网站上所有内容的完整网址列表。通过这个,搜索引擎可以轻松找到你的网站,并为所有公开内容建立索引。这样,即使你还没链接某些页面,Google也不会错过。

最开始我试过Jetpack的网站地图插件,但因某些原因,它限制了1000个链接的上限。Jetpack,这个做法简直太愚蠢了!很多WordPress网站,包括我的,都有超过1000个网页。因此,用Jetpack生成的网站地图总是不完整。我试着找代码来扩展这个限制,但最终无功而返。幸运的是,Yoast SEO的生成器没有这种限制,所以我选择用它来生成自己的网站地图。

减少404错误

为了确保旧的链接不会消失,我谨慎地将旧URL映射到新URL,并在.htaccess文件中添加重定向。虽然有插件可以完成这个工作,但我更喜欢直接编辑.htaccess文件,这样对我来说更方便。

这其实很简单,只是需要花点时间。我得仔细检查旧网站上的每个URL,决定如何映射到新网站。我把需要转换的所有URL列成清单,逐个处理。大部分都是旧的HTML文件,现在要由新网站的WordPress来管理。

我还清理了.htaccess文件,把重定向分成不同的区块,并加上注释,这样维护起来更轻松。

我很高兴Yoast SEO插件与Google Search Console结合得很好。通过它,我发现很多人因为使用错误的URL而出现了“404页面无法找到”的错误。得知这些信息后,我可以对.htaccess文件进行编辑,添加重定向规则,让大家能顺利访问正确的URL。

以下是一些错误链接的例子,输入这些链接就会得到404错误页面:

  • http://www.stevepavlina.com/articles/do-it-now.htmEvery

  • http://www.stevepavlina.com/articles/triple-your-personal-productivity.htm;

  • http://www.stevepavlina.com/articles/courage-to-live-consciously.htmWhat

  • http://www.stevepavlina.com/about-steve-pavlina.htm/

当有人在邮件中分享链接时,如果在URL后没有留空格就开始写新句子,可能就会出现这样的错误。

这些链接不正确,用户通常会看到404错误页面。真可惜,因为我能明显看出正确的链接是什么。幸运的是,通过简单调整.htaccess文件,我可以为大家提供正确的链接,避免出现404错误页面。

这些链接其实都是指向旧网站上的HTML页面,但现在它们已经转变成新的WordPress文章和页面,URL也变了。我最开始对《现在就干》这篇文章的重定向设置如下:

RewriteRule ^articles/do-it-now.htm$ /blog/2005/11/do-it-now/ [R=301,L]

可惜的是,原来的错误链接跟这个重定向模式不匹配,导致出现了404错误。为了修复这个问题,我只需要把重定向改成这样:

RewriteRule ^articles/do-it-now.htm /blog/2005/11/do-it-now/ [R=301,L]

唯一的不同就是把$符号去掉了。这个符号的作用是告诉重定向命令,URL到此为止。去掉它后,旧URL的模式就可以在末尾继续接字符,依然能匹配到原来的链接。

如果你在想,^这个符号代表URL的开始位置(在域名和斜杠后面),那你想得没错。

你可能会好奇,为什么句号前面要加个反斜杠呢?其实在程序表达中,句号意味着可以匹配任何单个字符。加上反斜杠后,句号就特指一个句号,而不是任意字符。虽然实际上,任意字符也可以匹配句号,所以两种理解都没问题。

调整重定向规则让它更灵活,这样就能减少404错误页面的出现。很多人甚至不会意识到他们最初使用了错误的URL。

借助Yoast SEO插件的Search Console功能,或者直接使用Google Search Console,我能看到人们在哪些地方遇到了404错误。如果能想出更好的重定向规则,那就可以帮助他们顺利进入想要访问的页面,这当然是最理想的结果。

我再次强调,这其实是个“人性化的访客优化”技巧。毕竟人总会犯错。如果我们能让服务器少点死板,大家就能更容易地绕过这些错误。

缓存

由于WordPress大量依赖PHP和MySQL,如果不使用缓存插件(或者使用像WP Engine这种自带缓存的主机),网站的速度就会变得有些慢。我现在的网站运行在一台有8个CPU核心的专用服务器上,如果关闭缓存插件,服务器的负荷就会瞬间飙升。这表示服务器在处理请求时忙得不可开交,尤其在高流量的情况下,网站速度会受到明显影响。

每次访问页面时,必须运行PHP代码并从数据库中加载内容,而缓存插件则会在页面首次被访问时保存其一份副本。之后,访客可以直接查看这个副本,而不需要每次都重新生成页面,这样访问速度自然会快很多。

想象一下,你打出一页文档并打印出来需要多长时间,而复印一页又需要多久?复印速度显然比重新打字快得多。WordPress的默认设置是每次访问时都重新生成页面,而使用缓存插件后,它会保存页面副本供访客使用,只有在原始内容改变时才会更新。

我一直在用WP Super Cache这个缓存插件。它稳定、速度快,只是界面设计有点丑。尽管这个插件提供了很多设置选项,但就算看了说明文档,我还是觉得有些选项不太明白。不过如果你只用默认设置,应该也能满足需求。

还有一款热门的缓存插件叫W3 Total Cache。我以前试过,但发现WP Super Cache的速度更快。有一份详细的速度比较报告也显示,WP Super Cache在多个关键指标上优于W3 Total Cache。

如果你的网站流量不大,可能不需要缓存插件。但一旦流量增加导致网站变慢,缓存插件绝对能带来明显效果。

安全

网站被恶意入侵,真是让人心烦意乱。我之前就遇到过几次这样的情况,不光是这个网站,还有我之前运营的一个游戏发行网站。记得有一次,攻击者利用我的网站向访问旧论坛的人分发Windows恶意软件,直到一位安全研究员提醒我,我才发现自己网站被黑了。

针对新网站,我决定在安全方面加把劲。毕竟,事先做好防护总比事后恢复要轻松得多。

我现在使用的安全插件是WordFence,强烈推荐。由于不断有恶意程序在攻击我的网站,我把WordFence的设置调整得比默认更严格。一旦它发现可疑行为,就会立刻拦截那些访客。

WordFence还能实时显示攻击情况。许多攻击来自中国和俄罗斯,但也有一些源自美国。

它每天会自动扫描我网站上的文件,确保没有被恶意修改。会把我当前使用的WordPress文件版本和原版进行比对,如果发现不一致就会告警。同样,它也会对我所有的插件进行这样的检查,假设这些插件都是来自WordPress插件目录。如果你使用的主题也来自WordPress主题目录,WordFence也会进行相应检查。它还能像病毒扫描软件一样,扫描恶意软件、病毒和漏洞,一旦发现异常,就会发邮件告知我。

WordFence还有一些很棒的自定义选项,可以检测和拦截恶意入侵。我在这方面的设置比默认要严厉得多,因为提前拦截能让网站运行更流畅,为什么要让恶意程序多浏览几页呢?

我从不在WordPress网站上用默认的登录名,也不会用像自己名字的变体这样的容易猜到的名称。再加上我用的是既长又复杂的密码,所以如果有访客试图用admin、test、stevepavlina、steve、pavlina、stevep或spavlina等名称登录,都会被立刻拦截,因为我根本不存在这些账户。任何用这些名称尝试登录的行为,都被视为恶意入侵。

另外,由于网站没有评论功能,没人需要访问wp-comments-post.php文件。然而,恶意程序却经常攻击这个文件,试图发送垃圾评论。因此,我对WordFence进行了设置,一旦有程序试图访问这个文件,就会立刻拦截。只要它们试图加载这个文件,就会立即触发拦截。

在捕捉和拦截攻击方面,WordFence还有其他许多功能。例如,发现某个访客频繁访问404错误页面,那可能是他们在探测网站的漏洞。WordFence能自动识别并拦截这些访客。

通过查看WordFence记录的404错误,我能分析出恶意访客的意图。很多恶意访客都会试图探测包含下载脚本的插件,企图下载我的wp-config.php文件,从而窃取数据库的登录信息。我不太确定这样做对他们有多大帮助,因为他们仍需进入服务器才能利用这些信息。或许有些人会用相同的用户名和密码登录WordPress数据库,然而对于这些不同的账户,我都使用不同的登录名和密码,破解一个并不会导致其他账户被攻破。

我对WordFence有一点不太满意,就是它有时会因小问题发送让我紧张的邮件。有些邮件的标题像这样:[WordFence警告]www.stevepavlina.com网站发现问题。

我第一次收到这样的邮件时,心里还真有点慌,想着:哦不,我被黑客攻击了?邮件的开头也有点吓人,它会告诉我发现了一个“危急问题”。但实际上所谓的危急问题只是一款插件有可用更新。WordFence会时刻关注我的插件是否需要更新,这个功能很好,但我觉得邮件的措辞可以改得不那么让人紧张。

这种表述就像女友闯进我办公室说:“Steve!我们遇到大麻烦了!我刚刚觉得饿了!”

几天后我收到另一封WordFence的邮件,警告我服务器上有几个文件可能是恶意程序。经过检查,我发现这只是个误报。WordFence把我一些缓存文件误认为恶意文件,但其实它们都是合法的代码,属于另一个插件。

恶意入侵往往源于使用了不安全或过时的插件,所以我一直非常谨慎地更新插件,并确保使用那些声誉良好的优质插件。上一次我网站被黑,就是因为一款编码有问题的插件。我曾发现它的一些漏洞并向开发者反馈过,感觉这款插件的代码写得很马虎。我本该早点更换这个插件,但我当时依赖它来实现某项重要功能。这是我未来想尽量避免的错误。

如果一款插件存在问题,而这个问题迟迟没有被发现,即使你不启用这个插件,它的代码也可能导致网站存在安全漏洞。这也是我不愿意使用那些潜在有问题且没有定期更新的插件的原因。

我非常感激WordFence能持续监控、扫描和拦截各种攻击。只要它能防止一次恼人的恶意入侵,就已经很不错了。如果真的发生入侵,它也很可能会第一时间发现问题。

社交按钮

在我写这篇文章时,网站上并没有任何社交媒体分享按钮。不过我对是否添加这些按钮还没有定论。

一方面,这些按钮可能会让每个页面显得有些杂乱。我觉得没有它们,网站的氛围会更宁静。

但另一方面,这些按钮确实可以让人更方便地分享文章,也被很多人使用。

甚至还有人发邮件问我能否添加社交分享按钮,以便分享我的文章。显然,有些人还不知道可以复制链接并在自己喜欢的社交媒体上分享。所以我在考虑重新添加这些分享按钮是否是个好主意。

之前我在每篇文章下都放置了社交分享按钮,但在2014年停止使用社交媒体时把它们删掉了。不过如果大家需要,我可以很容易地把这些按钮恢复。Jetpack有一个社交分享插件,但默认的按钮样式太难看,我希望能调整成更适合网站的样子。

如果你对此事有自己的看法,我非常期待听到你的建议。

数据库改进

你知道吗,WordPress的数据库在最开始的时候用了一个叫latin1_swedish_ci的字符集,这可真是个奇怪的选择。后来在切换字符集的时候,很多博客作者都遇到了一些技术上的麻烦。我自己就碰到过问题,有些外文字符在我的网站上显示不正常,比如“pâté”或“jalepeño”。虽然我可以做一些临时的修复,但这次我决定彻底解决这个问题,把整个数据库转换成utf8_unicode_ci字符集。

根据WordPress的说明,这个转换过程其实蛮复杂的。在开始转换之前,WordPress还发出了一条警告:

“注意:如果你对SQL和MySQL/MariaDB一点儿都不了解,搞不好就会出事。这可真是个麻烦的编码领域……”

幸运的是,我的编码技能还不错,顺利完成了这个转换过程。

此外,我还对数据库进行了一些其他改进,比如把所有表单的数据库引擎从MyISAM换成了更现代的InnoDB,还清理了那些旧插件留下的冗余表单,解决了几个小问题。

为了清理数据库中的一些问题,我用上了Better Search Replace插件。这个插件在处理WordPress图片库中的错误URL时特别有效。我特别喜欢它的序列化搜索和替换功能,这对处理wp_postmeta和wp_options表中的特定数据非常重要。

当我需要诊断一些在错误日志中出现的SQL错误时,Query Monitor插件帮了我大忙。它能显示每个页面上正在运行的SQL请求,以及执行它们花费的时间。

其实,大多数博客作者并不需要面对这些棘手的问题。这些问题的累积,主要是因为我用了WordPress很多年,经历了好几轮更新。维护数据库就像修理一辆老车,虽然车龄有点大,但只要做好一些修复和升级,它就能跑得更顺畅。

虽然数据库的维护不是我的强项,但我还是不得不重新学习一些旧知识,尤其是SQL。我决定慢慢来,并且在每一步都做好备份。虽然我几次意外让数据库崩溃,但恢复起来也很快,只需几秒钟,所以其实没什么大不了的。我很高兴花时间完成这项额外的工作,现在的数据库状态比我刚开始处理时好多了,运行得更快,以后维护起来也会轻松很多。

虽然这个网站的数据库除了我之外没有人会看到,但清理它让我对自己的工作感到更有成就感。受史蒂夫·乔布斯的启发,我也希望在那些人们看不到的地方追求完美。保持高标准虽然需要花费更多时间,但我也渐渐理解了这样做的好处。其实,如果我对作品的每个方面都感到自豪,而不仅仅是那些显而易见的部分,这样反而更简单。全方位保持一致让事情更容易,因为同样的思维可以适用于所有部分,而不用为不同的项目切换思路。这种做法也培养了我的耐心,虽然培养耐心很难,但这是一个能带来巨大好处的品质。

更多的改进

因为有些朋友喜欢打印网站的文章,所以我写了一些额外的CSS代码,确保打印时不会包含导航元素,这样格式看起来更好。我还通过编码调整了图片的打印输出,避免超出页面边界造成拼接不完整的情况。我对FAQ页面的样式进行了调整,使其在打印时能够自动扩展内容,防止在页面间拼接的问题。通过“打印预览”功能,我可以轻松测试效果而不浪费纸张,这样的工作过程也让我学到了一些新的CSS技巧。

我还用Better Random Redirect插件在网站上添加了随机文章功能。实际上,这个功能的实现代码很简单,插件也不需要频繁更新。更棒的是,这个插件能与缓存很好地结合使用,否则大家每次看到的都是同样的文章。

由于WordPress自带的搜索功能众所周知不太好,它会按发布日期而非相关性排序搜索结果,我便用一个叫Relevanssi的插件来升级搜索功能。这个插件提供的搜索结果相关性大大提高了。而且Relevanssi还可以告诉我大家在搜索哪些关键词(当然是匿名信息,不会显示具体用户)。

目前网站上搜索的前15个关键词是:

  1. 睡眠

  2. 目的

  3. 信念

  4. 两相睡眠

  5. 工作

  6. 主观现实

  7. 多相睡眠

  8. 收入

  9. 恐惧

  10. 纯素

  11. 吸引力法则

  12. 自律

  13. 大学

  14. 金钱

我在这些话题上都有相应的文章,意味着大家应该能根据自己的搜索需求找到有用的信息。

我还注意到了一些搜索操作失败的情况,大部分是因为拼写错误,比如:lonliness(孤独)、synchonicties(同步性)、polifasic sleep(多相睡眠)、caffine(咖啡因)、archieving(实现)、disipline(自律)和aprisioners(囚犯)。这让我意识到,也许我可以让网站在搜索功能上更具弹性,更好地适应这些打字错误。

在下一篇文章中,我会分享一些关于网站速度优化的插件知识。

史蒂夫·帕弗利纳

2016.04.23

www.stevepavlinachina.com

微信公众号:聪明人的个人发展

来源:今日头条
原文标题:重新设计StevePavlina.com网站 — 第7部分 – 今日头条
声明:
文章来自网络收集后经过ai改写发布,如不小心侵犯了您的权益,请联系本站删除,给您带来困扰,深表歉意!

文章评论 (10)

  1. 夏霜柚 的头像
    夏霜柚2026-01-18 20:54

    文章中提到的插件选择标准很实用,但也许可以增加一些对新手用户的具体指导,比如如何判断插件的安全性。

  2. 佛系小熊 的头像
    佛系小熊2026-01-18 21:04

    这篇文章对插件选择的原则很有启发性,不过我还是想知道,如何评估那些不太知名但可能很有潜力的插件呢?

  3. 坦率柠檬 的头像
    坦率柠檬2026-01-18 21:14

    插件选择的方法很实用,但对于新手来说,如何快速掌握这些标准可能有些难度。建议可以附上更多实例来帮助理解。

  4. 茶北屿 的头像
    茶北屿2026-01-18 21:24

    插件选择的原则很清晰,但我觉得可以更详细地讨论如何处理那些更新不频繁的插件,是否值得尝试?

  5. 桃子仔 的头像
    桃子仔2026-01-18 21:34

    提到的插件选择标准相当实用,不过对于初学者来说,能否提供一些具体的实例或操作步骤,帮助他们更快上手?

  6. 微糖喵 的头像
    微糖喵2026-01-18 21:44

    插件选择的标准很清晰,但我担心过于依赖下载量和评分,可能会错过一些新兴优秀插件。建议可以考虑如何评估这些插件的潜力和实际表现。

  7. 许夏影 的头像
    许夏影2026-01-18 21:54

    插件选择的标准很有帮助,但我在想,如何能更好地评估那些新兴插件的实际效果呢?有时候下载量不高的插件也能提供独特功能。

  8. 羽小猫 的头像
    羽小猫2026-01-18 22:04

    插件选择的原则很实用,但我觉得可以更详细地讨论如何处理那些更新不频繁的插件,是否值得尝试?

  9. 悠白沫 的头像
    悠白沫2026-01-18 22:14

    插件选择的标准非常实用,不过能否分享一些成功案例,帮助读者更直观地理解这些原则?

  10. 周兔海 的头像
    周兔海2026-01-18 22:24

    选插件的标准很有帮助,但我觉得也应该考虑一下那些新兴插件的潜力,下载量低不一定代表质量差。如何评估这些呢?

发表评论