论如何优雅地在WordPress中写Mathjax公式

目前常见方案及其劣势:

  1. 使用Mathjax-Latex插件或在网页的header文件中加Mathjax代码。劣势在于可能需要在网页端写文章,且公式编辑不如直接在Markdown编辑器(例如Typora)中写Latex方便,且行内公式不能直接使用$…$(Mathjax的通病),对于大量使用公式的文章非常麻烦。
  2. 使用Markdown插件如WP Githuber MD编辑,优势在于可以直接在本地写Markdown文件后粘贴过去,且有Mathjax等公式的在线支持。但WP Githuber MD插件对公式的支持并不完美,此外,本站考虑到还有以前含有公式的文章,并不希望网站完全依赖于此编辑器。

本站目前采取的方案:

本地文章编辑(Typora/VS code)+Mathjax-Latex插件(提供公式支持,也可以在header文件中插入代码)+WP Githuber MD插件。

步骤:

  1. 本地把文章和公式编辑完成。
  2. 在本地把Latex行内公式$…$替换成Mathjax格式,使用正则表达式替换:
对于:$E=mc^2$
查找:(\$)(.*?)(\$)
替换:\($2\)
得到:\(E=mc^2\)

显示:\(E=mc^2\)

  1. 把替换后的文本粘贴到WP Githuber MD的编辑窗口。(直接粘贴到区块编辑器会吞掉文本中的“\”下划线,对公式影响很大,且会识别部分公式为短代码)。
  2. 由于WP Githuber MD对公式的支持有缺陷,直接预览会有部分问题。在保存草稿后需要转换为区块编辑器,预览无误后即可发表。

其他:

禁用WP Githuber MD插件后,用WP Githuber MD编辑的文章仍可正常显示。平时不需要大量输入公式的时候可以禁用,直接使用区块编辑器。

古腾堡区块编辑器是WordPress 5.0版之后发布的,现在还有许多bug。目前WordPress以区块编辑器为未来方向,且区块编辑器已经有很多明显的优势,希望未来能直接粘贴公式到区块编辑器中。

这已经是笔者现阶段能找到的最优雅的在WordPress中使用Mathjax公式的方法了。

作者: 公子小白

SOS团团员,非外星人、未来人、超能力者。。。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注