和A.N.R.GHG插件说bye-bye

A whimsical, crayon-style drawing for a blog header that metaphorically depicts the troubleshooting of a problematic blogging software plugin. The image feature a colorful and playful scene with a person sitting at a computer desk, looking puzzled over a jigsaw puzzle that represents the plugin, with pieces scattered and one not fitting correctly. Include a magnifying glass nearby to symbolize the search for a solution. In the background, show a bulletin board with notes and diagrams that hint at problem-solving but without any legible text. The crayon texture should be evident, giving the scene a child-like innocence, contrasting with the technical nature of the blog content. Use bright, primary colors to give the drawing a cheerful and less intimidating feel.

插件介绍

A.N.R.GHG Publishing Toolkit是一款WordPress插件,它据称可以完成以下功能:

  • 增强网页安全性:通过设置一个常量,可以阻止密码泄露的风险,也可以延长登录cookie的有效期,并在管理栏显示登录状态的图标。
  • 加载本地HTML片段:通过“Include partial”区块,可以从文件系统中加载和过滤HTML片段,并用CSS类和可配置的值替换占位符,方便批量更新和管理。
  • 显示富文本消息:可以在模板编辑器中配置一组富文本消息,并在每个页面中通过后台设置或区块设置来激活和定制。
  • 显示发布日期:可以在WordPress原生不显示发布日期的页面中添加发布日期,并可选地添加首次发布的位置,还可以添加日期元标签。
  • 为段落和列表项添加锚点:可以在每个段落和列表项前添加一个可配置的链接,该链接包含一个由内容派生的位置无关的标识符,用于生成片段标识符,也可以使用自定义的“HTML锚点”来保持标识符的稳定性,还可以保持标识符在非拉丁文字中的可读性。
  • 为标题添加锚点和编号:可以用CSS在标题前后添加编号,并在编号上添加一个回到目录的链接,还可以列出所有的标题在一个目录中,该目录可以可选地折叠和展开,还可以自动在所有包含一定数量标题的文章中插入目录,或者在特定的文章中关闭目录。
  • 解析内联注释和来源:可以将内联注释和来源解析为描述性的尾注或者参考文献式的尾注,根据它们的分隔符来区分,并在鼠标悬停时显示富文本的提示框,还可以支持六种编号系统,包括东方阿拉伯数字,还可以实时注册注释和来源,以便在整个页面中重复使用,还可以将注释和来源存储为模板,以便在整个网站中重复使用,还可以解析自由配置的分隔符,包括非拉丁文字或者只有标点符号,还可以在文章中指定特定的分隔符集合,还可以在尾注列表中指定写作方向,还可以将相同的尾注合并为一个项目,并在提示框中列出相关的锚点,还可以在点击锚点后显示一个新的标签页或窗口,还可以在尾注列表被折叠时只显示目标项目,还可以在点击任意锚点时展开完整的列表,还可以在发布确认后取消发布,还可以在混合OA期刊中从OA发布转换为通常的发布方式。
  • 显示参考文献列表:可以在“Reference list”区块中配置参考文献列表的标签、显示和写作方向,还可以将它们折叠和展开。
  • 加载网络字体:可以在设置页面中粘贴网络字体的URL,就可以加载它们,还提供了一个谷歌网络字体库的链接,和一个默认的示例URL,但默认是关闭的。
  • 编辑和存储模板:可以帮助编辑和存储模板,这些模板可以用作消息、注释和来源,以及参考文献列表,还可以导出和导入模板、设置和自定义选项,还可以自动备份模板和设置。
  • 配置生成片段标识符的规则:可以帮助配置生成片段标识符和可选的别名的规则,允许使用大写、自定义转换、可配置的最大长度。
  • 减少使用短代码:可以使用多样化和国际化的分隔符来替代短代码。
  • 保留ASCII引号:可以选择关闭WordPress默认的WPTexturize功能,使得ASCII引号在代码区域外也保持原样。
  • 使用可配置的滚动偏移量:可以使用可配置的滚动偏移量和可选的CSS平滑滚动。
  • 为特定页面定制样式:可以将文章或页面的别名作为一个类添加到body元素中,以便为特定的页面定制样式。
  • 清理多余的元标签:可以清理多余的元标签和移除公共页面上的元素。
  • 提供四个古腾堡区块:可以提供四个古腾堡区块来帮助配置消息、参考文献列表、注释和来源列表,以及目录。
  • 添加一个可配置的后台设置框:可以添加一个可配置的后台设置框,用于更细致地配置各种功能。
  • 在一个可搜索的页面中显示设置:可以在一个可搜索的页面中显示设置,有三个级别的详细程度。

笔者安装这款插件,主要是冲着自动生成锚点的功能,以及为注释和来源生成角标、脚注列表的功能。一开始插件运行得看起来不错,只是后来慢慢出现一些问题了。

站点CSS样式崩坏

今年7月份开始,站点贴文的题图[也就是贴文题目头图,通常在贴文的标题上方或下方]尺寸经常超出样式设定好的范畴。鄙站给题图设定了一定的长、宽值,但是在那段时间,题图都以完整尺寸显示在那边,遮挡到标题文本、正文文本,甚至侵入到其他区块。非常不美观。

除此之外,文中插图的题注文字也消失掉了。

笔者猜测是CSS样式发生了些错误。于是开始排查插件,发现是A.N.R.GHG Publishing Toolkit插件的新版本导致的bug。回退到了1.10.0版本,则正常了。于是暂时不敢升级了。(根据笔者《日记》〈2023-07-05〉篇的记录。)

特定语言的公开贴文无法访问

鄙站有启用Polylang Pro插件,以实现多语言贴文的显示与切换功能。读者朋友们可以通过访问页面底部的语言切换栏体验之。

而从今年10月开始,鄙站文言文的公开贴文(ISO语言代码为lzh)无法访问,一点进去,则报错说站点错误。

从服务器站点日志来看[自托管Apache2站点日志一般位于/var/log/apache2/domains。以鄙站为例,则日志文件名为sanguok.com.log。为了确定问题的具体原因,可以从以下几个方面来分析日志:错误日志,查看是否有错误消息,如内存不足、数据库连接失败等;访问模式,检查是否有异常的流量模式,如短时间内大量的访问请求等;请求耗时,分析响应时间较长的请求,看看是否有特定的模式或页面;资源使用,观察在访问缓慢的时候服务器资源使用情况。],表现为500错误频繁出现,可能是由于某种资源问题或代码错误。

再看站点错误日志[以鄙站为例,则日志文件名为sanguok.com.error.log。],表明有PHP警告:插件anrghg在尝试访问未定义的数组键anrghg_alternative_sanitize_title_active时出现问题。这可能是由于插件编码不当或者在某些情况下未能正确处理数据。

结局:卸载

既然屡次出现问题,都指向A.N.R.GHG Publishing Toolkit插件,则尝试禁用之。果然问题解决,文言文的公开贴文可以访问了。

屡屡出现问题,终于决定卸载。草就本贴,幸网中诸君参考。

%d 位部落客按了讚: