Version Description
- Added : Added Method MW_WP_Form_Mail_Parser::get_saved_mail_id()
- Added : Added Method MW_WP_Form_Mail::get_saved_mail_id()
- Added : Added filter hook mwform_upload_dir_mw-wp-form-xxx
- Added : Added filter hook mwform_upload_filename_mw-wp-form-xxx
- Added : Added filter hook mwform_no_save_keys_mw-wp-form-xxx
- Changed : Changed to save the default values of contact data meta data at the time of email saved.
- Bugfix : Fixed a bug that e-mail is not sent when the "from" is in violation of the RFC.
Download this release
Release Info
Developer | inc2734 |
Plugin | MW WP Form |
Version | 2.7.0 |
Comparing to | |
See all releases |
Code changes from version 2.6.4 to 2.7.0
- classes/controllers/class.main.php +21 -6
- classes/functions.php +30 -14
- classes/models/class.contact-data-setting.php +1 -1
- classes/models/class.contact-data.php +2 -2
- classes/models/class.mail.php +27 -8
- classes/services/class.mail-parser.php +24 -12
- classes/services/class.mail.php +7 -2
- mw-wp-form.php +2 -2
- readme.txt +10 -1
classes/controllers/class.main.php
CHANGED
@@ -2,11 +2,11 @@
|
|
2 |
/**
|
3 |
* Name : MW WP Form Main Controller
|
4 |
* Description: フロントエンドにおいて、適切な画面にリダイレクトさせる
|
5 |
-
* Version : 1.
|
6 |
* Author : Takashi Kitajima
|
7 |
* Author URI : http://2inc.org
|
8 |
* Created : December 23, 2014
|
9 |
-
* Modified :
|
10 |
* License : GPLv2 or later
|
11 |
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
12 |
*/
|
@@ -257,7 +257,7 @@ class MW_WP_Form_Main_Controller {
|
|
257 |
*/
|
258 |
protected function send() {
|
259 |
$Mail = new MW_WP_Form_Mail();
|
260 |
-
$form_key = $this->
|
261 |
$attachments = $this->get_attachments();
|
262 |
$Mail_Service = new MW_WP_Form_Mail_Service( $Mail, $form_key, $this->Setting, $attachments );
|
263 |
|
@@ -299,7 +299,22 @@ class MW_WP_Form_Main_Controller {
|
|
299 |
}
|
300 |
$filepath = MWF_Functions::fileurl_to_path( $upload_file_url );
|
301 |
if ( file_exists( $filepath ) ) {
|
302 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
303 |
$new_upload_file_url = MWF_Functions::filepath_to_url( $filepath );
|
304 |
$this->Data->set( $key, $new_upload_file_url );
|
305 |
$attachments[$key] = $filepath;
|
@@ -339,7 +354,7 @@ class MW_WP_Form_Main_Controller {
|
|
339 |
$request_token = $_POST[$this->token_name];
|
340 |
}
|
341 |
$values = $this->Data->gets();
|
342 |
-
$form_key = $this->
|
343 |
if ( isset( $request_token ) && wp_verify_nonce( $request_token, $form_key ) ) {
|
344 |
return true;
|
345 |
} elseif ( empty( $_POST ) && $values ) {
|
@@ -357,7 +372,7 @@ class MW_WP_Form_Main_Controller {
|
|
357 |
*/
|
358 |
public function mwform_form_end_html( $html ) {
|
359 |
if ( is_a( $this->ExecShortcode, 'MW_WP_Form_Exec_Shortcode' ) ) {
|
360 |
-
$form_key = $this->
|
361 |
$html .= wp_nonce_field( $form_key, $this->token_name, true, false );
|
362 |
return $html;
|
363 |
}
|
2 |
/**
|
3 |
* Name : MW WP Form Main Controller
|
4 |
* Description: フロントエンドにおいて、適切な画面にリダイレクトさせる
|
5 |
+
* Version : 1.2.0
|
6 |
* Author : Takashi Kitajima
|
7 |
* Author URI : http://2inc.org
|
8 |
* Created : December 23, 2014
|
9 |
+
* Modified : February 14, 2016
|
10 |
* License : GPLv2 or later
|
11 |
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
12 |
*/
|
257 |
*/
|
258 |
protected function send() {
|
259 |
$Mail = new MW_WP_Form_Mail();
|
260 |
+
$form_key = $this->Data->get_form_key();
|
261 |
$attachments = $this->get_attachments();
|
262 |
$Mail_Service = new MW_WP_Form_Mail_Service( $Mail, $form_key, $this->Setting, $attachments );
|
263 |
|
299 |
}
|
300 |
$filepath = MWF_Functions::fileurl_to_path( $upload_file_url );
|
301 |
if ( file_exists( $filepath ) ) {
|
302 |
+
$form_key = $this->Data->get_form_key();
|
303 |
+
$new_upload_dir = apply_filters(
|
304 |
+
'mwform_upload_dir_' . $form_key,
|
305 |
+
'',
|
306 |
+
$this->Data
|
307 |
+
);
|
308 |
+
$new_filename = apply_filters(
|
309 |
+
'mwform_upload_filename_' . $form_key,
|
310 |
+
'',
|
311 |
+
$this->Data
|
312 |
+
);
|
313 |
+
$filepath = MWF_Functions::move_temp_file_to_upload_dir(
|
314 |
+
$filepath,
|
315 |
+
$new_upload_dir,
|
316 |
+
$new_filename
|
317 |
+
);
|
318 |
$new_upload_file_url = MWF_Functions::filepath_to_url( $filepath );
|
319 |
$this->Data->set( $key, $new_upload_file_url );
|
320 |
$attachments[$key] = $filepath;
|
354 |
$request_token = $_POST[$this->token_name];
|
355 |
}
|
356 |
$values = $this->Data->gets();
|
357 |
+
$form_key = $this->Data->get_form_key();
|
358 |
if ( isset( $request_token ) && wp_verify_nonce( $request_token, $form_key ) ) {
|
359 |
return true;
|
360 |
} elseif ( empty( $_POST ) && $values ) {
|
372 |
*/
|
373 |
public function mwform_form_end_html( $html ) {
|
374 |
if ( is_a( $this->ExecShortcode, 'MW_WP_Form_Exec_Shortcode' ) ) {
|
375 |
+
$form_key = $this->Data->get_form_key();
|
376 |
$html .= wp_nonce_field( $form_key, $this->token_name, true, false );
|
377 |
return $html;
|
378 |
}
|
classes/functions.php
CHANGED
@@ -2,11 +2,11 @@
|
|
2 |
/**
|
3 |
* Name : MWF Functions
|
4 |
* Description: 関数
|
5 |
-
* Version : 1.
|
6 |
* Author : Takashi Kitajima
|
7 |
* Author URI : http://2inc.org
|
8 |
* Created : May 29, 2013
|
9 |
-
* Modified :
|
10 |
* License : GPLv2 or later
|
11 |
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
12 |
*/
|
@@ -153,23 +153,39 @@ class MWF_Functions {
|
|
153 |
/**
|
154 |
* Tempディレクトリからuploadディレクトリにファイルを移動
|
155 |
*
|
156 |
-
* @param string
|
157 |
-
* @
|
|
|
|
|
158 |
*/
|
159 |
-
public static function move_temp_file_to_upload_dir( $filepath ) {
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
$new_filename = wp_unique_filename( $uploaddir, $filename );
|
165 |
|
166 |
-
|
|
|
167 |
return $filepath;
|
168 |
}
|
169 |
-
|
170 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
171 |
}
|
172 |
-
return $
|
173 |
}
|
174 |
|
175 |
/**
|
2 |
/**
|
3 |
* Name : MWF Functions
|
4 |
* Description: 関数
|
5 |
+
* Version : 1.5.0
|
6 |
* Author : Takashi Kitajima
|
7 |
* Author URI : http://2inc.org
|
8 |
* Created : May 29, 2013
|
9 |
+
* Modified : February 14, 2016
|
10 |
* License : GPLv2 or later
|
11 |
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
12 |
*/
|
153 |
/**
|
154 |
* Tempディレクトリからuploadディレクトリにファイルを移動
|
155 |
*
|
156 |
+
* @param string Temp ファイルのパス
|
157 |
+
* @param string 新しい保存先ディレクトリ
|
158 |
+
* @param string 新しいファイル名
|
159 |
+
* @return string 新しいファイルパス
|
160 |
*/
|
161 |
+
public static function move_temp_file_to_upload_dir( $filepath, $upload_dir = '', $filename = '' ) {
|
162 |
+
if ( !$upload_dir ) {
|
163 |
+
$wp_upload_dir = wp_upload_dir();
|
164 |
+
$upload_dir = realpath( $wp_upload_dir['path'] );
|
165 |
+
}
|
|
|
166 |
|
167 |
+
$temp_dir = dirname( $filepath );
|
168 |
+
if ( $temp_dir == $upload_dir ) {
|
169 |
return $filepath;
|
170 |
}
|
171 |
+
|
172 |
+
if ( !$filename ) {
|
173 |
+
$filename = basename( $filepath );
|
174 |
+
}
|
175 |
+
$filename = wp_unique_filename( $upload_dir, $filename );
|
176 |
+
|
177 |
+
$new_filepath = trailingslashit( $upload_dir ) . $filename;
|
178 |
+
|
179 |
+
// もし temp ファイルが存在しない場合、一応リネーム後のパスだけ返す
|
180 |
+
if ( !file_exists( $filepath ) ) {
|
181 |
+
return $new_filepath;
|
182 |
+
}
|
183 |
+
|
184 |
+
// 移動できれば移動、移動できなくてもリネーム後のパスだけ返す
|
185 |
+
if ( rename( $filepath, $new_filepath ) ) {
|
186 |
+
return $new_filepath;
|
187 |
}
|
188 |
+
return $new_filepath;
|
189 |
}
|
190 |
|
191 |
/**
|
classes/models/class.contact-data-setting.php
CHANGED
@@ -182,7 +182,7 @@ class MW_WP_Form_Contact_Data_Setting {
|
|
182 |
update_post_meta( $this->post_id, $key, $value );
|
183 |
}
|
184 |
}
|
185 |
-
|
186 |
/**
|
187 |
* データベースに保存に設定されているフォーム(投稿)を取得
|
188 |
*
|
182 |
update_post_meta( $this->post_id, $key, $value );
|
183 |
}
|
184 |
}
|
185 |
+
|
186 |
/**
|
187 |
* データベースに保存に設定されているフォーム(投稿)を取得
|
188 |
*
|
classes/models/class.contact-data.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* Author : Takashi Kitajima
|
6 |
* Author URI : http://2inc.org
|
7 |
* Created : January 1, 2015
|
8 |
-
* Modified :
|
9 |
* License : GPLv2 or later
|
10 |
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
*/
|
@@ -46,4 +46,4 @@ class MW_WP_Form_Contact_Data {
|
|
46 |
$Contact_Data_Setting->sets( $data );
|
47 |
$Contact_Data_Setting->save();
|
48 |
}
|
49 |
-
}
|
5 |
* Author : Takashi Kitajima
|
6 |
* Author URI : http://2inc.org
|
7 |
* Created : January 1, 2015
|
8 |
+
* Modified :
|
9 |
* License : GPLv2 or later
|
10 |
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
*/
|
46 |
$Contact_Data_Setting->sets( $data );
|
47 |
$Contact_Data_Setting->save();
|
48 |
}
|
49 |
+
}
|
classes/models/class.mail.php
CHANGED
@@ -2,11 +2,11 @@
|
|
2 |
/**
|
3 |
* Name : MW WP Form Mail
|
4 |
* Description: メールクラス
|
5 |
-
* Version : 1.
|
6 |
* Author : Takashi Kitajima
|
7 |
* Author URI : http://2inc.org
|
8 |
* Created : July 20, 2012
|
9 |
-
* Modified :
|
10 |
* License : GPLv2 or later
|
11 |
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
12 |
*/
|
@@ -60,6 +60,11 @@ class MW_WP_Form_Mail {
|
|
60 |
*/
|
61 |
public $attachments = array();
|
62 |
|
|
|
|
|
|
|
|
|
|
|
63 |
/**
|
64 |
* メール送信
|
65 |
*/
|
@@ -122,7 +127,10 @@ class MW_WP_Form_Mail {
|
|
122 |
* @return string
|
123 |
*/
|
124 |
public function set_mail_from( $email ) {
|
125 |
-
|
|
|
|
|
|
|
126 |
}
|
127 |
|
128 |
/**
|
@@ -304,10 +312,10 @@ class MW_WP_Form_Mail {
|
|
304 |
$this->to = $admin_mail_to;
|
305 |
}
|
306 |
if ( !$this->from ) {
|
307 |
-
$this->from = $admin_mail_from
|
308 |
}
|
309 |
if ( !$this->sender ) {
|
310 |
-
$this->sender = $admin_mail_sender
|
311 |
}
|
312 |
}
|
313 |
|
@@ -334,11 +342,22 @@ class MW_WP_Form_Mail {
|
|
334 |
*/
|
335 |
public function parse( $Setting, $do_update = false ) {
|
336 |
$Data = MW_WP_Form_Data::getInstance();
|
337 |
-
|
338 |
-
$Mail_Parser = new MW_WP_Form_Mail_Parser( $this, $Setting );
|
339 |
-
$Mail = $Mail_Parser->get_parsed_mail_object( $do_update );
|
340 |
foreach ( get_object_vars( $Mail ) as $key => $value ) {
|
341 |
$this->$key = $value;
|
342 |
}
|
343 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
344 |
}
|
2 |
/**
|
3 |
* Name : MW WP Form Mail
|
4 |
* Description: メールクラス
|
5 |
+
* Version : 1.6.0
|
6 |
* Author : Takashi Kitajima
|
7 |
* Author URI : http://2inc.org
|
8 |
* Created : July 20, 2012
|
9 |
+
* Modified : February 14, 2016
|
10 |
* License : GPLv2 or later
|
11 |
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
12 |
*/
|
60 |
*/
|
61 |
public $attachments = array();
|
62 |
|
63 |
+
/**
|
64 |
+
* @var MW_WP_Form_Mail_Parser
|
65 |
+
*/
|
66 |
+
protected $Mail_Parser;
|
67 |
+
|
68 |
/**
|
69 |
* メール送信
|
70 |
*/
|
127 |
* @return string
|
128 |
*/
|
129 |
public function set_mail_from( $email ) {
|
130 |
+
if ( filter_var( $this->from, FILTER_VALIDATE_EMAIL ) ) {
|
131 |
+
return $this->from;
|
132 |
+
}
|
133 |
+
return $email;
|
134 |
}
|
135 |
|
136 |
/**
|
312 |
$this->to = $admin_mail_to;
|
313 |
}
|
314 |
if ( !$this->from ) {
|
315 |
+
$this->from = $admin_mail_from;
|
316 |
}
|
317 |
if ( !$this->sender ) {
|
318 |
+
$this->sender = $admin_mail_sender;
|
319 |
}
|
320 |
}
|
321 |
|
342 |
*/
|
343 |
public function parse( $Setting, $do_update = false ) {
|
344 |
$Data = MW_WP_Form_Data::getInstance();
|
345 |
+
|
346 |
+
$this->Mail_Parser = new MW_WP_Form_Mail_Parser( $this, $Setting );
|
347 |
+
$Mail = $this->Mail_Parser->get_parsed_mail_object( $do_update );
|
348 |
foreach ( get_object_vars( $Mail ) as $key => $value ) {
|
349 |
$this->$key = $value;
|
350 |
}
|
351 |
}
|
352 |
+
|
353 |
+
/**
|
354 |
+
* 保存した問い合わせデータの Post IDを取得する
|
355 |
+
*
|
356 |
+
* @return int
|
357 |
+
*/
|
358 |
+
public function get_saved_mail_id(){
|
359 |
+
if ( $this->Mail_Parser ) {
|
360 |
+
return $this->Mail_Parser->get_saved_mail_id();
|
361 |
+
}
|
362 |
+
}
|
363 |
}
|
classes/services/class.mail-parser.php
CHANGED
@@ -2,11 +2,11 @@
|
|
2 |
/**
|
3 |
* Name : MW WP Form Mail Parser
|
4 |
* Description: メールパーサー
|
5 |
-
* Version : 1.0
|
6 |
* Author : Takashi Kitajima
|
7 |
* Author URI : http://2inc.org
|
8 |
* Created : April 14, 2015
|
9 |
-
* Modified :
|
10 |
* License : GPLv2 or later
|
11 |
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
12 |
*/
|
@@ -16,7 +16,7 @@ class MW_WP_Form_Mail_Parser {
|
|
16 |
* 保存した問い合わせデータの Post ID
|
17 |
* @var int
|
18 |
*/
|
19 |
-
protected $
|
20 |
|
21 |
/**
|
22 |
* @var MW_WP_Form_Mail
|
@@ -38,7 +38,7 @@ class MW_WP_Form_Mail_Parser {
|
|
38 |
* @param MW_WP_Form_Setting $Setting
|
39 |
*/
|
40 |
public function __construct( MW_WP_Form_Mail $Mail, MW_WP_Form_Setting $Setting ) {
|
41 |
-
$this->Mail =
|
42 |
$this->Data = MW_WP_Form_Data::getInstance();
|
43 |
$this->Setting = $Setting;
|
44 |
}
|
@@ -52,7 +52,7 @@ class MW_WP_Form_Mail_Parser {
|
|
52 |
public function get_parsed_mail_object( $do_update = false ) {
|
53 |
if ( $do_update ) {
|
54 |
$form_id = $this->Setting->get( 'post_id' );
|
55 |
-
$
|
56 |
'post_title' => $this->parse_mail_content( $this->Mail->subject ),
|
57 |
'post_status' => 'publish',
|
58 |
'post_type' => MWF_Functions::get_contact_data_post_type_from_form_id( $form_id ),
|
@@ -61,18 +61,27 @@ class MW_WP_Form_Mail_Parser {
|
|
61 |
// 添付ファイルをメディアに保存
|
62 |
// save_mail_body 内のフックで添付ファイルの情報を使えるように、
|
63 |
// save_mail_body より前にこのブロックを実行する
|
64 |
-
if ( !empty( $
|
65 |
MWF_Functions::save_attachments_in_media(
|
66 |
-
$
|
67 |
$this->Mail->attachments,
|
68 |
$form_id
|
69 |
);
|
70 |
}
|
71 |
-
$this->
|
72 |
}
|
73 |
return $this->parse_mail_object( $do_update );
|
74 |
}
|
75 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
/**
|
77 |
* メールオブジェクトの各プロパティを変換
|
78 |
*
|
@@ -164,13 +173,13 @@ class MW_WP_Form_Mail_Parser {
|
|
164 |
protected function parse( $matches, $do_update = false ) {
|
165 |
$match = $matches[1];
|
166 |
$form_id = $this->Setting->get( 'post_id' );
|
|
|
167 |
// MWF_Config::TRACKINGNUMBER のときはお問い合せ番号を参照する
|
168 |
if ( $match === MWF_Config::TRACKINGNUMBER ) {
|
169 |
if ( $form_id ) {
|
170 |
$value = $this->Setting->get_tracking_number( $form_id );
|
171 |
}
|
172 |
} else {
|
173 |
-
$form_key = MWF_Functions::get_form_key_from_form_id( $form_id );
|
174 |
$value = $this->Data->get( $match );
|
175 |
$value = $this->apply_filters_mwform_custom_mail_tag( $form_key, $value, $match );
|
176 |
}
|
@@ -178,8 +187,11 @@ class MW_WP_Form_Mail_Parser {
|
|
178 |
// 値が null でも保存(チェッボックス未チェックで直送信でも保存させるため)
|
179 |
// ただし、画像の場合はURLが保存されないように調整がはいるため除外が必要
|
180 |
if ( $do_update ) {
|
181 |
-
|
182 |
-
|
|
|
|
|
|
|
183 |
}
|
184 |
}
|
185 |
return $value;
|
@@ -198,7 +210,7 @@ class MW_WP_Form_Mail_Parser {
|
|
198 |
'mwform_custom_mail_tag_' . $form_key,
|
199 |
$value,
|
200 |
$match,
|
201 |
-
$this->
|
202 |
);
|
203 |
}
|
204 |
}
|
2 |
/**
|
3 |
* Name : MW WP Form Mail Parser
|
4 |
* Description: メールパーサー
|
5 |
+
* Version : 1.1.0
|
6 |
* Author : Takashi Kitajima
|
7 |
* Author URI : http://2inc.org
|
8 |
* Created : April 14, 2015
|
9 |
+
* Modified : February 14, 2016
|
10 |
* License : GPLv2 or later
|
11 |
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
12 |
*/
|
16 |
* 保存した問い合わせデータの Post ID
|
17 |
* @var int
|
18 |
*/
|
19 |
+
protected $saved_mail_id;
|
20 |
|
21 |
/**
|
22 |
* @var MW_WP_Form_Mail
|
38 |
* @param MW_WP_Form_Setting $Setting
|
39 |
*/
|
40 |
public function __construct( MW_WP_Form_Mail $Mail, MW_WP_Form_Setting $Setting ) {
|
41 |
+
$this->Mail = $Mail;
|
42 |
$this->Data = MW_WP_Form_Data::getInstance();
|
43 |
$this->Setting = $Setting;
|
44 |
}
|
52 |
public function get_parsed_mail_object( $do_update = false ) {
|
53 |
if ( $do_update ) {
|
54 |
$form_id = $this->Setting->get( 'post_id' );
|
55 |
+
$saved_mail_id = wp_insert_post( array(
|
56 |
'post_title' => $this->parse_mail_content( $this->Mail->subject ),
|
57 |
'post_status' => 'publish',
|
58 |
'post_type' => MWF_Functions::get_contact_data_post_type_from_form_id( $form_id ),
|
61 |
// 添付ファイルをメディアに保存
|
62 |
// save_mail_body 内のフックで添付ファイルの情報を使えるように、
|
63 |
// save_mail_body より前にこのブロックを実行する
|
64 |
+
if ( !empty( $saved_mail_id ) ) {
|
65 |
MWF_Functions::save_attachments_in_media(
|
66 |
+
$saved_mail_id,
|
67 |
$this->Mail->attachments,
|
68 |
$form_id
|
69 |
);
|
70 |
}
|
71 |
+
$this->saved_mail_id = $saved_mail_id;
|
72 |
}
|
73 |
return $this->parse_mail_object( $do_update );
|
74 |
}
|
75 |
|
76 |
+
/**
|
77 |
+
* Getter : $this->saved_mail_id
|
78 |
+
*
|
79 |
+
* @return int
|
80 |
+
*/
|
81 |
+
public function get_saved_mail_id(){
|
82 |
+
return $this->saved_mail_id;
|
83 |
+
}
|
84 |
+
|
85 |
/**
|
86 |
* メールオブジェクトの各プロパティを変換
|
87 |
*
|
173 |
protected function parse( $matches, $do_update = false ) {
|
174 |
$match = $matches[1];
|
175 |
$form_id = $this->Setting->get( 'post_id' );
|
176 |
+
$form_key = MWF_Functions::get_form_key_from_form_id( $form_id );
|
177 |
// MWF_Config::TRACKINGNUMBER のときはお問い合せ番号を参照する
|
178 |
if ( $match === MWF_Config::TRACKINGNUMBER ) {
|
179 |
if ( $form_id ) {
|
180 |
$value = $this->Setting->get_tracking_number( $form_id );
|
181 |
}
|
182 |
} else {
|
|
|
183 |
$value = $this->Data->get( $match );
|
184 |
$value = $this->apply_filters_mwform_custom_mail_tag( $form_key, $value, $match );
|
185 |
}
|
187 |
// 値が null でも保存(チェッボックス未チェックで直送信でも保存させるため)
|
188 |
// ただし、画像の場合はURLが保存されないように調整がはいるため除外が必要
|
189 |
if ( $do_update ) {
|
190 |
+
$ignore_keys = apply_filters( 'mwform_no_save_keys_' . $form_key, array() );
|
191 |
+
if ( !in_array( $match, $ignore_keys ) ) {
|
192 |
+
if ( !array_key_exists( $match, $this->Mail->attachments ) ) {
|
193 |
+
update_post_meta( $this->saved_mail_id, $match, $value );
|
194 |
+
}
|
195 |
}
|
196 |
}
|
197 |
return $value;
|
210 |
'mwform_custom_mail_tag_' . $form_key,
|
211 |
$value,
|
212 |
$match,
|
213 |
+
$this->saved_mail_id
|
214 |
);
|
215 |
}
|
216 |
}
|
classes/services/class.mail.php
CHANGED
@@ -1,11 +1,11 @@
|
|
1 |
<?php
|
2 |
/**
|
3 |
* Name : MW WP Form Mail Service
|
4 |
-
* Version : 1.
|
5 |
* Author : Takashi Kitajima
|
6 |
* Author URI : http://2inc.org
|
7 |
* Created : January 1, 2015
|
8 |
-
* Modified :
|
9 |
* License : GPLv2 or later
|
10 |
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
*/
|
@@ -88,6 +88,11 @@ class MW_WP_Form_Mail_Service {
|
|
88 |
|
89 |
if ( $this->Setting->get( 'usedb' ) ) {
|
90 |
$Mail_admin = $this->get_parsed_mail_object( $this->Mail_admin_raw, true );
|
|
|
|
|
|
|
|
|
|
|
91 |
} else {
|
92 |
$Mail_admin = $this->get_parsed_mail_object( $this->Mail_admin_raw );
|
93 |
}
|
1 |
<?php
|
2 |
/**
|
3 |
* Name : MW WP Form Mail Service
|
4 |
+
* Version : 1.3.0
|
5 |
* Author : Takashi Kitajima
|
6 |
* Author URI : http://2inc.org
|
7 |
* Created : January 1, 2015
|
8 |
+
* Modified : February 14, 2016
|
9 |
* License : GPLv2 or later
|
10 |
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
*/
|
88 |
|
89 |
if ( $this->Setting->get( 'usedb' ) ) {
|
90 |
$Mail_admin = $this->get_parsed_mail_object( $this->Mail_admin_raw, true );
|
91 |
+
|
92 |
+
// 問い合わせデータのメタデータの初期値を保存
|
93 |
+
$saved_mail_id = $Mail_admin->get_saved_mail_id();
|
94 |
+
$Contact_Data_Setting = new MW_WP_Form_Contact_Data_Setting( $saved_mail_id );
|
95 |
+
$Contact_Data_Setting->save();
|
96 |
} else {
|
97 |
$Mail_admin = $this->get_parsed_mail_object( $this->Mail_admin_raw );
|
98 |
}
|
mw-wp-form.php
CHANGED
@@ -3,11 +3,11 @@
|
|
3 |
* Plugin Name: MW WP Form
|
4 |
* Plugin URI: http://plugins.2inc.org/mw-wp-form/
|
5 |
* Description: MW WP Form is shortcode base contact form plugin. This plugin have many feature. For example you can use many validation rules, contact data saving, and chart aggregation using saved contact data.
|
6 |
-
* Version: 2.
|
7 |
* Author: Takashi Kitajima
|
8 |
* Author URI: http://2inc.org
|
9 |
* Created : September 25, 2012
|
10 |
-
* Modified:
|
11 |
* Text Domain: mw-wp-form
|
12 |
* Domain Path: /languages/
|
13 |
* License: GPLv2 or later
|
3 |
* Plugin Name: MW WP Form
|
4 |
* Plugin URI: http://plugins.2inc.org/mw-wp-form/
|
5 |
* Description: MW WP Form is shortcode base contact form plugin. This plugin have many feature. For example you can use many validation rules, contact data saving, and chart aggregation using saved contact data.
|
6 |
+
* Version: 2.7.0
|
7 |
* Author: Takashi Kitajima
|
8 |
* Author URI: http://2inc.org
|
9 |
* Created : September 25, 2012
|
10 |
+
* Modified: February 14, 2016
|
11 |
* Text Domain: mw-wp-form
|
12 |
* Domain Path: /languages/
|
13 |
* License: GPLv2 or later
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: http://www.amazon.co.jp/registry/wishlist/39ANKRNSTNW40
|
|
4 |
Tags: plugin, form, confirm, preview, shortcode, mail, chart, graph, html, contact form, form creation, form creator, form manager, form builder, custom form
|
5 |
Requires at least: 4.0
|
6 |
Tested up to: 4.4.0
|
7 |
-
Stable tag: 2.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -78,6 +78,15 @@ Do you have questions or issues with MW WP Form? Use these support channels appr
|
|
78 |
|
79 |
== Changelog ==
|
80 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
81 |
= 2.6.4 =
|
82 |
* Added : Add filter hook mwform_content_wpautop_mw-wp-form-xxx
|
83 |
* Added : Add argument at mwform_after_send_mw-wp-form-xxx
|
4 |
Tags: plugin, form, confirm, preview, shortcode, mail, chart, graph, html, contact form, form creation, form creator, form manager, form builder, custom form
|
5 |
Requires at least: 4.0
|
6 |
Tested up to: 4.4.0
|
7 |
+
Stable tag: 2.7.0
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
78 |
|
79 |
== Changelog ==
|
80 |
|
81 |
+
= 2.7.0 =
|
82 |
+
* Added : Added Method MW_WP_Form_Mail_Parser::get_saved_mail_id()
|
83 |
+
* Added : Added Method MW_WP_Form_Mail::get_saved_mail_id()
|
84 |
+
* Added : Added filter hook mwform_upload_dir_mw-wp-form-xxx
|
85 |
+
* Added : Added filter hook mwform_upload_filename_mw-wp-form-xxx
|
86 |
+
* Added : Added filter hook mwform_no_save_keys_mw-wp-form-xxx
|
87 |
+
* Changed : Changed to save the default values of contact data meta data at the time of email saved.
|
88 |
+
* Bugfix : Fixed a bug that e-mail is not sent when the "from" is in violation of the RFC.
|
89 |
+
|
90 |
= 2.6.4 =
|
91 |
* Added : Add filter hook mwform_content_wpautop_mw-wp-form-xxx
|
92 |
* Added : Add argument at mwform_after_send_mw-wp-form-xxx
|