メインコンテンツにスキップ

Docusaurus 2.3

·3分で読めます
Sébastien Lorber
Docusaurusメンテナー、This Week In React編集者

Docusaurus 2.3 を発表できて嬉しく思います。

アップグレードは簡単です。当社の リリースプロセスに関するドキュメント で説明されているように、マイナーバージョンは セマンティックバージョニング を尊重しています。

Docusaurus 2.2 social card

ハイライト

Google Tag Manager プラグイン

Google Tag Managerは、高い柔軟性を実現するタグ管理システムです。これにより、アナリティクスチームやマーケティングチームは、他のサードパーティ製のトラッカーを簡単にロードし、アナリティクスタグを発火させることができます。

既存の gtag.jsプラグイン と共に、またはその代替として使用できる @docusaurus/plugin-google-tag-manager パッケージが追加されました(どちらのソリューションを使用するかを理解するには、このドキュメント を参照してください)。

Googleがユニバーサルアナリティクスを終了します

Googleは2023年7月1日にユニバーサルアナリティクスの提供を終了し、ユーザーにGoogle Analytics 4への移行を促します。

したがって、既存の @docusaurus/plugin-google-analytics パッケージも非推奨にします。Docusaurusユーザーは、新しいGoogle Analytics 4プロパティを作成し、gtag.jsプラグイン、または Google Tag Managerプラグインに移行する必要があります。詳細や質問については、Docusaurusの専用issueを参照してください。

タブのクエリ文字列サポート

選択したタブをクエリ文字列パラメーターにリンクできるようになりました。タブが選択されると、ブラウザのURLに ?qs-param=tab-value 検索パラメーターとして保存されます。

この機能により、ページ読み込み時に事前に選択される特定のドキュメンテーションタブへのディープリンクが可能になります。

groupId propと併用すると、クエリ文字列のタブ値が localStorage 値よりも優先されます。

仕組みを理解するには、ドキュメントと以下のデモを確認してください。

<Tabs groupId="current-os" queryString>
<TabItem value="android" label="Android">
Android
</TabItem>
<TabItem value="ios" label="iOS">
iOS
</TabItem>
</Tabs>
http://localhost:3000

Android

ネストされたadmonition

外側のadmonitionに追加のコロンを追加することで、1つのadmonitionを別のadmonitionの中にネストできるようになりました。

::::tip[nested admonitions]

You can now nest one admonition within another!

:::danger

Use this sparingly when it makes sense.

:::

::::
ネストされたadmonition

admonitionを別のadmonitionの中にネストできるようになりました!

危険

意味がある場合にのみ、控えめに使用してください。

ブログcreateFeedItems

新しいブログプラグインオプション feedOptions.createFeedItems を使用すると、RSS/Atomフィードの生成をより細かく制御できます。新しいコールバックを使用して、フィードアイテムを変換/フィルタリング/制限できるようになりました。

docusaurus.config.js
[
'@docusaurus/preset-classic',
{
blog: {
feedOptions: {
createFeedItems: async (params) => {
const {blogPosts, defaultCreateFeedItems, ...rest} = params;
return defaultCreateFeedItems({
// keep only the 10 most recent blog posts in the feed
blogPosts: blogPosts.filter((item, index) => index < 10),
...rest,
});
},
},
},
},
];

翻訳

複数の言語のデフォルトテーマ翻訳サポートを追加または完了しました。

  • 🇸🇮 #8541 スロベニア語
  • 🇹🇷 #8289 トルコ語
  • 🇮🇷 #8406 ペルシア語
  • 🇵🇱 #8525 ポーランド語
  • 🇨🇳 #8423 中国語
  • 🇸🇪 #8312 スウェーデン語
  • 🇻🇳 #8450 ベトナム語
ヒント

テーマ翻訳を完了することは 継続的な取り組み であり、Docusaurusに貢献する簡単な方法です。新しいテーマ機能は定期的に追加され、それらには多くの場合、新しい翻訳が必要です。

その他の変更点

その他の注目すべき変更点は以下のとおりです。

  • #8463 および #8328: Docusaurusのいくつかの煩わしいレイアウトの問題を修正
  • #8539: Algoliaプラグインのoptions.searchPagePathが検索モーダルフッターに正しく適用されるように修正
  • #8462: Algoliaプラグインで、カスタムロジックを使用して表示される検索結果を変換しやすくなりました
  • #8397: deploy CLIがgit urlのinsteadOf設定を理解するようになりました

変更の完全なリストについては、2.3.0の変更ログエントリを確認してください。