5

私は、開発中の式エンジン サイトの読者に表示するために、できるだけ多くの興味深いメタデータを収集しようとしています。このメタデータの特定のビットをスケーラブルな方法で計算する方法 (または実際には実現可能性) に関するガイダンスを探しています。

式エンジンを使用すると、投稿の合計と日付、コメントの合計と日付、タグの合計など、かなりの数のデータをネイティブに収集して表示できます。ただし、合計をカウントして表示する方法を見つけることに特に興味があります個々の投稿内だけでなく、チャネル全体、およびサイト全体の、単語、画像、ビデオ、またはオーディオ ファイルの数などのデータ。

これらの合計は、アクセスされた場所に応じてコンテキストに応じて表示されます。たとえば、検索結果には個々の投稿に含まれる単語/画像/その他の数が表示され、チャンネルの「概要」ページにはチャンネル全体の合計が表示され、サイトの「概要」ページにはサイト全体の合計が表示されます。最善のアプローチや、これが本当に実現可能かどうかはわかりません。

私はプロの Web デザイナーではないので、html5/css3/ee 以外の知識は多少限られていますが、考えてみました。

  • これらの数値を投稿ごとにカスタム フィールドに入力しますが、チャネルとサイト全体の合計に合計できるかどうかは明確ではありません。
  • PHP の「count」メソッドを使用していますが、PHP にあまり詳しくないため、適切かどうかわかりません。
  • いくつかの mySql メソッドを使用してデータベースをクエリしますが、これも不明です。
  • Expression Engine「Query Module」を活用。!?
  • Jquery プラグインを使用して個別にカウントを行い、事後に追加します。

単語、画像、ビデオ、オーディオ ファイルのカウントとスケーラビリティは、まったく別の問題である可能性がありますが、実際には、どのような手段を検討すればよいかについて非常に混乱しています。したがって、あらゆる提案やガイダンスをいただければ幸いです。

更新:結果を収集して追加するためのデータベース メソッドを検討していますが、単語/画像/ビデオ/オーディオ ファイルのカウントを実際に実行するための最良の方法を特定することにまだ関心があります。

4

1 に答える 1

1

多くの解決策がありますが、私はあなたを助けるかもしれないいくつかを念頭に置いています. 自分のサイトでも使っている、とても気に入ったものだけを紹介します。

1 つの解決策は、関心のあるテーブルにカウント列を作成し、誰かが何かを投稿または実行したときに自動的に更新されるようにすることです。また、globalcount など、サイト全体のすべてをカウントする新しいテーブルを作成することもできます。これは後で表示することができます。その情報が必要な場合は、最初に単語などをカウントするメソッド/関数が必要です。誰かが投稿したら、前の投稿から 1 つ数えるだけです。

上記は私が使っているものです。私はその他のテーブルを使用します(すべてのデータを含む1つの行があります。代わりに、各行に「名前」「値」などの情報を含めることができます)。

(`views`, `totalusers`, `totalgroups`, `totalthreads`, `totalposts`, `totalarticles`, `totalcomments`, `totalpms`, `activeusercount`)

私の「ニュース」テーブルのようなものでは、「totalcomments」を使用して、その記事に投稿されたローカル コメントを数えます。したがって、ローカルとグローバルの両方のコメントがあります。

私の場合、新しいユーザーが登録した後に「misc」テーブルの「totalusers」を更新したい場合は、$misc 配列を呼び出して次のようにします: $newtotalusers = intval($misc['totalusers'] + 1 );

mysql_query("UPDATE `misc` SET `totalusers`='$newtotalusers'");

totalusersまたは、代わりに「 +1」を使用することもできます。

任意のファイル数やその逆など、実行したい他のことについても同じことができます。お役に立てれば :)

最後に、エラーが原因でデータがオフになった場合に、テーブルのカウント値を更新して修正するスクリプトを作成することもできます。

于 2012-04-28T18:27:35.970 に答える