ドキュメントのヒット数をカウントする umbraco のカスタム プロパティを作成しています。
ドキュメントの読み込み中にロジックをページに接続する方法はありますか?
例: 私は構造を持っています:
- 家
- 私について
どちらにも私のカスタム プロパティがあります。
それらがロードされたときに記録したいと思います。
注: JavaScript やページ上のアクションは使用したくありません。1 つのカスタム DLL として使用したいと考えています。
これを行う 1 つの方法は、ページ ヒット専用の別の db テーブルを用意することです。たとえば、[PageHit]
2 つの列[NodeId]
と[HitCount]
.
ページのヒットは、以前にヒットが記録されていない場合は新しいレコードを作成するか、既存のレコードのカウントを増やします。
ヒットがページごとに記録されていることを確認する必要があるため、ベースMasterpage
またはベースに記録するController
ことが私のアプローチになります.
次に、プロパティが存在する特定のノードのヒット カウントを検索するカスタム データ型に基づくプロパティを作成できます。カスタム データ型はユーザー コントロールである可能性があります。Umbraco バックオフィスでは、コンテンツ エディターでノードをロードするときにノードの ID が URL のクエリにあるため、ユーザー コントロールでこれにアクセスしてデータベースをクエリできます。
別のテーブルを使用すると、PetaPoco や基本的な ADO などの ORM を使用できるため、Umbraco API に依存する必要がないため、物事を別の DLL に分割することもできます。
ノード自体に直接書き戻すと、データベースに不要な負荷がかかり、サイトのページの読み込みに遅延が発生し、一般的に速度が低下するため、私は確かにそうしません。
私が選択した解決策は、umbraco にはこれに使用できるイベントがないため、IHttpModule を使用することです。
構成に関して: アプリケーションの起動後にモジュールを動的に接続することにしました。
私の質問を検討してくれてありがとう。