
ctfd を設定した友達はおそらく知っているでしょうが、ctfd では問題が多くなると、すべての問題が 1 つのページに表示されます。その場合、カテゴリ分類とページネーションのプラグインが必要になります。インターネットで検索した結果、ctfshow や buuoj のような効果を持つプロジェクトがあることがわかりました。
プロジェクトのアドレス:https://github.com/frankli0324/ctfd-pages-theme
見てみたら、このプロジェクトは多くの人々が npm エラーを報告しているようです。私も何度か試しましたが、私も npm エラーが発生しました。それらのエラーの意味はわかりませんが、エラーが発生しても無視しても、必要な効果を得ることができます。
ここでは、構築手順を書いておきます。私はctfd-pages-themeのcoreディレクトリのファイルを直接変更しました。2 つのファイルを置き換えるだけで済みます。
1、CTFd/themes/core/assets/js/pages/challenges.js

2、CTFd/themes/core/templates/challenges.html

challenges.*ファイルを直接変更した場合、ctfd-pages-themeプロジェクトのwebpack.config.jsをリポジトリのwebpack.config.jsで置き換え、npmビルドを使用するという指示は無視して、元のwebpack.config.jsファイルを使用してください。
前提条件が整ったら、npm ビルドを開始できます。
1、npm のインストール
sudo apt install npm
2、npm のインストールが完了したら、npm のソースを設定します。
npm config set registry https://registry.npm.taobao.org
3、ビルド
npm i && npm run build
4、次のようなエラーがビルド中に発生した場合、npm ビルドに問題があることを示しています。

ただし、エラーメッセージの上に緑の文字が表示されている場合。

これは、ページのカテゴリページが使用できることを意味します。なぜエラーが発生するのかを見てみると、おそらくadmin themeテーマに関連しているかもしれませんが、このメッセージは無視しても構いません。

5、最後のステップは、docker-composeを再度実行し、ctfdコンテナを再起動することです。
sudo docker-compose up -d
sudo docker restart 13d

効果は以下の通りです:

終わり...
画像の出典:https://wallhaven.cc/