CDN のライブラリを使う
JavaScript や CSS のライブラリは、wwwroot にファイルを置く代わりに、拡張 HTML で jsDelivr などの CDN から読み込めます。 ファイル名から言語文字列を除いた HtmlHeaderBottom.html / HtmlBodyBottom.html を使うと、すべての言語に適用されます。
CDN を使う利点
wwwroot の中にライブラリのファイルを置く方法では、ライブラリ自体のバージョンアップや、プリザンターのバージョンアップへの追従に手間がかかります。 パブリックな環境であれば、ライブラリを配信している CDN サービスを使うことでその手間を減らせます。
設定方法
拡張 HTML の HtmlHeaderBottom と HtmlBodyBottom を使います。
| ファイル | 出力される位置 | この例で記載するもの |
|---|---|---|
HtmlHeaderBottom.html | head の末尾(プリザンター本体の CSS の後) | JavaScript(script タグ) |
HtmlBodyBottom.html | body の末尾(本体の JavaScript・サイトのスクリプトの後) | CSS(link タグ) |
一般的な「CSS は head、JavaScript は body の末尾」とは逆の配置ですが、出力位置から見て意図のある配置です(HtmlTemplates.cs、同 L136-L155)。
HtmlBodyBottomはサイトのスクリプトより後に出力されるため、ここに置いた JavaScript ライブラリはサイトのスクリプトを読み込む時点ではまだ定義されていません。サイトのスクリプトから使うライブラリはHtmlHeaderBottomに置きます。ただしheadの時点では本体の jQuery がまだ読み込まれていないため、jQuery プラグインのように jQuery に依存するライブラリはHtmlHeaderBottomには置けません。HtmlBodyBottomの CSS は本体やサイトのスタイルより後に読み込まれるため、同じ詳細度のセレクタなら本体側の指定を上書きします。
言語ごとのファイル名
公式マニュアルでは HtmlHeaderBottom_ja.html / HtmlBodyBottom_ja.html のように言語文字列を含むファイル名が記載されています。確認したソースでは、ファイル名の _ 以降が言語として扱われ、言語文字列を除いた HtmlHeaderBottom.html / HtmlBodyBottom.html は言語に関係なく出力されます(Initializer.cs、Displays.cs)。
例: sweetalert2 を読み込む
メッセージボックスの表示によく使われる sweetalert2 を例にします。jsDelivr のページに表示されるリンクを、それぞれの HTML に記載します。

<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11.22.2/dist/sweetalert2.all.min.js"></script><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/sweetalert2@11.22.2/dist/sweetalert2.min.css">複数のライブラリを組み込む場合は、これらのファイルに追記していきます。