データ駆動型の WordPress ウェブサイトを構築する方法

公開: 2023-02-13

ビジネス上の意思決定のほとんどがデータによって行われる世界に生きているため、データ駆動型の Web サイトの必要性は年々高まっています。 作成されるデータの量は、全世界で最大 180 ゼタバイトになる可能性があります。

データベース駆動型の Web サイトを開発するのは難しい作業です。 CMS には常にデータが殺到し、そのデータを効果的に処理することは困難です。

心配しないでください!

ここでは、データ駆動型の WordPress Web サイトを開発する方法について説明しました。 しかしその前に、データ駆動型 Web サイトとは何かを理解しましょう。

目次

  • データ駆動型 Web サイトとは?
  • コンテンツ管理システムとしての WordPress は、データ駆動型の Web サイトに適しています
  • WordPressに保存されているデータ
  • WordPress データベース構造で直面する一般的な問題
  • WordPress データベース構造の制限
  • 可能な解決策

データドリブン Web サイトとは?

データ駆動型の Web サイトは、静的なバリアントとは大きく異なります。 大きな違いの 1 つは、新しいデータが明らかになったときに、管理者がデータ駆動型の Web サイトをすばやく更新できることです。

実際、そのような Web サイトの唯一の目的は、最新のコンテンツを表示することです。 そのため、静的な Web サイトとは異なり、定期的に時間どおりに更新されます。

これは、データ駆動型の Web サイトが 1 回限りのプロジェクトではないことを意味します。 これは進行中のプロセスです。 つまり、Web サイトは頻繁な変更に対応できる柔軟性を備えている必要があります。

要するに、ウェブサイトのデータベースは、データ駆動型のウェブサイトで最も影響を受ける要素になるということです。 この点を説明するために、いくつかの例を考えてみましょう。

  • オンライン ストアでは、新しい注文が行われたり、新しい顧客がサインアップしたりするたびに、ウェブサイトのデータベースが変化し続けます。
  • 多くの Web サイトは、サードパーティのプラットフォームからデータを収集します。 このデータを保存し、フィルタリングして、わかりやすい形式で表示する必要があります。 これにより、データベースの最適化が必要になります。
  • もう 1 つのシナリオは、Web サイト データベースがより頻繁に更新され、更新されたデータを表示する前に処理したい場合です。 それはまた、WordPress データベースの最適化の出番です。

CMS としての WordPress は、データ駆動型の Web サイトに適しています

データ駆動型の Web サイトを効率的に機能させるには、コンテンツ管理システム (CMS) が必要です。 CMS を使用すると、Web サイトのコンテンツを簡単かつ構造的に管理できます。 そしてWordPressは、法案に適合する最も人気のあるCMSです.

WordPress の既定のデータベース スキーマは、開発者がフロントエンド サイトとバックエンド サイトの両方へのすべての要求で使用するいくつかのテーブルで構成されています。 さらに、投稿とページ、コメント、用語、ユーザー アカウント、および設定用のテーブルが多数あります。

WordPress の作成者は、リソースの使用を最適化し、ほぼ無限の量のデータを格納するテーブルを設計するという適切な仕事をしてきました。

WordPressに保存されているデータ

WordPress では、任意のカスタム エンティティを投稿、一意の識別子、名前、コンテンツ、または特定のユーザーに関連付けられた作成日/変更日を持つオブジェクトとして保存できます。

メタ エントリは、投稿に関連付けられたキーと値のペアを使用します。 実際、エンティティをポストとしてシームレスに操作し、一連のメタ パラメータをそれらに追加できます。 この普遍的なポスト指向のアプローチは、データベース サーバーからデータを格納および取得するための最も簡単で最速の方法です。

WordPress データベース構造で直面する一般的な問題

すべての WordPress サイトは、データベースを (ある程度) 使用してコンテンツを保存および提供します。 WordPress は、投稿に対して非常に直感的なメカニズムを提供します。 しかし同時に、データベースのパフォーマンスの問題へのゲートウェイを開きます。 主に静的コンテンツに焦点を当てた小さなサイトは、このビルトイン ソリューションで非常に効率的に再生できます。 ただし、上記の例で示したより大規模で複雑なサービスには、よりスマートなアプローチが必要です。

WordPress にデータを追加し始めると、キーと値のペアにより、投稿メタ テーブルのサイズが増加し始めます。 ウェブサイトを通じて追加するものはすべて、おそらく投稿メタに情報を保存する必要があります。

データがユーザーに表示される前にバックグラウンドで処理されると、データ配信の問題が発生する可能性があります。 たとえば、毎日何千もの注文を受けている場合、月次および週次の収益レポートを生成するときに問題に直面します。

これは他のインスタンスにも当てはまります。 たとえば、サードパーティのプラットフォームから Web サイト データベースに大量のデータを頻繁にフィードする場合、投稿メタ テーブルのサイズが大きくなると、最新のデータをフィルタリングして表示する際に問題が発生します。 これは、データベース クエリがそのデータを処理するのに時間がかかるために発生します。

WordPress データベース構造の制限

この問題の原因は何ですか?

WordPress では、投稿メタ テーブルは、投稿に関連付けられたキーと値のペアを使用します。 つまり、顧客がオンラインの WordPress ベースのストアから購入すると、すべてのデータがキーと値のペアで保存されます。

価値
order_id 1001
ファーストネームジョン
苗字ドウ
購入日2023/01/01
order_id 1002
ファーストネームケビン
苗字イチイ
購入日2023/01/01

これらの問題は、行数を最小限に抑えて列に変換することにより、キーと値のペアが以下のように設計されている場合にのみ対処できます。 残念ながら、それは私たちの手にありません。

order_id ファーストネーム苗字苗字
価値1001 ジョンドウ2023/01/01
価値1002 ケビンイチイ2023/01/01

ポストメタテーブルで占有するスペースが少なくなります。 しかし、WordPress のデータベース構造により、post メタテーブルはグローバルに使用されるため、これを変更する方法はありません。

可能な解決策

幸いなことに、このピクルスから抜け出すために、2 つの解決策が見つかりました。

彼らです:

1. 解決策 1 (カスタム オーダー テーブルを使用する)

デフォルトの WP po​​st_meta テーブルの構造を最適化することはできませんが、要件に合わせて調整されたテーブルを作成し、注文データをそこに保存することはできます。 デフォルトの WooCommerce 注文機能にいくつか変更を加える必要があるため、経験豊富な WordPress エキスパートと協力する必要があります。

これが段階的なプロセスです。

  • WordPress の専門家の助けを借りて、以下のような最適化されたカスタム注文データ テーブルを作成できます。

A Custom Order Table

  • ここで、カスタム テーブルから新しい注文を挿入してフェッチするように CMS に指示するように開発者に依頼してください。
  • 次に、古い注文データを新しく作成したカスタム注文テーブルに移行するよう開発者に依頼します。
  • ただし、これはカスタマイズされたソリューションであるため、この注文データを他のプラグインで使用していない場合に適用できます。 プラグインを使用する場合でも、post_meta テーブルからデータをフェッチしようとします。

2. 解決策 2

API またはサードパーティ プラットフォームから Web サイト データベースにフィードしているとします。 何千ものレコードが入ってきて、それらを Web サイトに表示しながら詳細にフィルタリングしたいと考えています。 問題は、このすべてのデータをカスタム投稿タイプに保存すると、従来の WP の方法、つまり post_meta テーブルに保存されることです。 ここでも、さまざまなデータがキーと値のペアとして保存されます。 つまり、このデータを詳細にフィルタリングすることはできません。

  • たとえば、レシピ データが API から取得されるレシピ Web サイトを作成したとします。 レシピ一覧ページを設定し、フィルターを追加しました。 フィルターには、食事の種類、コース、食事、タンパク質のオプション、難易度、方法、その他の栄養素のオプションなど、さまざまなオプションが含まれています。
  • このレシピ データがカスタム投稿タイプに保存されている場合、レシピ属性もキーと値のペアとして post_meta テーブルに保存されます。

post_meta table

    • ユーザーがさまざまなフィルター オプションを使用して何千ものレシピをフィルター処理しようとすると、WordPress の既定のデータベース クエリが各レコードのループを開始し、一致する結果を見つけます。 post_meta テーブルのサイズが大きくなるにつれて、時間がかかります。 データ配信の問題が発生する可能性があります。
    • このデータを保存するカスタム投稿タイプを作成する代わりに、最適化されたカスタム テーブルを作成できます。 これにより、デフォルトの post_meta テーブルのサイズが大きくなるのを回避し、必要に応じてそのデータを処理/フィルタリングする効率を高めることができます。

以下は、適切に最適化されたテーブルの例です。

optimized table

  • このようなソリューションを使用すると、ユーザーがレシピをフィルタリングしようとすると、数秒以内に結果が得られます。

結論:

このますますデジタル化が進む世界では、データ駆動型の Web サイトの必要性は否定できません。 具体的で実用的なデータの洞察は、より多くの販売を促進し、より良いリードを生み出すことができます. それはあなたの代理店/ブランドにとって最善の利益です. これらの簡単なヒントを使用すると、よりデータ駆動型の WordPress Web サイトを作成および維持できます。 これらを今すぐ試して、どのように役に立ったかをお知らせください。

WordPress ウェブサイトのパフォーマンスに苦労していませんか? カスタマイズされたソリューションについては、お問い合わせください。