web-dev-qa-db-ja.com

Function.phpからプラグインファイルに変数を取得する方法

連絡フォームから変数を取得し、その入力(およびIPや場所などの他の情報)を電子メールに送信する関数をfunctions.phpで書きました。

私は私の最初のプラグインに取り組み始めています、そして私はデータベースの新しいテーブルにパラメータを保存したいです。

ユーザーがfunction.php送信ボタンをクリックした直後にcontact formからパラメータを取得する方法を教えてください。

1
Kar19

基本的なPHP

functions.php

function my_func() {
   //doing my staff
   $my_var = 'data'; //stored data after doing things
   return $my_var;
}

プラグインファイルでは:

//retrieved data from a function declared within a system
$got_data = my_func();

function another_func( $got_data ) {
   //doing staff with $got_data
}
1
Mayeenul Islam

プラグインファイルにfunction.phpファイル変数を使用する3つの方法があります。

  1. グローバル グローバル を使用する。最初にグローバル化するようにしてください。

    global $my_variable; echo $my_variable;

  2. 私はWordPress内蔵のフィルタ機構 add_filter を使うことをお勧めします。 functions.phpファイルにフィルタを追加し、必要に応じてそれを適用します。

functions.php内:

add_filter( 'my_variable', 'return_my_variable' );
function return_my_variable( $arg = '' ) {
    return '111221122';
}

今すぐあなたのプラグインファイルで使用することができます:

echo apply_filters( 'my_variable', '' );
  1. アクションフックを使う add_action

functions.php内:

add_action( 'my_variable', 'echo_my_variable' );
function echo_my_variable() {
    echo '888998899';
}

あなたのプラグインファイルで:

do_action( 'my_variable' );

繰り返しになりますが、値を返す可能性があるため、フィルターをお勧めします。これはプラグインファイルにエコー呼び出しを挿入するよりもはるかに柔軟です。アクションフックを使うかフィルタを使うかはあなた次第です。