返信先: 自動送信メールの本文変更
フォーラム › 使い方全般 › 自動送信メールの本文変更 › 返信先: 自動送信メールの本文変更
2014年12月5日 8:27 AM
#72962
参加者
フィルターフック usces_filter_send_order_mail_bodyall で wp_get_object_terms()を取得したいのですが、取得できません。
タクソノミーが存在しないという WP_Error が返ってきます。
他のテンプレートでは正常に取得できているのですが、なぜでしょう?
functions.php のフィルターフックのコードは概ね下記のような感じです。
add_filter( 'usces_filter_send_order_mail_bodyall', 'my_filter_send_order_mail_bodyall', 10, 2 );
function my_filter_send_order_mail_bodyall( $msg_body, $data ) {
$user = wp_get_current_user();
$user_id = get_current_user_id();
$user_terms = wp_get_object_terms( $user_id, 'user-group' );
if( !empty( $user_terms ) ) {
if( !is_wp_error( $user_terms ) ) {
foreach( $user_terms as $user_term ) {
}
}
}
$msg_body = "\r\n\r\n\r\n【お支払内容】\r\n";
$msg_body .= usces_mail_line( 1, $data['order_email'] );//********************
$msg_body .= "メールアドレス:" .$user->get('user_email'). "\r\n";
$msg_body .= "お名前 :" .$user->get('display_name'). " 様\r\n";
$msg_body .= "ID :" .$user_id. "\r\n";
$msg_body .= "所属 :" .$user_term->name. "\r\n";
return $msg_body;
}
ちなみに $msg_body 以下をコメントアウトして直接 return $user_term->name; としても取得できません。
WP_Error が返ってきていることは分かっています。
何卒ご教示のほどよろしくお願いいたします。