みなさん、こんちは。WEBおじさんです。
今日はWordPressのことを少しお話しましょう。
今回のお話は初心者向けではないかもしれませんので、申し訳ありませんがご了承ください。
WordPressにオリジナルのテーブルを追加する方法
WordPressってすごく便利なんですけど、かゆいところに手が届かない時もありますよね?
ご自身でPHPとかMySQLを使ってプログラムを組んだことのある人の場合、ご自身での作り方が恐らく確立されていて、それがベースになっていると思います。
そこには当然自分ルールが存在したりして、フラグを立てたりデータ型とかも指定したりなんやかんや自分が便利だと思うものを作ってるはずです。
そうすると、WordPressのような他のプログラムを入れることに拒絶反応を示す方も少なくないはず。
でもどうしてもWordPressを使わざるを得ない状況というのもあります。ケースとしては少ないけどね。
その時に、オリジナルのDBテーブルをWordPressの中で使ったり、WordPressデータと関連付けて使ったりしたいなぁ、なんて時もあると思います。
以前、そういう依頼がありまして、めちゃくちゃ調べました。
ありました。
「wp-db.php」というファイルがWordPressにはあるのですがそこに記述を追加することでオリジナルのテーブルをWordPressの関数で使ったりうすることができるようです。
結局これは使わなかったので詳しい方法はわかりませんが、WordPressのデータを扱う感じでオリジナルのデータを扱えるってのはやっぱ便利ですよねー。
WordPressの関数をWordPress以外で作ったページで使いたい
で、その依頼では最終的に別でオリジナルのページを追加してその中にWordPressのデータを出力して使う、という方向で収束しました。
要は、WordPressのデータを使いつつ、都合よくオリジナルのデータも使いたい、ということだったので固定ページを作るのではなく、ページファイルを別で作ってそこにWordPressのデータを読み込ませることにしました。
WordPressのデータをWordPress外で使用するということですね。
その場合、ページファイルをPHPで作成し、出力したい箇所で
require_once(‘WordPressのパス/wp-load.php’);
みたいな感じで「wp-load.php」ファイルを読み込ませればWordPressの関数もデータもWordPress内で使うようにWordPress外でも使用することができます。
ただし、クロスドメインで使用することができるかどうかはわかりません。同じサーバー内であればドメインが違く手も確か使えた気がします。ドメインを使うのではなくフルパスでrequireさせれば。確かね。
これを使ったときはWordPressでアップしたアイキャッチ画像を使いたくて、でもそのディレクトリとかファイル名とかをどうやって見つけるか、解析するかというところが問題になって、ファイルも探すことができなければディレクトリ自体も見つけることができませんでした。
だから「WordPressの関数がWordPress外のファイルでも使えたらいいのに」と思って、そのやり方を死ぬほど検索したんだと思います。
ということで、これ結構便利なので、WordPressを使ってるという方は一度出力を試してみては如何でしょうか?