私は手動でCREATE TABLE
を使ってsqlを使って私のwordpressデータベースにテーブルを追加しました。 wp_update_user()
と同じように、このテーブルからデータを追加、修正、削除するための関数を追加したいです。
新しいテーブル用のインターフェースを作成する必要がありますか?どうしたらいいですか。
問題の詳細:
私はサイトのユーザーがグループ/チームに参加できるようにしたいです。データベースにチームテーブル(チームID、チームタイプ、チーム名)と結合テーブル(ユーザーID /チームIDを含む)を設定しました。これらのテーブルに関連する関数を私のpage_template.php
ファイルから呼び出せるようにしたいです。
たとえば、ユーザーのフォーム入力に基づいて新しいチームをデータベースに挿入する機能を呼び出したいとします。
新しいテーブル用のインターフェースを作成する必要がありますか?どうしたらいいですか。
残念ながら、実装するインターフェースはありません。すべてをゼロから構築する必要があります 。これも:
ここで役立つと思われる唯一のWPは、SQLクエリを作成するために使用できる$wpdb
変数です。
Wp_update_user()と同じように、このテーブルからデータを追加、修正、削除するための関数を追加したいです。
必要に応じて、これらすべてを最初から構築する必要があります。 WordPressはここでは何の助けにもならない
たとえば、ユーザーのフォーム入力に基づいて新しいチームをデータベースに挿入する機能を呼び出したいとします。
あなたは一から関数を構築しなければならないでしょう。あなたが何をしているのかについての推奨パスはありません、それはたまたまPHPサイトにあるのが一般的なWP開発です。 WP APIはどれも役に立ちません
私は手動で
CREATE TABLE
を使ってsqlを使って私のwordpressのデータベースにテーブルを追加しました
dbdelta
関数を使ってテーブルを作成し、そのスキーマを更新することもできますが、これは非常に巧妙で容赦のない関数であり、CREATE TABLEステートメントを必要とします。たとえば、PRIMARY
キーワードの後に2つのスペースを入れないと、うまくいきません。他にもたくさんの制限があります。
ありません。探しているものが見つからないのは、それが存在しないからです。 WordPressは、サポート、ガイダンス、インフラストラクチャ、インターフェース、またはカスタムテーブルの使用に関するヘルプに関して、ほとんど何も提供していません。
一般的なベストプラクティスは、カスタムテーブルはめったに必要とされないこと、そしてほとんどの場合、カスタムテーブルの使用は何かがうまくいっていないことの兆候であると考えています。カスタムテーブルを使用するほとんどの場合は、他の場所に既に存在するテーブルと対話するためのものです。
あなた自身が人生を楽にする方法はありますか?はい!しかし、これらはWP固有のものではなく、抽象化やラッパー関数のようなPHPプログラムに適用されることは明らかです。
たとえば、一度Doctrine ORMライブラリを使用して一連のカスタムテーブルを実装しました。プラグインに含まれるWPコードはほとんどなく、スタンドアロンのPHPアプリケーションであった可能性もあります。後思考では、私はカスタム投稿タイプと非公開分類法でも同様にそれをしたかもしれません。
あなたが探すべきものは一般的なPHPカスタムテーブルのもので、WP固有のものではありません。クエリを作成するためのwpdb
の外側では、行き止まりになっています
余談ですが、 カスタムユーザー分類法を使用することを検討しましたか ?分類法は投稿専用ではなく、分類法はID用です。そのIDが数値で常に同じ種類のものを参照している限り、投稿、コメント、ユーザー、住居番号などが考えられます。それらを混在させないでください。