SEO SIMPLE PACK - Version 1.2.1

Version Description

  • title / description / robots
  • %term_description%
  • description%term_description%
  • description
Download this release

Release Info

Developer looswebstudio
Plugin Icon 128x128 SEO SIMPLE PACK
Version 1.2.1
Comparing to
See all releases

Code changes from version 1.2.0 to 1.2.1

assets/css/ssp.css CHANGED
@@ -171,9 +171,9 @@
171
  #ssp_wrap table.form-table td{
172
  padding-left: 40px;
173
  }
174
- #ssp_wrap #post_type .tr_desc{
175
  display: none;
176
- }
177
  /*
178
  ssp_item
179
  */
@@ -285,7 +285,6 @@ tr[data-disable="1"] + tr + tr + tr{
285
 
286
 
287
  /* タブコンテンツ */
288
-
289
  .nav-tab{
290
  cursor: pointer;
291
  }
@@ -356,4 +355,13 @@ input:checked + .slider:before {
356
 
357
  .slider.round:before {
358
  border-radius: 50%;
 
 
 
 
 
 
 
 
 
359
  }
171
  #ssp_wrap table.form-table td{
172
  padding-left: 40px;
173
  }
174
+ /* #ssp_wrap #post_type .tr_desc{
175
  display: none;
176
+ } */
177
  /*
178
  ssp_item
179
  */
285
 
286
 
287
  /* タブコンテンツ */
 
288
  .nav-tab{
289
  cursor: pointer;
290
  }
355
 
356
  .slider.round:before {
357
  border-radius: 50%;
358
+ }
359
+
360
+ /* タームメタ */
361
+ .form-table .ssp_term_meta_title td{
362
+ padding-left: 0;
363
+ }
364
+ .ssp_term_meta_title h2{
365
+ border-top: dashed 1px #ccc;
366
+ padding: 16px 0 0;
367
  }
class/ssp_activate.php CHANGED
@@ -21,21 +21,20 @@ class SSP_Activate {
21
  $SSP_ogp = SSP_Data::DEFAULT_OGP;
22
 
23
  update_option( SSP_Data::DB_NAME[ 'installed' ], 1 );
24
- update_option( SSP_Data::DB_NAME[ 'notification' ], 'hide' );
 
 
 
 
25
 
26
  } else {
27
 
28
  //データが残っている場合 : 既存設定取得
29
- $SSP_settings = get_option( SSP_Data::DB_NAME[ 'settings' ] );
30
- $SSP_ogp = get_option( SSP_Data::DB_NAME[ 'ogp' ] );
31
 
32
  }
33
 
34
- //DB更新
35
- update_option( SSP_Data::DB_NAME[ 'settings' ], $SSP_settings );
36
- update_option( SSP_Data::DB_NAME[ 'ogp' ], $SSP_ogp );
37
-
38
-
39
  }
40
 
41
 
21
  $SSP_ogp = SSP_Data::DEFAULT_OGP;
22
 
23
  update_option( SSP_Data::DB_NAME[ 'installed' ], 1 );
24
+ // update_option( SSP_Data::DB_NAME[ 'notification' ], 'hide' );
25
+
26
+ //DB更新
27
+ update_option( SSP_Data::DB_NAME[ 'settings' ], $SSP_settings );
28
+ update_option( SSP_Data::DB_NAME[ 'ogp' ], $SSP_ogp );
29
 
30
  } else {
31
 
32
  //データが残っている場合 : 既存設定取得
33
+ // $SSP_settings = get_option( SSP_Data::DB_NAME[ 'settings' ] );
34
+ // $SSP_ogp = get_option( SSP_Data::DB_NAME[ 'ogp' ] );
35
 
36
  }
37
 
 
 
 
 
 
38
  }
39
 
40
 
class/ssp_data.php CHANGED
@@ -61,7 +61,7 @@ class SSP_Data {
61
 
62
 
63
  /**
64
- * 初回インストール時に登録する基本設定のデフォルト値
65
  */
66
  const DEFAULT_SETTINGS = [
67
  'home_title' => '%_site_title_% %_sep_% %_phrase_%',
@@ -86,7 +86,8 @@ class SSP_Data {
86
  'media_desc' => '%_page_contents_%',
87
  'cat_noindex' => true,
88
  'cat_title' => '%_cat_name_% %_sep_% %_site_title_%',
89
- 'cat_desc' => 'カテゴリー「%_cat_name_%」の一覧ページです。',
 
90
  'tag_noindex' => true,
91
  'tag_title' => '%_tag_name_% %_sep_% %_site_title_%',
92
  'tag_desc' => 'タグ「%_tag_name_%」の一覧ページです。',
61
 
62
 
63
  /**
64
+ * 基本設定のデフォルト値
65
  */
66
  const DEFAULT_SETTINGS = [
67
  'home_title' => '%_site_title_% %_sep_% %_phrase_%',
86
  'media_desc' => '%_page_contents_%',
87
  'cat_noindex' => true,
88
  'cat_title' => '%_cat_name_% %_sep_% %_site_title_%',
89
+ // 'cat_desc' => 'カテゴリー「%_cat_name_%」の一覧ページです。',
90
+ 'cat_desc' => '%_term_description_%',
91
  'tag_noindex' => true,
92
  'tag_title' => '%_tag_name_% %_sep_% %_site_title_%',
93
  'tag_desc' => 'タグ「%_tag_name_%」の一覧ページです。',
class/ssp_init.php CHANGED
@@ -9,7 +9,9 @@ class SSP_Init {
9
 
10
  $this->set_ssp_data();
11
  $this->set_hooks();
12
- $this->set_notification();
 
 
13
 
14
  }
15
 
@@ -22,8 +24,12 @@ class SSP_Init {
22
  //サイト基本情報取得
23
  SSP_Data::$site_title = esc_html( get_option( 'blogname' ) );
24
  SSP_Data::$site_catch_phrase = esc_html( get_option( 'blogdescription' ) );
25
- SSP_Data::$settings = get_option( SSP_Data::DB_NAME[ 'settings' ] );
26
- SSP_Data::$ogp = get_option( SSP_Data::DB_NAME[ 'ogp' ] );
 
 
 
 
27
 
28
  }
29
 
@@ -39,14 +45,14 @@ class SSP_Init {
39
  add_action( 'admin_menu', ['SSP_Menu', 'add_menus'] );
40
  add_action( 'wp_head', [ 'SSP_Output', 'main' ], 10 );
41
  add_action( 'template_redirect', [ 'SSP_Methods', 'redirect' ], 1 );
42
- add_action( 'add_meta_boxes', [ 'SSP_MetaBox', 'add_ssp_metabox' ], 1);
43
- add_action( 'save_post', [ 'SSP_MetaBox', 'save_ssp_metabox'] );
44
  remove_action('wp_head', '_wp_render_title_tag', 1);
45
 
46
  }
47
 
48
  /**
49
- * 更新に関する通知
50
  */
51
  private function set_notification() {
52
 
@@ -65,18 +71,20 @@ class SSP_Init {
65
 
66
  // 以前から使用中の方へ向けてのメッセージ
67
  $notification_db = get_option( SSP_Data::DB_NAME[ 'notification' ] );
68
- if( $notification_db === 'show') {
69
- add_action( 'admin_notices', function() { ?>
70
- <div class="notice notice-error ssp_notice">
71
- <p>
72
- <b>[ SEO SIMPLE PACK 更新に伴うお知らせ ]</b><br>
73
- 個別ページごとの <code>meta robots</code> の設定方法が新しくなりました!<br>
74
- 以前のバージョンで個別設定をしていた場合は、お手数ですが再度設定をお願いいたします。
75
- </p>
76
- <form action="" method="post">
77
- <button type="submit" name="ssp_notice_close" class="notice-dismiss"><span>この通知を非表示にする</span></button>
78
- </form>
79
- </div> <?php
 
 
80
  } );
81
  }
82
 
9
 
10
  $this->set_ssp_data();
11
  $this->set_hooks();
12
+ SSP_MetaBox::init();
13
+
14
+ //$this->set_notification(); //OFF中
15
 
16
  }
17
 
24
  //サイト基本情報取得
25
  SSP_Data::$site_title = esc_html( get_option( 'blogname' ) );
26
  SSP_Data::$site_catch_phrase = esc_html( get_option( 'blogdescription' ) );
27
+ SSP_Data::$settings = get_option( SSP_Data::DB_NAME[ 'settings' ] ) ?: SSP_Data::DEFAULT_SETTINGS;
28
+ SSP_Data::$ogp = get_option( SSP_Data::DB_NAME[ 'ogp' ] ) ?: SSP_Data::DEFAULT_OGP;
29
+
30
+ //default設定とマージ
31
+ SSP_Data::$settings = array_merge( SSP_Data::DEFAULT_SETTINGS, SSP_Data::$settings );
32
+ SSP_Data::$ogp = array_merge( SSP_Data::DEFAULT_OGP, SSP_Data::$ogp );
33
 
34
  }
35
 
45
  add_action( 'admin_menu', ['SSP_Menu', 'add_menus'] );
46
  add_action( 'wp_head', [ 'SSP_Output', 'main' ], 10 );
47
  add_action( 'template_redirect', [ 'SSP_Methods', 'redirect' ], 1 );
48
+
49
+ //titleタグの除去
50
  remove_action('wp_head', '_wp_render_title_tag', 1);
51
 
52
  }
53
 
54
  /**
55
+ * 更新に関する通知 :: 〜OFF中〜
56
  */
57
  private function set_notification() {
58
 
71
 
72
  // 以前から使用中の方へ向けてのメッセージ
73
  $notification_db = get_option( SSP_Data::DB_NAME[ 'notification' ] );
74
+ if( $notification_db === 'show' ) {
75
+ add_action( 'admin_notices', function() {
76
+ ?>
77
+ <div class="notice notice-error ssp_notice">
78
+ <p>
79
+ <b>[ SEO SIMPLE PACK 更新に伴うお知らせ ]</b><br>
80
+ 個別ページごとの <code>meta robots</code> の設定方法が新しくなりました!<br>
81
+ 以前のバージョンで個別設定をしていた場合は、お手数ですが再度設定をお願いいたします。
82
+ </p>
83
+ <form action="" method="post">
84
+ <button type="submit" name="ssp_notice_close" class="notice-dismiss"><span>この通知を非表示にする</span></button>
85
+ </form>
86
+ </div>
87
+ <?php
88
  } );
89
  }
90
 
class/ssp_metabox.php CHANGED
@@ -10,19 +10,44 @@ class SSP_MetaBox {
10
  /**
11
  * metabox names
12
  */
13
- const METANAME = [
14
- 'robots' => 'ssp_meta_robots',
15
  'title' => 'ssp_meta_title',
16
  'description' => 'ssp_meta_description',
17
  'keyword' => 'ssp_meta_keyword',
18
  ];
19
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
20
 
21
  /**
22
  * Add metabox.
23
- *
24
  */
25
- public static function add_ssp_metabox() {
26
  $args = ['public' => true, '_builtin' => false];
27
  $post_types = get_post_types( $args, 'names', 'and' );
28
  $screens = array_merge( ['post','page'], $post_types );
@@ -38,7 +63,6 @@ class SSP_MetaBox {
38
  );
39
  }
40
 
41
-
42
  /**
43
  * Metabox cintents.
44
  *
@@ -46,17 +70,17 @@ class SSP_MetaBox {
46
  */
47
  public static function ssp_metabox_callback( $post ) {
48
 
49
- $val_robots = get_post_meta( $post->ID, self::METANAME['robots'], true );
50
- $val_title = get_post_meta( $post->ID, self::METANAME['title'], true );
51
- $val_description = get_post_meta( $post->ID, self::METANAME['description'], true );
52
- $val_keyword = get_post_meta( $post->ID, self::METANAME['keyword'], true );
53
 
54
  //更新に伴う調節
55
  if ( $val_robots === "noindex,follow" ) {
56
- update_post_meta( $post->ID, self::METANAME['robots'], "noindex");
57
  $val_robots = "noindex";
58
  } elseif ( $val_robots === "index,nofollow" ) {
59
- update_post_meta( $post->ID, self::METANAME['robots'], "nofollow");
60
  $val_robots = "nofollow";
61
  }
62
 
@@ -70,57 +94,61 @@ class SSP_MetaBox {
70
  ?>
71
  <div id="ssp_wrap" class="ssp_metabox">
72
 
73
- <label for="<?=self::METANAME['robots']?>">このページの robotsタグ (インデックスさせるかどうか)</label>
74
- <div class="ssp_meta_inner">
75
- <select name="<?=self::METANAME['robots']?>" id="<?=self::METANAME['robots']?>">
76
- <option value="">-- デフォルト設定のまま --</option>
77
- <?php foreach ($robots_arr as $key => $value) {
78
- if ( $value === $val_robots ) {
79
- echo '<option value="', $value ,'" selected>', $key ,'</option>';
80
- } else {
81
- echo '<option value="', $value ,'">', $key ,'</option>';
82
- }
83
- } ?>
84
- </select>
85
- <p class="ssp_note">
86
- <i>
87
- 例:「サイトマップ」など、インデックスさせたくない特別なページには「インデックスさせない(noindex)」を設定してください。
88
- <br>
89
- 投稿ページの デフォルト設定 は <a href="<?=admin_url('admin.php?page=ssp_main_setting')?>" target="_blank">「SEO PACK」の「一般設定」</a>から<a href="<?=admin_url('admin.php?page=ssp_main_setting#post_type')?>" target="_blank">「投稿ページ」タブ</a> をご確認ください。
90
- </i>
91
- </p>
92
- </div>
93
-
94
-
95
- <label for="<?=self::METANAME['title']?>">このページのタイトルタグを上書きする</label>
96
- <div class="ssp_meta_inner">
97
- <input type="text" id="<?=self::METANAME['title']?>" name="<?=self::METANAME['title']?>" value="<?=esc_html( $val_title)?>">
98
- <p class="ssp_note">
99
- <i><a href="<?=admin_url('admin.php?page=ssp_help')?>" target="_blank">スニペットタグ</a> ( <code>%_site_title_%</code>など )が使用可能です。空白の場合、デフォルトの形式で出力されます。</i>
100
- </p>
101
- </div>
102
-
103
- <label for="<?=self::METANAME['description']?>">このページのディスクリプション</label>
104
- <div class="ssp_meta_inner">
105
- <textarea id="<?=self::METANAME['description']?>" name="<?=self::METANAME['description']?>"><?=esc_html( $val_description )?></textarea>
106
- <p class="ssp_note">
107
- <i>空白の場合、コンテンツから自動でディスクリプションタグが生成されます。</i>
108
- </p>
109
- </div>
110
-
111
- <label for="<?=self::METANAME['keyword']?>">このページのキーワード</label>
112
- <div class="ssp_meta_inner">
113
- <input type="text" id="<?=self::METANAME['keyword']?>" name="<?=self::METANAME['keyword']?>" value="<?=esc_html( $val_keyword )?>">
114
- <p class="ssp_note">
115
- <i>空白の場合、<a href="<?=admin_url('admin.php?page=ssp_main_setting')?>" target="_blank">「SEO PACK」の「基本設定」</a>の「キーワード」設定が使用されます。</i>
116
- </p>
117
- </div>
118
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
119
  <?php
120
  // nonceフィールド追加
121
  wp_nonce_field( SSP_Data::NOUNCE_ACTION, SSP_Data::NOUNCE_NAME );
122
  }
123
 
 
 
 
 
124
  public static function save_ssp_metabox( $post_id ) {
125
 
126
  /* Debug デバッグ には exit() 使う*/
@@ -172,26 +200,131 @@ class SSP_MetaBox {
172
 
173
  // Make sure that it is set.
174
  // 保存したい情報が渡ってきているか確認
175
- if ( !isset( $_POST[self::METANAME['robots']] ) ||
176
- !isset( $_POST[self::METANAME['title']] ) ||
177
- !isset( $_POST[self::METANAME['description']] ) ||
178
- !isset( $_POST[self::METANAME['keyword']] ) ) {
179
  return;
180
  }
181
 
182
  // Sanitize user input.
183
  // 入力された値をサニタイズ
184
- $meta_robots = sanitize_text_field( $_POST[self::METANAME['robots']] );
185
- $meta_title = sanitize_text_field( $_POST[self::METANAME['title']] );
186
- $meta_description = sanitize_text_field( $_POST[self::METANAME['description']] );
187
- $meta_keyword = sanitize_text_field( $_POST[self::METANAME['keyword']] );
188
 
189
  // Update the meta field in the database.
190
  // データベースのポストメタに値を保存
191
- update_post_meta( $post_id, self::METANAME['robots'], $meta_robots );
192
- update_post_meta( $post_id, self::METANAME['title'], $meta_title );
193
- update_post_meta( $post_id, self::METANAME['description'], $meta_description );
194
- update_post_meta( $post_id, self::METANAME['keyword'], $meta_keyword );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
195
  }
196
  }
197
 
10
  /**
11
  * metabox names
12
  */
13
+ const P_METANAME = [
14
+ 'robots' => 'ssp_meta_robots',
15
  'title' => 'ssp_meta_title',
16
  'description' => 'ssp_meta_description',
17
  'keyword' => 'ssp_meta_keyword',
18
  ];
19
 
20
+ /**
21
+ * metabox names
22
+ */
23
+ const T_METANAME = [
24
+ 'robots' => 'ssp_meta_robots',
25
+ 'title' => 'ssp_meta_title',
26
+ 'description' => 'ssp_meta_description',
27
+ ];
28
+
29
+ /**
30
+ * init
31
+ */
32
+ public static function init() {
33
+ //post meta
34
+ add_action( 'add_meta_boxes', [ 'SSP_MetaBox', 'ssp_add_metabox' ], 1);
35
+ add_action( 'save_post', [ 'SSP_MetaBox', 'save_ssp_metabox'] );
36
+
37
+ //term meta
38
+ // add_action('category_add_form_fields', [ 'SSP_MetaBox', 'ssp_add_term_fields' ]);
39
+ // add_action('post_tag_add_form_fields', [ 'SSP_MetaBox', 'ssp_add_term_fields' ]);
40
+ add_action('category_edit_form_fields', [ 'SSP_MetaBox', 'ssp_add_term_edit_fields' ], 20);
41
+ add_action('post_tag_edit_form_fields', [ 'SSP_MetaBox', 'ssp_add_term_edit_fields' ], 20);
42
+ add_action( 'created_term', [ 'SSP_MetaBox', 'ssp_save_term_filds' ] ); //新規追加用 保存処理フック
43
+ add_action( 'edited_terms', [ 'SSP_MetaBox', 'ssp_save_term_filds' ] ); //編集ページ用 保存処理フック
44
+ }
45
+
46
 
47
  /**
48
  * Add metabox.
 
49
  */
50
+ public static function ssp_add_metabox() {
51
  $args = ['public' => true, '_builtin' => false];
52
  $post_types = get_post_types( $args, 'names', 'and' );
53
  $screens = array_merge( ['post','page'], $post_types );
63
  );
64
  }
65
 
 
66
  /**
67
  * Metabox cintents.
68
  *
70
  */
71
  public static function ssp_metabox_callback( $post ) {
72
 
73
+ $val_robots = get_post_meta( $post->ID, self::P_METANAME['robots'], true );
74
+ $val_title = get_post_meta( $post->ID, self::P_METANAME['title'], true );
75
+ $val_description = get_post_meta( $post->ID, self::P_METANAME['description'], true );
76
+ $val_keyword = get_post_meta( $post->ID, self::P_METANAME['keyword'], true );
77
 
78
  //更新に伴う調節
79
  if ( $val_robots === "noindex,follow" ) {
80
+ update_post_meta( $post->ID, self::P_METANAME['robots'], "noindex");
81
  $val_robots = "noindex";
82
  } elseif ( $val_robots === "index,nofollow" ) {
83
+ update_post_meta( $post->ID, self::P_METANAME['robots'], "nofollow");
84
  $val_robots = "nofollow";
85
  }
86
 
94
  ?>
95
  <div id="ssp_wrap" class="ssp_metabox">
96
 
97
+ <label for="<?=self::P_METANAME['robots']?>">このページの robotsタグ (インデックスさせるかどうか)</label>
98
+ <div class="ssp_meta_inner">
99
+ <select name="<?=self::P_METANAME['robots']?>" id="<?=self::P_METANAME['robots']?>">
100
+ <option value="">-- デフォルト設定のまま --</option>
101
+ <?php foreach ($robots_arr as $key => $value) {
102
+ if ( $value === $val_robots ) {
103
+ echo '<option value="', $value ,'" selected>', $key ,'</option>';
104
+ } else {
105
+ echo '<option value="', $value ,'">', $key ,'</option>';
106
+ }
107
+ } ?>
108
+ </select>
109
+ <p class="ssp_note">
110
+ <i>
111
+ 例:「サイトマップ」など、インデックスさせたくない特別なページには「インデックスさせない(noindex)」を設定してください。
112
+ <br>
113
+ 投稿ページの デフォルト設定 は <a href="<?=admin_url('admin.php?page=ssp_main_setting')?>" target="_blank">「SEO PACK」の「一般設定」</a>から<a href="<?=admin_url('admin.php?page=ssp_main_setting#post_type')?>" target="_blank">「投稿ページ」タブ</a> をご確認ください。
114
+ </i>
115
+ </p>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
116
  </div>
117
+
118
+
119
+ <label for="<?=self::P_METANAME['title']?>">このページのタイトルタグを上書きする</label>
120
+ <div class="ssp_meta_inner">
121
+ <input type="text" id="<?=self::P_METANAME['title']?>" name="<?=self::P_METANAME['title']?>" value="<?=esc_html( $val_title)?>">
122
+ <p class="ssp_note">
123
+ <i><a href="<?=admin_url('admin.php?page=ssp_help')?>" target="_blank">スニペットタグ</a> ( <code>%_site_title_%</code>など )が使用可能です。空白の場合、デフォルトの形式で出力されます。</i>
124
+ </p>
125
+ </div>
126
+
127
+ <label for="<?=self::P_METANAME['description']?>">このページのディスクリプション</label>
128
+ <div class="ssp_meta_inner">
129
+ <textarea id="<?=self::P_METANAME['description']?>" name="<?=self::P_METANAME['description']?>"><?=esc_html( $val_description )?></textarea>
130
+ <p class="ssp_note">
131
+ <i>空白の場合、コンテンツから自動でディスクリプションタグが生成されます。</i>
132
+ </p>
133
+ </div>
134
+
135
+ <label for="<?=self::P_METANAME['keyword']?>">このページのキーワード</label>
136
+ <div class="ssp_meta_inner">
137
+ <input type="text" id="<?=self::P_METANAME['keyword']?>" name="<?=self::P_METANAME['keyword']?>" value="<?=esc_html( $val_keyword )?>">
138
+ <p class="ssp_note">
139
+ <i>空白の場合、<a href="<?=admin_url('admin.php?page=ssp_main_setting')?>" target="_blank">「SEO PACK」の「基本設定」</a>の「キーワード」設定が使用されます。</i>
140
+ </p>
141
+ </div>
142
+ </div>
143
  <?php
144
  // nonceフィールド追加
145
  wp_nonce_field( SSP_Data::NOUNCE_ACTION, SSP_Data::NOUNCE_NAME );
146
  }
147
 
148
+
149
+ /**
150
+ * Save post meta
151
+ */
152
  public static function save_ssp_metabox( $post_id ) {
153
 
154
  /* Debug デバッグ には exit() 使う*/
200
 
201
  // Make sure that it is set.
202
  // 保存したい情報が渡ってきているか確認
203
+ if ( !isset( $_POST[self::P_METANAME['robots']] ) ||
204
+ !isset( $_POST[self::P_METANAME['title']] ) ||
205
+ !isset( $_POST[self::P_METANAME['description']] ) ||
206
+ !isset( $_POST[self::P_METANAME['keyword']] ) ) {
207
  return;
208
  }
209
 
210
  // Sanitize user input.
211
  // 入力された値をサニタイズ
212
+ $meta_robots = sanitize_text_field( $_POST[self::P_METANAME['robots']] );
213
+ $meta_title = sanitize_text_field( $_POST[self::P_METANAME['title']] );
214
+ $meta_description = sanitize_text_field( $_POST[self::P_METANAME['description']] );
215
+ $meta_keyword = sanitize_text_field( $_POST[self::P_METANAME['keyword']] );
216
 
217
  // Update the meta field in the database.
218
  // データベースのポストメタに値を保存
219
+ update_post_meta( $post_id, self::P_METANAME['robots'], $meta_robots );
220
+ update_post_meta( $post_id, self::P_METANAME['title'], $meta_title );
221
+ update_post_meta( $post_id, self::P_METANAME['description'], $meta_description );
222
+ update_post_meta( $post_id, self::P_METANAME['keyword'], $meta_keyword );
223
+ }
224
+
225
+
226
+ /**
227
+ * ターム「新規追加」画面にフィールド追加
228
+ */
229
+ public static function ssp_add_term_fields() {
230
+ $robots_arr = [
231
+ "インデックスさせる" => "index,follow",
232
+ "インデックスさせない (noindex)" => "noindex",
233
+ "リンクを辿らせない (nofollow)" => "nofollow",
234
+ "キャッシュさせない (noarchive)" => "noarchive",
235
+ "noindex,nofollow" => "noindex,nofollow",
236
+ ];
237
+ ?>
238
+ <div class="form-field">
239
+ <label for="<?=self::T_METANAME['robots']?>">【SSP】このタームアーカイブページの robotsタグ設定</label>
240
+ <select name="<?=self::T_METANAME['robots']?>" id="<?=self::T_METANAME['robots']?>">
241
+ <option value="">-- デフォルト設定のまま --</option>
242
+ <?php foreach ($robots_arr as $key => $value) {
243
+ if ( $value === $val_robots ) {
244
+ echo '<option value="', $value ,'" selected>', $key ,'</option>';
245
+ } else {
246
+ echo '<option value="', $value ,'">', $key ,'</option>';
247
+ }
248
+ } ?>
249
+ </select>
250
+ </div>
251
+ <div class="form-field">
252
+ <label for="<?=self::T_METANAME['title']?>">【SSP】このタームアーカイブページの titleタグ</label>
253
+ <input type="text" name="<?=self::T_METANAME['title']?>" id="<?=self::T_METANAME['title']?>">
254
+ </div>
255
+ <div class="form-field">
256
+ <label for="<?=self::T_METANAME['description']?>">【SSP】このタームアーカイブページの descriptionタグ</label>
257
+ <textarea name="<?=self::T_METANAME['description']?>" id="<?=self::T_METANAME['description']?>" cols="40" rows="5"></textarea>
258
+ </div>
259
+ <?php
260
+ }
261
+
262
+ /**
263
+ * ターム「編集」画面にフィールド追加
264
+ */
265
+ public static function ssp_add_term_edit_fields( $term ) {
266
+ $robots_arr = [
267
+ "インデックスさせる" => "index,follow",
268
+ "インデックスさせない (noindex)" => "noindex",
269
+ "リンクを辿らせない (nofollow)" => "nofollow",
270
+ "キャッシュさせない (noarchive)" => "noarchive",
271
+ "noindex,nofollow" => "noindex,nofollow",
272
+ ];
273
+ $val_robots = get_term_meta( $term->term_id, self::T_METANAME['robots'], true );
274
+ $val_title = get_term_meta( $term->term_id, self::T_METANAME['title'], true );
275
+ $val_description = get_term_meta( $term->term_id, self::T_METANAME['description'], true );
276
+ ?>
277
+ <tr class="ssp_term_meta_title">
278
+ <td colspan="2">
279
+ <h2>SEO SIMPLE PACKの設定</h2>
280
+ </td>
281
+ </tr>
282
+ <tr class="form-field">
283
+ <th>
284
+ <label for="<?=self::T_METANAME['robots']?>">このタームアーカイブページの robotsタグ</label>
285
+ </th>
286
+ <td>
287
+ <select name="<?=self::T_METANAME['robots']?>" id="<?=self::T_METANAME['robots']?>">
288
+ <option value="">-- デフォルト設定のまま --</option>
289
+ <?php foreach ($robots_arr as $key => $value) {
290
+ if ( $value === $val_robots ) {
291
+ echo '<option value="', $value ,'" selected>', $key ,'</option>';
292
+ } else {
293
+ echo '<option value="', $value ,'">', $key ,'</option>';
294
+ }
295
+ } ?>
296
+ </select>
297
+ </td>
298
+ </tr>
299
+ <tr class="form-field">
300
+ <th>
301
+ <label for="<?=self::T_METANAME['title']?>">このタームアーカイブページの titleタグ</label>
302
+ </th>
303
+ <td>
304
+ <input type="text" name="<?=self::T_METANAME['title']?>" id="<?=self::T_METANAME['title']?>" value="<?=$val_title?>">
305
+ </td>
306
+ </tr>
307
+ <tr class="form-field">
308
+ <th>
309
+ <label for="<?=self::T_METANAME['description']?>">このタームアーカイブページの descriptionタグ</label>
310
+ </th>
311
+ <td>
312
+ <textarea name="<?=self::T_METANAME['description']?>" id="<?=self::T_METANAME['description']?>" cols="40" rows="5"><?=$val_description?></textarea>
313
+ </td>
314
+ </tr>
315
+ <?php
316
+ }
317
+
318
+
319
+ /**
320
+ * Save term meta
321
+ */
322
+ public static function ssp_save_term_filds( $term_id ) {
323
+ foreach ( self::T_METANAME as $label => $keyname) {
324
+ if ( isset( $_POST[$keyname] ) ) {
325
+ update_term_meta( $term_id, $keyname, $_POST[$keyname]);
326
+ }
327
+ }
328
  }
329
  }
330
 
class/ssp_methods.php CHANGED
@@ -168,6 +168,8 @@ class SSP_Methods {
168
  $str = str_replace ('%_page_contents_%', '<span>投稿コンテンツ</span>', $str);
169
  $str = str_replace ('%_date_%', '<span>日付</span>', $str);
170
  $str = str_replace ('%_format_name_%', '<span>フォーマット名</span>', $str);
 
 
171
 
172
  if (strpos($str, '%_sep_%') !== false) {
173
 
@@ -225,21 +227,32 @@ class SSP_Methods {
225
  //Get DB name.
226
  $db_name = $P[ 'db_name' ];
227
 
 
228
  if ( !in_array( $db_name, SSP_Data::DB_NAME ) ) {
229
  exit( 'DataBase was not found' );
230
  }
231
 
232
- //Get DB
233
- $db_data = get_option( $db_name );
 
 
 
 
 
 
 
 
 
234
 
235
- if ( $db_data === false ) {
236
  exit( 'DataBase was not found' );
237
- };
 
238
 
239
  //Delete unexpected data form the POST data.
 
240
  foreach ( $P as $key => $v ) {
241
 
242
- if ( !isset( $db_data[ $key ] ) ) {
243
 
244
  unset( $P[ $key ] );
245
 
168
  $str = str_replace ('%_page_contents_%', '<span>投稿コンテンツ</span>', $str);
169
  $str = str_replace ('%_date_%', '<span>日付</span>', $str);
170
  $str = str_replace ('%_format_name_%', '<span>フォーマット名</span>', $str);
171
+ $str = str_replace ('%_term_description_%', '<span>タームの説明</span>', $str);
172
+
173
 
174
  if (strpos($str, '%_sep_%') !== false) {
175
 
227
  //Get DB name.
228
  $db_name = $P[ 'db_name' ];
229
 
230
+ //SSP用のデータベースが登録されていなければ exit
231
  if ( !in_array( $db_name, SSP_Data::DB_NAME ) ) {
232
  exit( 'DataBase was not found' );
233
  }
234
 
235
+ //Get DB 設定可能なデータのリストを取得
236
+ //$db_data = get_option( $db_name );
237
+ if ( $db_name === SSP_Data::DB_NAME['settings'] ) {
238
+
239
+ $db_data_key = array_keys( SSP_Data::DEFAULT_SETTINGS );
240
+
241
+ } elseif ( $db_name === SSP_Data::DB_NAME['ogp'] ) {
242
+
243
+ $db_data_key = array_keys( SSP_Data::DEFAULT_OGP );
244
+
245
+ } else {
246
 
 
247
  exit( 'DataBase was not found' );
248
+
249
+ }
250
 
251
  //Delete unexpected data form the POST data.
252
+ //設定可能なデータだけを抽出 (送信ボタンのデータなどは削除)
253
  foreach ( $P as $key => $v ) {
254
 
255
+ if ( !in_array( $key, $db_data_key) ) {
256
 
257
  unset( $P[ $key ] );
258
 
class/ssp_output.php CHANGED
@@ -194,9 +194,9 @@ class SSP_Output {
194
  break;
195
 
196
  case $is_[ 'singular' ] :
197
- $metabox_title = get_post_meta(self::$obj->ID, SSP_MetaBox::METANAME['title'], true);
198
- if ( $metabox_title ) {
199
- $title = $metabox_title;
200
  } else {
201
  $pt = self::$obj->post_type;
202
  $title = SSP_Data::$settings[ $pt.'_title' ];
@@ -205,18 +205,21 @@ class SSP_Output {
205
 
206
  case $is_[ 'category' ] :
207
 
208
- $title = SSP_Data::$settings[ 'cat_title' ];
 
209
  break;
210
 
211
  case $is_[ 'tag' ] :
212
 
213
- $title = SSP_Data::$settings[ 'tag_title' ];
 
214
  break;
215
 
216
  case $is_[ 'tax' ] :
217
 
 
218
  $term = self::$obj->taxonomy;
219
- $title = SSP_Data::$settings[ $term.'_title' ];
220
  break;
221
 
222
  case $is_[ 'pt_archive' ] :
@@ -271,9 +274,9 @@ class SSP_Output {
271
 
272
  case $is_[ 'singular' ] :
273
 
274
- $metabox_robots = get_post_meta(self::$obj->ID, SSP_MetaBox::METANAME['robots'], true);
275
- if ( $metabox_robots ) {
276
- $robots = $metabox_robots;
277
  } else {
278
  $pt = self::$obj->post_type;
279
  $is_noindex = SSP_Data::$settings[ $pt.'_noindex' ];
@@ -283,21 +286,37 @@ class SSP_Output {
283
 
284
  case $is_[ 'category' ] :
285
 
286
- $is_noindex = SSP_Data::$settings[ 'cat_noindex' ];
287
- $robots = $is_noindex ? 'noindex' : "";
 
 
 
 
 
 
288
  break;
289
 
290
  case $is_[ 'tag' ] :
291
 
292
- $is_noindex = SSP_Data::$settings[ 'tag_noindex' ];
293
- $robots = $is_noindex ? 'noindex' : "";
 
 
 
 
 
294
  break;
295
 
296
  case $is_[ 'tax' ] :
297
 
298
- $term = self::$obj->taxonomy;
299
- $is_noindex = SSP_Data::$settings[ $term.'_noindex' ];
300
- $robots = $is_noindex ? 'noindex' : "";
 
 
 
 
 
301
  break;
302
 
303
  case $is_[ 'pt_archive' ] :
@@ -350,7 +369,7 @@ class SSP_Output {
350
  if( $is_[ 'singular' ] ) {
351
 
352
  //メタボックスが入力されていれば上書きする
353
- $metabox_keyword = get_post_meta(self::$obj->ID, SSP_MetaBox::METANAME['keyword'], true);
354
  if ( $metabox_keyword ) {
355
  $keyword = $metabox_keyword;
356
  }
@@ -379,7 +398,7 @@ class SSP_Output {
379
 
380
  case $is_[ 'singular' ] :
381
 
382
- $metabox_desc = get_post_meta( self::$obj->ID, SSP_MetaBox::METANAME['description'], true );
383
 
384
  if ( $metabox_desc !== "" ) {
385
  //メタボックスが入力されていれば優先
@@ -392,7 +411,8 @@ class SSP_Output {
392
 
393
  case $is_[ 'category' ] :
394
 
395
- $description = SSP_Data::$settings[ 'cat_desc' ];
 
396
  break;
397
 
398
  case $is_[ 'tag' ] :
@@ -896,69 +916,77 @@ class SSP_Output {
896
  */
897
  private static function replace_snippets ( $str ) {
898
 
899
- $obj = self::$obj;
900
- $obj_post_title = ( isset( $obj->post_title ) ) ? $obj->post_title : "";
901
- $obj_cat_name = ( isset( $obj->cat_name ) ) ? $obj->cat_name : "";
902
- $obj_name = ( isset( $obj->name ) ) ? $obj->name : "";
903
- $obj_label = ( isset( $obj->label ) ) ? $obj->label : "";
904
-
905
  $str = str_replace ( '%_site_title_%', SSP_Data::$site_title, $str );
906
  $str = str_replace ( '%_phrase_%', SSP_Data::$site_catch_phrase, $str );
907
  $str = str_replace ( '%_description_%', SSP_Data::$settings[ 'home_desc' ], $str );
908
- $str = str_replace ( '%_page_title_%', $obj_post_title, $str );
909
- $str = str_replace ( '%_cat_name_%', $obj_cat_name, $str );
910
- $str = str_replace ( '%_tag_name_%', $obj_name, $str );
911
- $str = str_replace ( '%_term_name_%', $obj_name, $str );
912
- $str = str_replace ( '%_post_type_%', $obj_label, $str );
913
- $str = str_replace ( '%_format_name_%', $obj_name, $str );
914
 
 
 
 
 
915
 
916
- if ( strpos( $str, '%_tax_name_%' ) !== false ) {
917
 
918
- $taxonomy_slug = ( isset( $obj->taxonomy ) ) ? $obj->taxonomy : "";
919
- $taxonomy_var = get_taxonomy($taxonomy_slug);
920
- $taxonomy_label = ( $taxonomy_var ) ? $taxonomy_var->label : "";
 
 
 
921
 
922
- $str = str_replace ( '%_tax_name_%', $taxonomy_label, $str );
923
- }
924
 
925
- if ( strpos( $str, '%_page_contents_%' ) !== false ) {
 
 
 
926
 
927
- $content = $obj->post_content;
928
- $content = strip_tags( mb_substr( $content, 0, 300 ) );
929
- $content = preg_replace( '/(\\n)*(&nbsp;)*/', "", $content );
930
 
931
- $str = str_replace ( '%_page_contents_%', $content, $str );
 
 
932
 
933
- }
 
934
 
935
- if ( strpos( $str, '%_date_%' ) !== false ) {
 
 
 
936
 
937
- $date = "";
938
- if ( is_day() ) {
939
- $date = get_query_var( 'year' )."年".get_query_var( 'monthnum' )."月".get_query_var( 'day' )."日";
940
- }
941
- elseif ( is_month() ) {
942
- $date = get_query_var( 'year' )."年".get_query_var( 'monthnum' )."月";
943
- }
944
- elseif ( is_year() ) {
945
- $date = get_query_var( 'year' )."年";
946
- }
947
 
948
- $str = str_replace ('%_date_%', $date, $str);
949
 
950
- }
 
 
 
 
 
 
 
 
 
951
 
952
- if ( strpos( $str, '%_author_name_%' ) !== false ) {
953
 
954
- $str = str_replace ( '%_author_name_%', get_user_meta( 1, 'nickname', true ), $str );
955
 
956
- }
957
 
958
- if ( strpos( $str, '%_search_phrase_%' ) !== false ) {
959
 
960
- $str = str_replace ( '%_search_phrase_%', get_search_query(), $str );
 
 
961
 
 
 
 
962
  }
963
 
964
  if ( strpos( $str, '%_sep_%' ) !== false ) {
194
  break;
195
 
196
  case $is_[ 'singular' ] :
197
+ $meta_title = get_post_meta(self::$obj->ID, SSP_MetaBox::P_METANAME['title'], true);
198
+ if ( $meta_title ) {
199
+ $title = $meta_title;
200
  } else {
201
  $pt = self::$obj->post_type;
202
  $title = SSP_Data::$settings[ $pt.'_title' ];
205
 
206
  case $is_[ 'category' ] :
207
 
208
+ $meta_title = get_term_meta(self::$obj->term_id, SSP_MetaBox::T_METANAME['title'], true);
209
+ $title = $meta_title ?: SSP_Data::$settings[ 'cat_title' ];
210
  break;
211
 
212
  case $is_[ 'tag' ] :
213
 
214
+ $meta_title = get_term_meta(self::$obj->term_id, SSP_MetaBox::T_METANAME['title'], true);
215
+ $title = $meta_title ?: SSP_Data::$settings[ 'tag_title' ];
216
  break;
217
 
218
  case $is_[ 'tax' ] :
219
 
220
+ $meta_title = get_term_meta(self::$obj->term_id, SSP_MetaBox::T_METANAME['title'], true);
221
  $term = self::$obj->taxonomy;
222
+ $title = $meta_title ?: SSP_Data::$settings[ $term.'_title' ];
223
  break;
224
 
225
  case $is_[ 'pt_archive' ] :
274
 
275
  case $is_[ 'singular' ] :
276
 
277
+ $meta_robots = get_post_meta(self::$obj->ID, SSP_MetaBox::P_METANAME['robots'], true);
278
+ if ( $meta_robots ) {
279
+ $robots = $meta_robots;
280
  } else {
281
  $pt = self::$obj->post_type;
282
  $is_noindex = SSP_Data::$settings[ $pt.'_noindex' ];
286
 
287
  case $is_[ 'category' ] :
288
 
289
+ $meta_robots = get_term_meta(self::$obj->term_id, SSP_MetaBox::T_METANAME['robots'], true);
290
+ if ( $meta_robots ) {
291
+ $robots = $meta_robots;
292
+ } else {
293
+ $is_noindex = SSP_Data::$settings[ 'cat_noindex' ];
294
+ $robots = $is_noindex ? 'noindex' : "";
295
+ }
296
+
297
  break;
298
 
299
  case $is_[ 'tag' ] :
300
 
301
+ $meta_robots = get_term_meta(self::$obj->term_id, SSP_MetaBox::T_METANAME['robots'], true);
302
+ if ( $meta_robots ) {
303
+ $robots = $meta_robots;
304
+ } else {
305
+ $is_noindex = SSP_Data::$settings[ 'tag_noindex' ];
306
+ $robots = $is_noindex ? 'noindex' : "";
307
+ }
308
  break;
309
 
310
  case $is_[ 'tax' ] :
311
 
312
+ $meta_robots = get_term_meta(self::$obj->term_id, SSP_MetaBox::T_METANAME['robots'], true);
313
+ if ( $meta_robots ) {
314
+ $robots = $meta_robots;
315
+ } else {
316
+ $term = self::$obj->taxonomy;
317
+ $is_noindex = SSP_Data::$settings[ $term.'_noindex' ];
318
+ $robots = $is_noindex ? 'noindex' : "";
319
+ }
320
  break;
321
 
322
  case $is_[ 'pt_archive' ] :
369
  if( $is_[ 'singular' ] ) {
370
 
371
  //メタボックスが入力されていれば上書きする
372
+ $metabox_keyword = get_post_meta(self::$obj->ID, SSP_MetaBox::P_METANAME['keyword'], true);
373
  if ( $metabox_keyword ) {
374
  $keyword = $metabox_keyword;
375
  }
398
 
399
  case $is_[ 'singular' ] :
400
 
401
+ $metabox_desc = get_post_meta( self::$obj->ID, SSP_MetaBox::P_METANAME['description'], true );
402
 
403
  if ( $metabox_desc !== "" ) {
404
  //メタボックスが入力されていれば優先
411
 
412
  case $is_[ 'category' ] :
413
 
414
+ $meta_description = get_term_meta(self::$obj->term_id, SSP_MetaBox::T_METANAME['description'], true);
415
+ $description = $meta_description ?: SSP_Data::$settings[ 'cat_desc' ];
416
  break;
417
 
418
  case $is_[ 'tag' ] :
916
  */
917
  private static function replace_snippets ( $str ) {
918
 
919
+ $obj = self::$obj;
 
 
 
 
 
920
  $str = str_replace ( '%_site_title_%', SSP_Data::$site_title, $str );
921
  $str = str_replace ( '%_phrase_%', SSP_Data::$site_catch_phrase, $str );
922
  $str = str_replace ( '%_description_%', SSP_Data::$settings[ 'home_desc' ], $str );
 
 
 
 
 
 
923
 
924
+ if ( is_singular() ) {
925
+ //投稿ページ
926
+ $title = get_the_title();
927
+ $str = str_replace ( '%_page_title_%', $title, $str );
928
 
929
+ if ( strpos( $str, '%_page_contents_%' ) !== false ) {
930
 
931
+ $content = $obj->post_content;
932
+ $content = strip_shortcodes( strip_tags( $content ) );
933
+ $content = str_replace(array("\r\n", "\r", "\n", "&nbsp;"), '', $content); //改行削除
934
+ // $content = htmlspecialchars( $content, ENT_QUOTES, 'UTF-8' ); //出力時にesc_
935
+ $content = mb_substr( $content, 0, 300 );
936
+ $str = str_replace ( '%_page_contents_%', $content, $str );
937
 
938
+ }
 
939
 
940
+ } elseif ( is_category() || is_tag() || is_tax() ) {
941
+ //タームアーカイブ
942
+ $str = str_replace ( array('%_cat_name_%','%_tag_name_%','%_term_name_%'), $obj->name, $str );
943
+ $str = str_replace ('%_term_description_%', strip_shortcodes( $obj->description ), $str );
944
 
945
+ if ( strpos( $str, '%_tax_name_%' ) !== false ) {
 
 
946
 
947
+ $taxonomy_slug = ( isset( $obj->taxonomy ) ) ? $obj->taxonomy : "";
948
+ $taxonomy_var = get_taxonomy($taxonomy_slug);
949
+ $taxonomy_label = ( $taxonomy_var ) ? $taxonomy_var->label : "";
950
 
951
+ $str = str_replace ( '%_tax_name_%', $taxonomy_label, $str );
952
+ }
953
 
954
+ } else {
955
+ //その他のページ
956
+ $obj_name = ( isset( $obj->name ) ) ? $obj->name : "";
957
+ $obj_label = ( isset( $obj->label ) ) ? $obj->label : "";
958
 
959
+ $str = str_replace ( '%_post_type_%', $obj_label, $str );
960
+ $str = str_replace ( '%_format_name_%', $obj_name, $str );
 
 
 
 
 
 
 
 
961
 
962
+ if ( strpos( $str, '%_date_%' ) !== false ) {
963
 
964
+ $date = "";
965
+ if ( is_day() ) {
966
+ $date = get_query_var( 'year' )."年".get_query_var( 'monthnum' )."月".get_query_var( 'day' )."日";
967
+ }
968
+ elseif ( is_month() ) {
969
+ $date = get_query_var( 'year' )."年".get_query_var( 'monthnum' )."月";
970
+ }
971
+ elseif ( is_year() ) {
972
+ $date = get_query_var( 'year' )."年";
973
+ }
974
 
975
+ $str = str_replace ('%_date_%', $date, $str);
976
 
977
+ }
978
 
979
+ if ( strpos( $str, '%_author_name_%' ) !== false ) {
980
 
981
+ $str = str_replace ( '%_author_name_%', get_user_meta( 1, 'nickname', true ), $str );
982
 
983
+ }
984
+
985
+ if ( strpos( $str, '%_search_phrase_%' ) !== false ) {
986
 
987
+ $str = str_replace ( '%_search_phrase_%', get_search_query(), $str );
988
+
989
+ }
990
  }
991
 
992
  if ( strpos( $str, '%_sep_%' ) !== false ) {
inc/page_help.php CHANGED
@@ -13,6 +13,7 @@
13
  'cat_name' => 'カテゴリー名',
14
  'tag_name' => 'タグ名',
15
  'term_name' => 'ターム名',
 
16
  'tax_name' => 'タクソノミー名',
17
  'post_type' => '投稿タイプ名',
18
  'page_contents' => 'ページコンテンツ ( get_the_content() で取得できる内容を元にした内容が入ります )',
@@ -20,7 +21,6 @@
20
  'author_name' => '著者名( ニックネーム )',
21
  'search_phrase' => '検索ワード',
22
  'format_name' => '投稿フォーマット名',
23
-
24
  'sep' => '区切り文字',
25
  ];
26
  ?>
13
  'cat_name' => 'カテゴリー名',
14
  'tag_name' => 'タグ名',
15
  'term_name' => 'ターム名',
16
+ 'term_description' => 'タームの説明',
17
  'tax_name' => 'タクソノミー名',
18
  'post_type' => '投稿タイプ名',
19
  'page_contents' => 'ページコンテンツ ( get_the_content() で取得できる内容を元にした内容が入ります )',
21
  'author_name' => '著者名( ニックネーム )',
22
  'search_phrase' => '検索ワード',
23
  'format_name' => '投稿フォーマット名',
 
24
  'sep' => '区切り文字',
25
  ];
26
  ?>
inc/parts/tab_ogp.php CHANGED
@@ -8,7 +8,7 @@
8
  <tbody>
9
  <tr valign="top">
10
  <th scope="row">
11
- <label for="singular_label">og:image 画像</label>
12
  </th>
13
  <td>
14
  <input type="hidden" name="og_image" id="media_url" value="<?php echo esc_attr( SSP_Data::$ogp['og_image'] ); ?>" />
@@ -24,8 +24,11 @@
24
  <button type="button" name="media_btn" id="media_btn" class="button button-primary">画像の選択</button>
25
  <button type="button" name="crear_btn" id="crear_btn" class="button">クリア</button>
26
  <p class="ssp_desc">
27
- Facebookでは画像サイズに1200×630pxを推奨しています。<br>
28
- 投稿ページ(投稿・固定ページ・カスタム投稿タイプ)では、アイキャッチ画像が優先されます。
 
 
 
29
  </p>
30
  </td>
31
  </tr>
8
  <tbody>
9
  <tr valign="top">
10
  <th scope="row">
11
+ <label for="singular_label">og:image デフォルト画像</label>
12
  </th>
13
  <td>
14
  <input type="hidden" name="og_image" id="media_url" value="<?php echo esc_attr( SSP_Data::$ogp['og_image'] ); ?>" />
24
  <button type="button" name="media_btn" id="media_btn" class="button button-primary">画像の選択</button>
25
  <button type="button" name="crear_btn" id="crear_btn" class="button">クリア</button>
26
  <p class="ssp_desc">
27
+ <br>
28
+ サイト全体のデフォルト設定です。<br>
29
+ 投稿ページ(<small>投稿・固定ページ・カスタム投稿タイプ</small>)では、「アイキャッチ画像」が優先されます。
30
+ <br><br>
31
+ Facebookでは画像サイズに1200×630pxを推奨しています。
32
  </p>
33
  </td>
34
  </tr>
readme.txt CHANGED
@@ -3,8 +3,8 @@ Contributors: looswebstudio
3
  Donate link: https://loos-web-studio.com/
4
  Tags: SEO,meta,analytics,webmaster,simple,japan
5
  Requires at least: 4.6
6
- Tested up to: 5.1.1
7
- Stable tag: 1.2.0
8
  Requires PHP: 5.6
9
  License: GPLv2 or later
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
@@ -108,6 +108,13 @@ wp_head内( `_wp_render_title_tag` )で出力される`title`タグは削除す
108
 
109
 
110
  == Changelog ==
 
 
 
 
 
 
 
111
  = 1.2.0 =
112
  WordPress最新版への対応
113
 
3
  Donate link: https://loos-web-studio.com/
4
  Tags: SEO,meta,analytics,webmaster,simple,japan
5
  Requires at least: 4.6
6
+ Tested up to: 5.2.1
7
+ Stable tag: 1.2.1
8
  Requires PHP: 5.6
9
  License: GPLv2 or later
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
108
 
109
 
110
  == Changelog ==
111
+ = 1.2.1 =
112
+ - カテゴリー・タグの各タームのアーカイブページごとに title / description / robots の設定ができるようになりました。
113
+ - スニペットタグ「%_term_description_%」を追加。
114
+ - タームアーカイブのdescriptionのデフォルトを「%_term_description_%」に変更
115
+ - descriptionからショーコードを排除する仕様に変更
116
+
117
+
118
  = 1.2.0 =
119
  WordPress最新版への対応
120
 
seo-simple-pack.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: SEO SIMPLE PACK
4
  Plugin URI: https://wemo.tech/1670
5
  Description: シンプルなSEOプラグイン。ページ種別・投稿ごとにmetaタグやOGPタグを簡単に設定・カスタマイズできます。
6
- Version: 1.2.0
7
  Author: LOOS WEB STUDIO
8
  Author URI: https://loos-web-studio.com/
9
  License: GPL2
@@ -56,7 +56,7 @@ if ( (double) $phpver < 5.6 ) {
56
  * 定数宣言
57
  */
58
  if ( ! defined( 'SSP_VERSION' ) ) {
59
- define( 'SSP_VERSION', '1.2.0' );
60
  }
61
  if ( ! defined( 'SSP_FILE' ) ) {
62
  define( 'SSP_FILE', __FILE__ );
3
  Plugin Name: SEO SIMPLE PACK
4
  Plugin URI: https://wemo.tech/1670
5
  Description: シンプルなSEOプラグイン。ページ種別・投稿ごとにmetaタグやOGPタグを簡単に設定・カスタマイズできます。
6
+ Version: 1.2.1
7
  Author: LOOS WEB STUDIO
8
  Author URI: https://loos-web-studio.com/
9
  License: GPL2
56
  * 定数宣言
57
  */
58
  if ( ! defined( 'SSP_VERSION' ) ) {
59
+ define( 'SSP_VERSION', '1.2.1' );
60
  }
61
  if ( ! defined( 'SSP_FILE' ) ) {
62
  define( 'SSP_FILE', __FILE__ );