banner
lca

lca

真正的不自由,是在自己的心中设下牢笼。

Ctfdのカテゴリ分割ページ設定

wallhaven-x8jl83


ctfd を設定した友達はおそらく知っているでしょうが、ctfd では問題が多くなると、すべての問題が 1 つのページに表示されます。その場合、カテゴリ分類とページネーションのプラグインが必要になります。インターネットで検索した結果、ctfshow や buuoj のような効果を持つプロジェクトがあることがわかりました。

プロジェクトのアドレス:https://github.com/frankli0324/ctfd-pages-theme

見てみたら、このプロジェクトは多くの人々が npm エラーを報告しているようです。私も何度か試しましたが、私も npm エラーが発生しました。それらのエラーの意味はわかりませんが、エラーが発生しても無視しても、必要な効果を得ることができます。

ここでは、構築手順を書いておきます。私はctfd-pages-themecoreディレクトリのファイルを直接変更しました。2 つのファイルを置き換えるだけで済みます。

1、CTFd/themes/core/assets/js/pages/challenges.js

image-20230413101907721

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

image-20230413101836328

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 ビルドに問題があることを示しています。

image-20230413102305982

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

image-20230413102416219

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

image-20230413102516465

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

sudo docker-compose up -d
sudo docker restart 13d

image-20230413102700327

効果は以下の通りです:

image-20230413102729337

終わり...

画像の出典:https://wallhaven.cc/

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。