KaTeXをWordPressサイトに導入する方法を説明します.
1. WordPressのテーマのfunctions.phpファイルを編集
※ ここでは function.php を直接編集する方法を紹介しますが,必要に応じて子テーマを作成して行なってください.
まず,WordPressにログインし,メニューバーから「外観」>「テーマファイルエディタ」を開きます.
テーマファイルの中から,「テーマのための関数(functions.php)」をクリック.
以下のコードを「functions.php」の末尾に追加します.
このコードはKaTeXライブラリとスタイルシートをサイトに組み込み,ページの数式を自動的にレンダリングするためのものです.
// KaTeXのスタイルシートとJavaScriptライブラリをWordPressに登録します.
wp_enqueue_style('katex-css', "https://cdn.jsdelivr.net/npm/katex@$katex_version/dist/katex.min.css", array(), $katex_version);
wp_enqueue_script('katex-js', "https://cdn.jsdelivr.net/npm/katex@$katex_version/dist/katex.min.js", array(), $katex_version, true);
// KaTeXの自動レンダリングスクリプトを登録します.このスクリプトは数式を自動的に検出し,レンダリングします.
wp_enqueue_script('katex-auto-render', "https://cdn.jsdelivr.net/npm/katex@$katex_version/dist/contrib/auto-render.min.js", array('katex-js'), $katex_version, true);
// KaTeX用の化学式拡張スクリプトを登録します.これにより、化学式もサポートされます.
wp_enqueue_script('katex-mhchem', "https://cdn.jsdelivr.net/npm/katex@$katex_version/dist/contrib/mhchem.min.js", array('katex-js'), $katex_version, true);
}
// WordPressのスクリプト登録フックに,上記の関数を登録します.
add_action('wp_enqueue_scripts', 'add_katex_scripts_and_styles');
function run_katex_auto_render() {
?>
// ページ読み込み完了後に実行されるスクリプトです.これにより,ページ内の数式がKaTeXを使用してレンダリングされます.
<script>
document.addEventListener("DOMContentLoaded", function() {
renderMathInElement(document.body, {
// 数式を文書に対して左寄せにします.
fleqn: true,
// レンダリングする数式のデリミタを設定します.
delimiters: [
{left: "$$", right: "$$", display: true},
// ディスプレイモード(ブロック表示)
{left: "\\[", right: "\\]", display: true},
// ディスプレイモードの別の形式
{left: "$", right: "$", display: false},
// インラインモード
{left: "\\(", right: "\\)", display: false}
// インラインモードの別の形式
]
});
});
</script>
<?php
}
// WordPressのフッターアクションに,数式の自動レンダリング関数を追加します.
add_action('wp_footer', 'run_katex_auto_render');
2. WordPressサイトでKaTeXをテスト
WordPressのエディタで新しいページを開き,KaTeXの数式を追加してみましょう.
インラインモードは,段落中に$...$
,または\(...\)
で囲みます.
$x - y$
\(ab + cd\)
出力:
$x-y$ \(ab + cd\)
ディスプレイモードは,段落中に$$...$$
,または\[...\]
で囲みます.
$$x-y$$
\[ab + cd\]
出力:
$$x-y$$ \[ab + cd\]
これで,WordPressサイトにKaTeX導入完了です!