サポート » テーマ » WordPress プラグイン・フックの中でデータベース情報の取得方法

  • 解決済 hirooo

    (@hirooo)


    functions.phpでWordPress プラグイン・フック(具体的にはpublish_page)を利用しました。
    add_actionで実行される関数の中で$wpdb->get_var()を呼び出そうとしましたが、既存では$wpdbオブジェクトが作成されておらず関数内で下記の通りオブジェクトを作成しました(プラグインとして作成したときも同じ)。

    $dbuser=”●●●”;
    $dbpassword=”●●●”;
    $dbname=”●●●”;
    $dbhost=”●●●”;
    $wpdb = new wpdb($dbuser, $dbpassword, $dbname, $dbhost);

    wpdbオブジェクトは期待通りに作成されデータベースへのアクセスもできました。

    しかし異なるサイトで利用するときに、データベース情報を直接ファイルに記入しなければなりません。
    wordpress関数/テンプレートタグでデータベース情報を取得できる方法がありましたら教えてください。

    PHP5
    MySql4

    よろしくお願いします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • モデレーター jim912

    (@jim912)

    hiroooさん、こんにちは。

    実行関数内に

    global $wpdb;

    とグローバル宣言を記述いただければ、そのまま

    $wpdb->get_var

    として利用可能のはずです。ご質問内容とは異なりますが、お試しください。

    別途、インスタンスの生成が必要な場合は、DB_NAME、DB_USER、DB_PASSWORD、DB_HOSTと定数として定義されていますので、そちらを利用するのが良いかと思います。

    トピック投稿者 hirooo

    (@hirooo)

    jim912様
    早速ご回答いただきましてありがとうございます。

    ご指摘いただいたとおり、global $wpdb;を記述することで解決できました。
    ありがとうございます。

    また、DB_NAME、DB_USER、DB_PASSWORD、DB_HOSTという定数があることも始めてしり、
    とても勉強になりました。

    ありがとうございました。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「WordPress プラグイン・フックの中でデータベース情報の取得方法」には新たに返信することはできません。