... | ... |
@@ -27,14 +27,17 @@ class Class_Rucy_Setting { |
27 | 27 |
$is_different = true; |
28 | 28 |
} |
29 | 29 |
$is_update = $component->update_support_post_type( $post_support_posts ); |
30 |
- if ( $is_different && $is_update ) { |
|
31 |
- // 更新完了 |
|
32 |
- } else if ( $is_different && !$is_update ) { |
|
30 |
+ if ( ( $is_different === false && $is_update === false ) || ( $is_different && $is_update ) ) { |
|
31 |
+ // 更新完了 or 同じ値で更新した |
|
32 |
+ set_transient( RC_SETTING_UPDATE, array( __( 'Success to setting update.', RC_TXT_DOMAIN ) ), 10 ); |
|
33 |
+ } else if ( $is_different && $is_update === false ) { |
|
33 | 34 |
// 更新失敗 |
34 |
- } else if ( !$is_different && !$is_update ) { |
|
35 |
- // 同じ値で更新した |
|
35 |
+ $e = new WP_Error(); |
|
36 |
+ $e->add( 'error', __( 'Failed to setting update.', RC_TXT_DOMAIN ) ); |
|
37 |
+ set_transient( RC_SETTING_ERROR, $e->get_error_messages(), 10 ); |
|
36 | 38 |
} |
37 | 39 |
$support_post_type = $component->get_support_post_type(); |
40 |
+ wp_safe_redirect( menu_page_url( 'rucy', false ) ); |
|
38 | 41 |
} |
39 | 42 |
?> |
40 | 43 |
<div class="wrap"> |
... | ... |
@@ -44,7 +47,7 @@ class Class_Rucy_Setting { |
44 | 44 |
<?php wp_nonce_field('update-options'); ?> |
45 | 45 |
<table class="form-table"> |
46 | 46 |
<tr class=""> |
47 |
- <th><?php _e( 'post type', RC_TXT_DOMAIN ); ?><br><small>*<?php _e( 'Require', RC_TXT_DOMAIN ); ?></small></th> |
|
47 |
+ <th><?php _e( 'post type', RC_TXT_DOMAIN ); ?></th> |
|
48 | 48 |
<td> |
49 | 49 |
<ul> |
50 | 50 |
<?php foreach ( $post_types as $key => $post_type ) { |
... | ... |
@@ -65,4 +68,22 @@ class Class_Rucy_Setting { |
65 | 65 |
</div> |
66 | 66 |
<?php |
67 | 67 |
} |
68 |
+ |
|
69 |
+ public function set_admin_notices() { |
|
70 |
+ $message_class = ""; |
|
71 |
+ if ( $messages = get_transient( RC_SETTING_UPDATE ) ) { |
|
72 |
+ $message_class = 'updated'; |
|
73 |
+ } else if ( $messages = get_transient( RC_SETTING_ERROR ) ) { |
|
74 |
+ $message_class = 'error'; |
|
75 |
+ } |
|
76 |
+?> |
|
77 |
+<div class="<?php echo $message_class; ?>"> |
|
78 |
+ <ul> |
|
79 |
+ <?php foreach ( $messages as $message ): ?> |
|
80 |
+ <li><?php echo esc_html( $message ); ?></li> |
|
81 |
+ <?php endforeach; ?> |
|
82 |
+ </ul> |
|
83 |
+</div> |
|
84 |
+<?php |
|
85 |
+ } |
|
68 | 86 |
} |
... | ... |
@@ -14,6 +14,8 @@ define( 'RC_PLUGIN_DIR', untrailingslashit( dirname( __FILE__ ) ) ); |
14 | 14 |
define( 'RC_SETTING_OPTION_KEY', 'rucy_post_type' ); |
15 | 15 |
define( 'RC_TXT_DOMAIN', 'rucy' ); |
16 | 16 |
define( 'RC_CRON_HOOK', 'rucy_update_reserved_content' ); |
17 |
+define( 'RC_SETTING_UPDATE', 'rucy_setting_update' ); |
|
18 |
+define( 'RC_SETTING_ERROR', 'rucy_setting_error' ); |
|
17 | 19 |
load_plugin_textdomain( RC_TXT_DOMAIN, false, 'rucy/lang' ); |
18 | 20 |
|
19 | 21 |
require_once RC_PLUGIN_DIR . '/inc/class-rucy-component.php'; |
... | ... |
@@ -28,6 +30,7 @@ class Rucy_Class { |
28 | 28 |
add_action( 'wp_admin', array( $this, 'enqueue_pointer_menu' ) ); |
29 | 29 |
$setting = new Class_Rucy_Setting(); |
30 | 30 |
add_action( 'admin_menu', array( $setting, 'set_admin_menu' ) ); |
31 |
+ add_action( 'admin_notices', array( $setting, 'set_admin_notices' ) ); |
|
31 | 32 |
} |
32 | 33 |
|
33 | 34 |
public function activate_plugin() { |