私は顧客の一意の注文IDを生成するためにwordpressプラグインを作ろうとしています。私は以下のようにしていますが、それは価値を返すものではありません。私のコードは以下の通りです。phpクラスの他の関数に1つの関数varibaleを取得
class abc {
function __construct() {
add_action('publish_wpcf7s', array($this, 'send_mails_on_publish'), 10, 2);
}
function setID() {
global $id;
$a = md5(time());
echo $id = substr($a,0,8);
}
function send_mails_on_publish($post)
{
global $post;
global $id;
$price = get_post_meta($post->ID, 'quote_price', true);
$to = get_post_meta($post->ID, 'email', true);
$subject ="Thank You! Please Pay $price Us For Order No. $id";
$message ="message";
$headers[] = "Disposition-Notification-To: $sender_email\n";
$headers[] = 'Content-Type: text/html; charset=UTF-8';
$headers[] = 'From: Example ' . "\r\n";
wp_mail($to, $subject, $body, $headers);
}
}
私はDevDonkeyの指示に従った。 2つの場所で異なる値を取得しています。申し訳ありませんが、私は私の質問で言及するのを忘れました。私は2つの場所で同じユニークIDを取得したい。データベースと他の電子メールのためにまず –
私は言ったように '$ this-> setID();'を '__construct()'呼び出しの中に置き、あなたのクラスメソッドのどこにでも '$ this-> $ id'を使うと、 '$ this-> setID();'をもう一度呼び出さなければ変更されません。 –
Ok。私の試してみましょう。 –