Markup (JSON-LD) structured in schema.org - Version 2.5.0

Version Description

(2016-04-19) =

  • Updated : You can select a custom posts at the output page.
  • Updated : Add the output on "Pages" in the "Article","BlogPosting" and "NewsArticle" Schema.org type.
  • Updated : It added the Holiday Opening Hour of items to Schema.org Type "LocalBusiness".
  • Updated : It added the GeoCircle of items to Schema.org Type "LocalBusiness".
  • Updated : Japanese translation.
  • Checked : WordPress version 4.5.0 operation check.
Download this release

Release Info

Developer miiitaka
Plugin Icon 128x128 Markup (JSON-LD) structured in schema.org
Version 2.5.0
Comparing to
See all releases

Code changes from version 2.4.2 to 2.5.0

includes/wp-structuring-admin-db.php CHANGED
@@ -4,7 +4,7 @@
4
  *
5
  * @author Kazuya Takami
6
  * @since 1.0.0
7
- * @version 2.4.0
8
  */
9
  class Structuring_Markup_Admin_Db {
10
 
@@ -227,14 +227,15 @@ class Structuring_Markup_Admin_Db {
227
  /**
228
  * Get Select Data.
229
  *
230
- * @since 1.0.0
231
- * @param array $output
232
- * @return array $results
 
233
  */
234
  public function get_select_options ( $output ) {
235
  global $wpdb;
236
 
237
- $query = "SELECT * FROM " . $this->table_name . " WHERE output LIKE '%%%s%%'";
238
  $data = array( $output );
239
  $prepared = $wpdb->prepare( $query, $data );
240
  $results = $wpdb->get_results( $prepared );
4
  *
5
  * @author Kazuya Takami
6
  * @since 1.0.0
7
+ * @version 2.5.0
8
  */
9
  class Structuring_Markup_Admin_Db {
10
 
227
  /**
228
  * Get Select Data.
229
  *
230
+ * @since 1.0.0
231
+ * @version 2.5.0
232
+ * @param array $output
233
+ * @return array $results
234
  */
235
  public function get_select_options ( $output ) {
236
  global $wpdb;
237
 
238
+ $query = "SELECT * FROM " . $this->table_name . " WHERE output LIKE '%%\"%s\"%%'";
239
  $data = array( $output );
240
  $prepared = $wpdb->prepare( $query, $data );
241
  $results = $wpdb->get_results( $prepared );
includes/wp-structuring-admin-post.php CHANGED
@@ -4,7 +4,7 @@
4
  *
5
  * @author Kazuya Takami
6
  * @since 1.0.0
7
- * @version 2.4.1
8
  */
9
  class Structuring_Markup_Admin_Post {
10
 
@@ -15,16 +15,43 @@ class Structuring_Markup_Admin_Post {
15
  * @version 2.0.0
16
  */
17
  private $text_domain;
 
 
 
 
 
 
 
18
  private $type_array;
19
 
 
 
 
 
 
 
 
 
20
  /**
21
  * Constructor Define.
22
  *
23
  * @since 1.0.0
24
- * @version 2.2.0
25
  * @param String $text_domain
26
  */
27
  public function __construct ( $text_domain ) {
 
 
 
 
 
 
 
 
 
 
 
 
28
  $this->text_domain = $text_domain;
29
 
30
  /**
@@ -80,7 +107,7 @@ class Structuring_Markup_Admin_Post {
80
  * Setting Page of the Admin Screen.
81
  *
82
  * @since 1.0.0
83
- * @version 2.4.1
84
  * @param array $options
85
  * @param string $status
86
  */
@@ -117,23 +144,29 @@ class Structuring_Markup_Admin_Post {
117
 
118
  switch ( $options['type'] ) {
119
  case 'article':
120
- $html = $this->output_checkbox_render( $options['output'], "post", "Post", esc_html__( 'Posts', $this->text_domain ) );
121
- $html .= '</td></tr></table><hr>';
 
 
 
122
  echo $html;
123
 
124
  require_once ( plugin_dir_path( __FILE__ ) . 'wp-structuring-admin-type-article.php' );
125
  new Structuring_Markup_Type_Article( $options['option'] );
126
  break;
127
  case 'blog_posting':
128
- $html = $this->output_checkbox_render( $options['output'], "post", "Post", esc_html__( 'Posts', $this->text_domain ) );
129
- $html .= '</td></tr></table><hr>';
 
 
 
130
  echo $html;
131
 
132
  require_once ( plugin_dir_path( __FILE__ ) . 'wp-structuring-admin-type-blog-posting.php' );
133
  new Structuring_Markup_Type_Blog_Posting( $options['option'] );
134
  break;
135
  case 'breadcrumb':
136
- $html = $this->output_checkbox_render( $options['output'], "all", "All", esc_html__( 'All Pages (In Header)', $this->text_domain ) );
137
  $html .= '</td></tr></table><hr>';
138
  echo $html;
139
 
@@ -141,7 +174,7 @@ class Structuring_Markup_Admin_Post {
141
  new Structuring_Markup_Type_Breadcrumb( $options['option'] );
142
  break;
143
  case 'event':
144
- $html = $this->output_checkbox_render( $options['output'], "event", "Event Post", esc_html__( 'Event Post Page', $this->text_domain ) );
145
  $html .= '</td></tr></table><hr>';
146
  echo $html;
147
 
@@ -149,52 +182,68 @@ class Structuring_Markup_Admin_Post {
149
  new Structuring_Markup_Type_Event();
150
  break;
151
  case 'local_business':
152
- $html = $this->output_checkbox_render( $options['output'], "all", "All", esc_html__( 'All Pages (In Header)', $this->text_domain ) );
153
- $html .= $this->output_checkbox_render( $options['output'], "home", "Top", esc_html__( 'Homepage', $this->text_domain ) );
154
- $html .= $this->output_checkbox_render( $options['output'], "post", "Post", esc_html__( 'Posts', $this->text_domain ) );
155
- $html .= $this->output_checkbox_render( $options['output'], "page", "Fixed", esc_html__( 'Pages', $this->text_domain ) );
156
- $html .= '</td></tr></table><hr>';
 
 
 
157
  echo $html;
158
 
159
  require_once ( plugin_dir_path( __FILE__ ) . 'wp-structuring-admin-type-local-business.php' );
160
  new Structuring_Markup_Type_LocalBusiness( $options['option'] );
161
  break;
162
  case 'news_article':
163
- $html = $this->output_checkbox_render( $options['output'], "post", "Post", esc_html__( 'Posts', $this->text_domain ) );
164
- $html .= '</td></tr></table><hr>';
 
 
 
 
165
  echo $html;
166
 
167
  require_once ( plugin_dir_path( __FILE__ ) . 'wp-structuring-admin-type-news-article.php' );
168
  new Structuring_Markup_Type_NewsArticle( $options['option'] );
169
  break;
170
  case 'organization':
171
- $html = $this->output_checkbox_render( $options['output'], "all", "All", esc_html__( 'All Pages (In Header)', $this->text_domain ) );
172
- $html .= $this->output_checkbox_render( $options['output'], "home", "Top", esc_html__( 'Homepage', $this->text_domain ) );
173
- $html .= $this->output_checkbox_render( $options['output'], "post", "Post", esc_html__( 'Posts', $this->text_domain ) );
174
- $html .= $this->output_checkbox_render( $options['output'], "page", "Fixed", esc_html__( 'Pages', $this->text_domain ) );
175
- $html .= '</td></tr></table><hr>';
 
 
 
176
  echo $html;
177
 
178
  require_once ( plugin_dir_path( __FILE__ ) . 'wp-structuring-admin-type-organization.php' );
179
  new Structuring_Markup_Type_Organization( $options['option'] );
180
  break;
181
  case 'person':
182
- $html = $this->output_checkbox_render( $options['output'], "all", "All", esc_html__( 'All Pages (In Header)', $this->text_domain ) );
183
- $html .= $this->output_checkbox_render( $options['output'], "home", "Top", esc_html__( 'Homepage', $this->text_domain ) );
184
- $html .= $this->output_checkbox_render( $options['output'], "post", "Post", esc_html__( 'Posts', $this->text_domain ) );
185
- $html .= $this->output_checkbox_render( $options['output'], "page", "Fixed", esc_html__( 'Pages', $this->text_domain ) );
186
- $html .= '</td></tr></table><hr>';
 
 
 
187
  echo $html;
188
 
189
  require_once ( plugin_dir_path( __FILE__ ) . 'wp-structuring-admin-type-person.php' );
190
  new Structuring_Markup_Type_Person( $options['option'] );
191
  break;
192
  case 'website':
193
- $html = $this->output_checkbox_render( $options['output'], "all", "All", esc_html__( 'All Pages (In Header)', $this->text_domain ) );
194
- $html .= $this->output_checkbox_render( $options['output'], "home", "Top", esc_html__( 'Homepage', $this->text_domain ) );
195
- $html .= $this->output_checkbox_render( $options['output'], "post", "Post", esc_html__( 'Posts', $this->text_domain ) );
196
- $html .= $this->output_checkbox_render( $options['output'], "page", "Fixed", esc_html__( 'Pages', $this->text_domain ) );
197
- $html .= '</td></tr></table><hr>';
 
 
 
198
  echo $html;
199
 
200
  require_once( plugin_dir_path( __FILE__ ) . 'wp-structuring-admin-type-website.php' );
@@ -211,22 +260,38 @@ class Structuring_Markup_Admin_Post {
211
  * CheckBox Build Render
212
  *
213
  * @since 1.0.0
214
- * @version 2.0.0
215
  * @param array $option['output']
216
  * @param string $output
217
  * @param string $value
218
- * @param string $display
219
  * @return string $html
220
  */
221
- private function output_checkbox_render ( array $option, $output, $value, $display ) {
222
  $html = '<label>';
223
  $html .= '<input type="checkbox" name="output[' . $output . ']" value="' . $value . '""';
224
  $html .= isset( $option[$output] ) ? ' checked' : '';
225
- $html .= '>' . $display . '</label>';
226
 
227
  return (string) $html;
228
  }
229
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
230
  /**
231
  * Information Message Render
232
  *
4
  *
5
  * @author Kazuya Takami
6
  * @since 1.0.0
7
+ * @version 2.5.0
8
  */
9
  class Structuring_Markup_Admin_Post {
10
 
15
  * @version 2.0.0
16
  */
17
  private $text_domain;
18
+
19
+ /**
20
+ * Variable definition.
21
+ *
22
+ * @since 1.3.0
23
+ * @version 2.0.0
24
+ */
25
  private $type_array;
26
 
27
+ /**
28
+ * Variable definition.
29
+ *
30
+ * @since 2.5.0
31
+ * @version 2.5.0
32
+ */
33
+ private $post_args = array();
34
+
35
  /**
36
  * Constructor Define.
37
  *
38
  * @since 1.0.0
39
+ * @version 2.5.0
40
  * @param String $text_domain
41
  */
42
  public function __construct ( $text_domain ) {
43
+ $args = array(
44
+ 'public' => true,
45
+ '_builtin' => false
46
+ );
47
+ $post_types = get_post_types( $args, 'objects' );
48
+ foreach ( $post_types as $post_type ) {
49
+ $this->post_args[] = array(
50
+ 'label' => esc_html( $post_type->label ),
51
+ 'value' => esc_html( $post_type->name )
52
+ );
53
+ }
54
+
55
  $this->text_domain = $text_domain;
56
 
57
  /**
107
  * Setting Page of the Admin Screen.
108
  *
109
  * @since 1.0.0
110
+ * @version 2.5.0
111
  * @param array $options
112
  * @param string $status
113
  */
144
 
145
  switch ( $options['type'] ) {
146
  case 'article':
147
+ $html = $this->output_checkbox_render( $options['output'], "post", esc_html__( 'Posts', $this->text_domain ) );
148
+ $html .= $this->output_checkbox_render( $options['output'], "page", esc_html__( 'Pages', $this->text_domain ) );
149
+ $html .= '</td></tr>';
150
+ $html .= $this->output_custom_posts_render( $options['output'] );
151
+ $html .= '</table><hr>';
152
  echo $html;
153
 
154
  require_once ( plugin_dir_path( __FILE__ ) . 'wp-structuring-admin-type-article.php' );
155
  new Structuring_Markup_Type_Article( $options['option'] );
156
  break;
157
  case 'blog_posting':
158
+ $html = $this->output_checkbox_render( $options['output'], "post", esc_html__( 'Posts', $this->text_domain ) );
159
+ $html .= $this->output_checkbox_render( $options['output'], "page", esc_html__( 'Pages', $this->text_domain ) );
160
+ $html .= '</td></tr>';
161
+ $html .= $this->output_custom_posts_render( $options['output'] );
162
+ $html .= '</table><hr>';
163
  echo $html;
164
 
165
  require_once ( plugin_dir_path( __FILE__ ) . 'wp-structuring-admin-type-blog-posting.php' );
166
  new Structuring_Markup_Type_Blog_Posting( $options['option'] );
167
  break;
168
  case 'breadcrumb':
169
+ $html = $this->output_checkbox_render( $options['output'], "all", esc_html__( 'All Pages (In Header)', $this->text_domain ) );
170
  $html .= '</td></tr></table><hr>';
171
  echo $html;
172
 
174
  new Structuring_Markup_Type_Breadcrumb( $options['option'] );
175
  break;
176
  case 'event':
177
+ $html = $this->output_checkbox_render( $options['output'], "event", esc_html__( 'Event Post Page', $this->text_domain ) );
178
  $html .= '</td></tr></table><hr>';
179
  echo $html;
180
 
182
  new Structuring_Markup_Type_Event();
183
  break;
184
  case 'local_business':
185
+ $html = $this->output_checkbox_render( $options['output'], "all", esc_html__( 'All Pages (In Header)', $this->text_domain ) );
186
+ $html .= $this->output_checkbox_render( $options['output'], "home", esc_html__( 'Homepage', $this->text_domain ) );
187
+ $html .= $this->output_checkbox_render( $options['output'], "post", esc_html__( 'Posts', $this->text_domain ) );
188
+ $html .= $this->output_checkbox_render( $options['output'], "page", esc_html__( 'Pages', $this->text_domain ) );
189
+ $html .= '</td></tr>';
190
+ $html .= $this->output_custom_posts_render( $options['output'] );
191
+ $html .= '</table><hr>';
192
+
193
  echo $html;
194
 
195
  require_once ( plugin_dir_path( __FILE__ ) . 'wp-structuring-admin-type-local-business.php' );
196
  new Structuring_Markup_Type_LocalBusiness( $options['option'] );
197
  break;
198
  case 'news_article':
199
+ $html = $this->output_checkbox_render( $options['output'], "post", esc_html__( 'Posts', $this->text_domain ) );
200
+ $html .= $this->output_checkbox_render( $options['output'], "page", esc_html__( 'Pages', $this->text_domain ) );
201
+ $html .= '</td></tr>';
202
+ $html .= $this->output_custom_posts_render( $options['output'] );
203
+ $html .= '</table><hr>';
204
+
205
  echo $html;
206
 
207
  require_once ( plugin_dir_path( __FILE__ ) . 'wp-structuring-admin-type-news-article.php' );
208
  new Structuring_Markup_Type_NewsArticle( $options['option'] );
209
  break;
210
  case 'organization':
211
+ $html = $this->output_checkbox_render( $options['output'], "all", esc_html__( 'All Pages (In Header)', $this->text_domain ) );
212
+ $html .= $this->output_checkbox_render( $options['output'], "home", esc_html__( 'Homepage', $this->text_domain ) );
213
+ $html .= $this->output_checkbox_render( $options['output'], "post", esc_html__( 'Posts', $this->text_domain ) );
214
+ $html .= $this->output_checkbox_render( $options['output'], "page", esc_html__( 'Pages', $this->text_domain ) );
215
+ $html .= '</td></tr>';
216
+ $html .= $this->output_custom_posts_render( $options['output'] );
217
+ $html .= '</table><hr>';
218
+
219
  echo $html;
220
 
221
  require_once ( plugin_dir_path( __FILE__ ) . 'wp-structuring-admin-type-organization.php' );
222
  new Structuring_Markup_Type_Organization( $options['option'] );
223
  break;
224
  case 'person':
225
+ $html = $this->output_checkbox_render( $options['output'], "all", esc_html__( 'All Pages (In Header)', $this->text_domain ) );
226
+ $html .= $this->output_checkbox_render( $options['output'], "home", esc_html__( 'Homepage', $this->text_domain ) );
227
+ $html .= $this->output_checkbox_render( $options['output'], "post", esc_html__( 'Posts', $this->text_domain ) );
228
+ $html .= $this->output_checkbox_render( $options['output'], "page", esc_html__( 'Pages', $this->text_domain ) );
229
+ $html .= '</td></tr>';
230
+ $html .= $this->output_custom_posts_render( $options['output'] );
231
+ $html .= '</table><hr>';
232
+
233
  echo $html;
234
 
235
  require_once ( plugin_dir_path( __FILE__ ) . 'wp-structuring-admin-type-person.php' );
236
  new Structuring_Markup_Type_Person( $options['option'] );
237
  break;
238
  case 'website':
239
+ $html = $this->output_checkbox_render( $options['output'], "all", esc_html__( 'All Pages (In Header)', $this->text_domain ) );
240
+ $html .= $this->output_checkbox_render( $options['output'], "home", esc_html__( 'Homepage', $this->text_domain ) );
241
+ $html .= $this->output_checkbox_render( $options['output'], "post", esc_html__( 'Posts', $this->text_domain ) );
242
+ $html .= $this->output_checkbox_render( $options['output'], "page", esc_html__( 'Pages', $this->text_domain ) );
243
+ $html .= '</td></tr>';
244
+ $html .= $this->output_custom_posts_render( $options['output'] );
245
+ $html .= '</table><hr>';
246
+
247
  echo $html;
248
 
249
  require_once( plugin_dir_path( __FILE__ ) . 'wp-structuring-admin-type-website.php' );
260
  * CheckBox Build Render
261
  *
262
  * @since 1.0.0
263
+ * @version 2.5.0
264
  * @param array $option['output']
265
  * @param string $output
266
  * @param string $value
 
267
  * @return string $html
268
  */
269
+ private function output_checkbox_render ( array $option, $output, $value ) {
270
  $html = '<label>';
271
  $html .= '<input type="checkbox" name="output[' . $output . ']" value="' . $value . '""';
272
  $html .= isset( $option[$output] ) ? ' checked' : '';
273
+ $html .= '>' . $value . '</label>';
274
 
275
  return (string) $html;
276
  }
277
 
278
+ /**
279
+ * Custom Posts Build Render
280
+ *
281
+ * @since 2.5.0
282
+ * @version 2.5.0
283
+ * @param array $option['output']
284
+ * @return string $html
285
+ */
286
+ private function output_custom_posts_render ( array $option ) {
287
+ $html = '<tr><th>' . esc_html__( 'Output On(Custom Posts)', $this->text_domain ) . ' : </th><td>';
288
+ foreach ( $this->post_args as $post_type ) {
289
+ $html .= $this->output_checkbox_render( $option, $post_type['value'], $post_type['label'] );
290
+ }
291
+ $html .= '</td></tr>';
292
+ return (string) $html;
293
+ }
294
+
295
  /**
296
  * Information Message Render
297
  *
includes/wp-structuring-admin-type-local-business.php CHANGED
@@ -4,8 +4,10 @@
4
  *
5
  * @author Kazuya Takami
6
  * @since 2.3.3
 
7
  * @see wp-structuring-admin-db.php
8
  * @link http://schema.org/LocalBusiness
 
9
  * @link https://developers.google.com/structured-data/local-businesses/
10
  */
11
  class Structuring_Markup_Type_LocalBusiness {
@@ -204,7 +206,7 @@ class Structuring_Markup_Type_LocalBusiness {
204
  * Form Layout Render
205
  *
206
  * @since 2.3.3
207
- * @version 2.4.0
208
  * @param array $option
209
  */
210
  private function page_render ( array $option ) {
@@ -244,6 +246,20 @@ class Structuring_Markup_Type_LocalBusiness {
244
  $html .= '</table>';
245
  echo $html;
246
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
247
  /** Geo Coordinates */
248
  $html = '<table class="schema-admin-table">';
249
  $html .= '<caption>Geo Coordinates ( recommended )</caption>';
@@ -289,6 +305,32 @@ class Structuring_Markup_Type_LocalBusiness {
289
  $html .= '</table>';
290
  echo $html;
291
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
292
  echo '<p>Setting Knowledge : <a href="https://developers.google.com/structured-data/local-businesses/" target="_blank">https://developers.google.com/structured-data/local-businesses/</a></p>';
293
  submit_button();
294
  }
@@ -297,7 +339,7 @@ class Structuring_Markup_Type_LocalBusiness {
297
  * Return the default options array
298
  *
299
  * @since 2.3.0
300
- * @version 2.4.0
301
  * @param array $args
302
  * @return array $args
303
  */
@@ -325,6 +367,12 @@ class Structuring_Markup_Type_LocalBusiness {
325
  $args['week'][$value['type']]['close'] = '';
326
  }
327
 
 
 
 
 
 
 
328
  return (array) $args;
329
  }
330
 
@@ -352,6 +400,31 @@ class Structuring_Markup_Type_LocalBusiness {
352
  return (string) sprintf( $format, $id, $display, $id, $id, $value, $note );
353
  }
354
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
355
  /**
356
  * Return the form checkbox
357
  *
@@ -431,4 +504,25 @@ class Structuring_Markup_Type_LocalBusiness {
431
 
432
  return (string) sprintf( $format, $id, $id, $display, $id, $count, $id, $value1, $id, $count, $id, $value2, $note );
433
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
434
  }
4
  *
5
  * @author Kazuya Takami
6
  * @since 2.3.3
7
+ * @version 2.5.0
8
  * @see wp-structuring-admin-db.php
9
  * @link http://schema.org/LocalBusiness
10
+ * @link https://schema.org/GeoCircle
11
  * @link https://developers.google.com/structured-data/local-businesses/
12
  */
13
  class Structuring_Markup_Type_LocalBusiness {
206
  * Form Layout Render
207
  *
208
  * @since 2.3.3
209
+ * @version 2.5.0
210
  * @param array $option
211
  */
212
  private function page_render ( array $option ) {
246
  $html .= '</table>';
247
  echo $html;
248
 
249
+ /** Geo Circle */
250
+ $html = '<table class="schema-admin-table">';
251
+ $html .= '<caption>Geo Circle ( recommended )</caption>';
252
+ if ( !isset( $option['geo_circle_active'] ) ) {
253
+ $option['geo_circle_active'] = "";
254
+ }
255
+ if ( !isset( $option['geo_circle_radius'] ) ) {
256
+ $option['geo_circle_radius'] = "";
257
+ }
258
+ $html .= $this->set_form_checkbox( 'geo_circle_active', 'Setting', $option['geo_circle_active'], 'Enabled' );
259
+ $html .= $this->set_form_text( 'geo_circle_radius', 'geoRadius', $option['geo_circle_radius'], false );
260
+ $html .= '</table>';
261
+ echo $html;
262
+
263
  /** Geo Coordinates */
264
  $html = '<table class="schema-admin-table">';
265
  $html .= '<caption>Geo Coordinates ( recommended )</caption>';
305
  $html .= '</table>';
306
  echo $html;
307
 
308
+ /** Holiday Opening Hours */
309
+ $html = '<table class="schema-admin-table">';
310
+ $html .= '<caption>Holiday Opening Hours ( recommended )</caption>';
311
+ if ( !isset( $option['holiday_active'] ) ) {
312
+ $option['holiday_active'] = "";
313
+ }
314
+ if ( !isset( $option['holiday_open'] ) ) {
315
+ $option['holiday_open'] = "";
316
+ }
317
+ if ( !isset( $option['holiday_close'] ) ) {
318
+ $option['holiday_close'] = "";
319
+ }
320
+ if ( !isset( $option['holiday_valid_from'] ) ) {
321
+ $option['holiday_valid_from'] = "";
322
+ }
323
+ if ( !isset( $option['holiday_valid_through'] ) ) {
324
+ $option['holiday_valid_through'] = "";
325
+ }
326
+ $html .= $this->set_form_checkbox( 'holiday_active', 'Setting', $option['holiday_active'], 'Enabled' );
327
+ $html .= $this->set_form_time_holiday( $option['holiday_open'], $option['holiday_close'] );
328
+ $html .= $this->set_form_date( 'holiday_valid_from', 'validFrom', $option['holiday_valid_from'], false );
329
+ $html .= $this->set_form_date( 'holiday_valid_through', 'validThrough', $option['holiday_valid_through'], false );
330
+
331
+ $html .= '</table>';
332
+ echo $html;
333
+
334
  echo '<p>Setting Knowledge : <a href="https://developers.google.com/structured-data/local-businesses/" target="_blank">https://developers.google.com/structured-data/local-businesses/</a></p>';
335
  submit_button();
336
  }
339
  * Return the default options array
340
  *
341
  * @since 2.3.0
342
+ * @version 2.5.0
343
  * @param array $args
344
  * @return array $args
345
  */
367
  $args['week'][$value['type']]['close'] = '';
368
  }
369
 
370
+ $args['holiday_active'] = '';
371
+ $args['holiday_open'] = '';
372
+ $args['holiday_close'] = '';
373
+ $args['holiday_valid_from'] = '';
374
+ $args['holiday_valid_through'] = '';
375
+
376
  return (array) $args;
377
  }
378
 
400
  return (string) sprintf( $format, $id, $display, $id, $id, $value, $note );
401
  }
402
 
403
+ /**
404
+ * Return the form text
405
+ *
406
+ * @since 2.5.0
407
+ * @version 2.5.0
408
+ * @param string $id
409
+ * @param string $display
410
+ * @param string $value
411
+ * @param boolean $required
412
+ * @param string $note
413
+ * @return string $html
414
+ */
415
+ private function set_form_date ( $id, $display, $value = "", $required = false, $note = "" ) {
416
+ $value = esc_attr( $value );
417
+
418
+ $format = '<tr><th><label for=%s>%s :</label></th><td>';
419
+ $format .= '<input type="date" name="option[%s]" id="%s" value="%s"';
420
+ if ( $required ) {
421
+ $format .= ' required';
422
+ }
423
+ $format .= '><small>%s</small></td></tr>';
424
+
425
+ return (string) sprintf( $format, $id, $display, $id, $id, $value, $note );
426
+ }
427
+
428
  /**
429
  * Return the form checkbox
430
  *
504
 
505
  return (string) sprintf( $format, $id, $id, $display, $id, $count, $id, $value1, $id, $count, $id, $value2, $note );
506
  }
507
+
508
+ /**
509
+ * Return the form time (Holiday)
510
+ *
511
+ * @since 2.5.0
512
+ * @version 2.5.0
513
+ * @param string $value1
514
+ * @param string $value2
515
+ * @return string $html
516
+ */
517
+ private function set_form_time_holiday ( $value1 = "", $value2 = "" ) {
518
+ $value1 = esc_attr( $value1 );
519
+ $value2 = esc_attr( $value2 );
520
+
521
+ $format = '<tr><th>Holiday Time :</th><td>';
522
+ $format .= 'Open Time : <input type="time" name="option[holiday_open]" value="%s">';
523
+ $format .= 'Close Time : <input type="time" name="option[holiday_close]" value="%s">';
524
+ $format .= '</td></tr>';
525
+
526
+ return (string) sprintf( $format, $value1, $value2 );
527
+ }
528
  }
includes/wp-structuring-display.php CHANGED
@@ -4,7 +4,7 @@
4
  *
5
  * @author Kazuya Takami
6
  * @author Justin Frydman
7
- * @version 2.4.2
8
  * @since 1.0.0
9
  */
10
  class Structuring_Markup_Display {
@@ -23,11 +23,12 @@ class Structuring_Markup_Display {
23
  * Setting schema.org
24
  *
25
  * @since 1.0.0
26
- * @version 2.1.0
27
  * @param Structuring_Markup_Admin_Db $db
28
  */
29
  private function set_schema ( Structuring_Markup_Admin_Db $db ) {
30
  echo '<!-- Markup (JSON-LD) structured in schema.org START -->' . PHP_EOL;
 
31
  $this->get_schema_data( $db, 'all' );
32
  if ( is_home() ) {
33
  $this->get_schema_data( $db, 'home' );
@@ -41,6 +42,16 @@ class Structuring_Markup_Display {
41
  if ( is_page() ) {
42
  $this->get_schema_data( $db, 'page' );
43
  }
 
 
 
 
 
 
 
 
 
 
44
  echo '<!-- Markup (JSON-LD) structured in schema.org END -->' . PHP_EOL;
45
  }
46
 
@@ -398,7 +409,7 @@ class Structuring_Markup_Display {
398
  * Setting schema.org LocalBusiness
399
  *
400
  * @since 2.3.0
401
- * @version 2.4.0
402
  * @param array $options
403
  */
404
  private function set_schema_local_business ( array $options ) {
@@ -416,10 +427,10 @@ class Structuring_Markup_Display {
416
 
417
  $args = array(
418
  "@context" => "http://schema.org",
419
- "@type" => isset( $options['name'] ) ? esc_html( $options['business_type'] ) : "",
420
- "name" => isset( $options['name'] ) ? esc_html( $options['name'] ) : "",
421
- "url" => isset( $options['name'] ) ? esc_url( $options['url'] ) : "",
422
- "telephone" => isset( $options['name'] ) ? esc_html( $options['telephone'] ) : ""
423
  );
424
 
425
  if ( isset( $options['food_active'] ) && $options['food_active'] === 'on' ) {
@@ -435,21 +446,37 @@ class Structuring_Markup_Display {
435
 
436
  $address_array["address"] = array(
437
  "@type" => "PostalAddress",
438
- "streetAddress" => isset( $options['name'] ) ? esc_html( $options['street_address'] ) : "",
439
- "addressLocality" => isset( $options['name'] ) ? esc_html( $options['address_locality'] ) : "",
440
- "addressRegion" => isset( $options['name'] ) ? esc_html( $options['address_region'] ) : "",
441
- "postalCode" => isset( $options['name'] ) ? esc_html( $options['postal_code'] ) : "",
442
- "addressCountry" => isset( $options['name'] ) ? esc_html( $options['address_country'] ) : ""
443
  );
444
  $args = array_merge( $args, $address_array );
445
 
 
446
  if ( isset( $options['geo_active'] ) && $options['geo_active'] === 'on' ) {
447
  $geo_array["geo"] = array(
448
  "@type" => "GeoCoordinates",
449
- "latitude" => isset( $options['name'] ) ? esc_html( floatval( $options['latitude'] ) ) : "",
450
- "longitude" => isset( $options['name'] ) ? esc_html( floatval( $options['longitude'] ) ) : ""
451
  );
452
- $args = array_merge( $args, $geo_array );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
453
  }
454
 
455
  /* openingHours */
@@ -475,6 +502,17 @@ class Structuring_Markup_Display {
475
 
476
  }
477
 
 
 
 
 
 
 
 
 
 
 
 
478
  $this->set_schema_json( $args );
479
  }
480
 
4
  *
5
  * @author Kazuya Takami
6
  * @author Justin Frydman
7
+ * @version 2.5.0
8
  * @since 1.0.0
9
  */
10
  class Structuring_Markup_Display {
23
  * Setting schema.org
24
  *
25
  * @since 1.0.0
26
+ * @version 2.5.0
27
  * @param Structuring_Markup_Admin_Db $db
28
  */
29
  private function set_schema ( Structuring_Markup_Admin_Db $db ) {
30
  echo '<!-- Markup (JSON-LD) structured in schema.org START -->' . PHP_EOL;
31
+
32
  $this->get_schema_data( $db, 'all' );
33
  if ( is_home() ) {
34
  $this->get_schema_data( $db, 'home' );
42
  if ( is_page() ) {
43
  $this->get_schema_data( $db, 'page' );
44
  }
45
+ $args = array(
46
+ 'public' => true,
47
+ '_builtin' => false
48
+ );
49
+ $post_types = get_post_types( $args, 'objects' );
50
+ foreach ( $post_types as $post_type ) {
51
+ if ( is_singular( $post_type->name ) ) {
52
+ $this->get_schema_data( $db, $post_type->name );
53
+ }
54
+ }
55
  echo '<!-- Markup (JSON-LD) structured in schema.org END -->' . PHP_EOL;
56
  }
57
 
409
  * Setting schema.org LocalBusiness
410
  *
411
  * @since 2.3.0
412
+ * @version 2.5.0
413
  * @param array $options
414
  */
415
  private function set_schema_local_business ( array $options ) {
427
 
428
  $args = array(
429
  "@context" => "http://schema.org",
430
+ "@type" => isset( $options['business_type'] ) ? esc_html( $options['business_type'] ) : "",
431
+ "name" => isset( $options['name'] ) ? esc_html( $options['name'] ) : "",
432
+ "url" => isset( $options['url'] ) ? esc_url( $options['url'] ) : "",
433
+ "telephone" => isset( $options['telephone'] ) ? esc_html( $options['telephone'] ) : ""
434
  );
435
 
436
  if ( isset( $options['food_active'] ) && $options['food_active'] === 'on' ) {
446
 
447
  $address_array["address"] = array(
448
  "@type" => "PostalAddress",
449
+ "streetAddress" => isset( $options['street_address'] ) ? esc_html( $options['street_address'] ) : "",
450
+ "addressLocality" => isset( $options['address_locality'] ) ? esc_html( $options['address_locality'] ) : "",
451
+ "addressRegion" => isset( $options['address_region'] ) ? esc_html( $options['address_region'] ) : "",
452
+ "postalCode" => isset( $options['postal_code'] ) ? esc_html( $options['postal_code'] ) : "",
453
+ "addressCountry" => isset( $options['address_country'] ) ? esc_html( $options['address_country'] ) : ""
454
  );
455
  $args = array_merge( $args, $address_array );
456
 
457
+
458
  if ( isset( $options['geo_active'] ) && $options['geo_active'] === 'on' ) {
459
  $geo_array["geo"] = array(
460
  "@type" => "GeoCoordinates",
461
+ "latitude" => isset( $options['latitude'] ) ? esc_html(floatval($options['latitude'])) : "",
462
+ "longitude" => isset( $options['longitude'] ) ? esc_html(floatval($options['longitude'])) : ""
463
  );
464
+ }
465
+
466
+ if ( isset( $options['geo_circle_active'] ) && $options['geo_circle_active'] === 'on' ) {
467
+ $place_array["location"] = array( "@type" => "Place" );
468
+ $place_array["location"]["geo"] = array(
469
+ "@type" => "GeoCircle",
470
+ "geoRadius" => isset( $options['geo_circle_radius'] ) ? esc_html( floatval( $options['geo_circle_radius'] ) ) : ""
471
+ );
472
+ if ( isset( $options['geo_active'] ) && $options['geo_active'] === 'on' ) {
473
+ $place_array["location"]["geo"]["geoMidpoint"] = $geo_array["geo"];
474
+ }
475
+ $args = array_merge( $args, $place_array );
476
+ } else {
477
+ if ( isset( $options['geo_active'] ) && $options['geo_active'] === 'on' ) {
478
+ $args = array_merge( $args, $geo_array );
479
+ }
480
  }
481
 
482
  /* openingHours */
502
 
503
  }
504
 
505
+ if ( isset( $options['holiday_active'] ) && $options['holiday_active'] === 'on' ) {
506
+ $holiday_array["openingHoursSpecification"] = array(
507
+ "@type" => "OpeningHoursSpecification",
508
+ "opens" => isset( $options['holiday_open'] ) ? esc_html( $options['holiday_open'] ) : "",
509
+ "closes" => isset( $options['holiday_close'] ) ? esc_html( $options['holiday_close'] ) : "",
510
+ "validFrom" => isset( $options['holiday_valid_from'] ) ? esc_html( $options['holiday_valid_from'] ) : "",
511
+ "validThrough" => isset( $options['holiday_valid_through'] ) ? esc_html( $options['holiday_valid_through'] ) : ""
512
+ );
513
+ $args = array_merge( $args, $holiday_array );
514
+ }
515
+
516
  $this->set_schema_json( $args );
517
  }
518
 
languages/wp-structuring-markup-ja.mo CHANGED
Binary file
languages/wp-structuring-markup-ja.po CHANGED
@@ -2,9 +2,9 @@
2
  # This file is distributed under the same license as the Markup (JSON-LD) structured in schema.org package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: Markup (JSON-LD) structured in schema.org 2.4.1\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-structuring-markup\n"
7
- "POT-Creation-Date: 2016-03-01 08:58:28+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -25,7 +25,7 @@ msgid "Schema.org Type"
25
  msgstr "Schema.org タイプ"
26
 
27
  #: includes/wp-structuring-admin-list.php:52
28
- #: includes/wp-structuring-admin-post.php:115
29
  msgid "Output On"
30
  msgstr "出力ページ"
31
 
@@ -41,45 +41,52 @@ msgstr "編集"
41
  msgid "Without registration."
42
  msgstr "登録されていません。"
43
 
44
- #: includes/wp-structuring-admin-post.php:90
45
  msgid "Schema.org Register"
46
  msgstr "Schema.org 登録"
47
 
48
- #: includes/wp-structuring-admin-post.php:120
49
- #: includes/wp-structuring-admin-post.php:128
50
- #: includes/wp-structuring-admin-post.php:154
51
- #: includes/wp-structuring-admin-post.php:163
52
- #: includes/wp-structuring-admin-post.php:173
53
- #: includes/wp-structuring-admin-post.php:184
54
- #: includes/wp-structuring-admin-post.php:195
55
  msgid "Posts"
56
  msgstr "投稿ページ"
57
 
58
- #: includes/wp-structuring-admin-post.php:136
59
- #: includes/wp-structuring-admin-post.php:152
60
- #: includes/wp-structuring-admin-post.php:171
61
- #: includes/wp-structuring-admin-post.php:182
62
- #: includes/wp-structuring-admin-post.php:193
 
 
 
 
 
 
 
 
 
 
63
  msgid "All Pages (In Header)"
64
  msgstr "全てのページ(ヘッダー)"
65
 
66
- #: includes/wp-structuring-admin-post.php:144
67
  msgid "Event Post Page"
68
  msgstr "イベント投稿ページ"
69
 
70
- #: includes/wp-structuring-admin-post.php:153
71
- #: includes/wp-structuring-admin-post.php:172
72
- #: includes/wp-structuring-admin-post.php:183
73
- #: includes/wp-structuring-admin-post.php:194
74
  msgid "Homepage"
75
  msgstr "ホームページ"
76
 
77
- #: includes/wp-structuring-admin-post.php:155
78
- #: includes/wp-structuring-admin-post.php:174
79
- #: includes/wp-structuring-admin-post.php:185
80
- #: includes/wp-structuring-admin-post.php:196
81
- msgid "Pages"
82
- msgstr "固定ページ"
83
 
84
  #: includes/wp-structuring-custom-post-event.php:34
85
  #: includes/wp-structuring-custom-post-event.php:35
2
  # This file is distributed under the same license as the Markup (JSON-LD) structured in schema.org package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Markup (JSON-LD) structured in schema.org 2.5.0\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-structuring-markup\n"
7
+ "POT-Creation-Date: 2016-04-19 12:08:30+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
25
  msgstr "Schema.org タイプ"
26
 
27
  #: includes/wp-structuring-admin-list.php:52
28
+ #: includes/wp-structuring-admin-post.php:142
29
  msgid "Output On"
30
  msgstr "出力ページ"
31
 
41
  msgid "Without registration."
42
  msgstr "登録されていません。"
43
 
44
+ #: includes/wp-structuring-admin-post.php:117
45
  msgid "Schema.org Register"
46
  msgstr "Schema.org 登録"
47
 
48
+ #: includes/wp-structuring-admin-post.php:147
49
+ #: includes/wp-structuring-admin-post.php:158
50
+ #: includes/wp-structuring-admin-post.php:187
51
+ #: includes/wp-structuring-admin-post.php:199
52
+ #: includes/wp-structuring-admin-post.php:213
53
+ #: includes/wp-structuring-admin-post.php:227
54
+ #: includes/wp-structuring-admin-post.php:241
55
  msgid "Posts"
56
  msgstr "投稿ページ"
57
 
58
+ #: includes/wp-structuring-admin-post.php:148
59
+ #: includes/wp-structuring-admin-post.php:159
60
+ #: includes/wp-structuring-admin-post.php:188
61
+ #: includes/wp-structuring-admin-post.php:200
62
+ #: includes/wp-structuring-admin-post.php:214
63
+ #: includes/wp-structuring-admin-post.php:228
64
+ #: includes/wp-structuring-admin-post.php:242
65
+ msgid "Pages"
66
+ msgstr "固定ページ"
67
+
68
+ #: includes/wp-structuring-admin-post.php:169
69
+ #: includes/wp-structuring-admin-post.php:185
70
+ #: includes/wp-structuring-admin-post.php:211
71
+ #: includes/wp-structuring-admin-post.php:225
72
+ #: includes/wp-structuring-admin-post.php:239
73
  msgid "All Pages (In Header)"
74
  msgstr "全てのページ(ヘッダー)"
75
 
76
+ #: includes/wp-structuring-admin-post.php:177
77
  msgid "Event Post Page"
78
  msgstr "イベント投稿ページ"
79
 
80
+ #: includes/wp-structuring-admin-post.php:186
81
+ #: includes/wp-structuring-admin-post.php:212
82
+ #: includes/wp-structuring-admin-post.php:226
83
+ #: includes/wp-structuring-admin-post.php:240
84
  msgid "Homepage"
85
  msgstr "ホームページ"
86
 
87
+ #: includes/wp-structuring-admin-post.php:287
88
+ msgid "Output On(Custom Posts)"
89
+ msgstr "出力ページ(カスタム投稿)"
 
 
 
90
 
91
  #: includes/wp-structuring-custom-post-event.php:34
92
  #: includes/wp-structuring-custom-post-event.php:35
languages/wp-structuring-markup.pot CHANGED
@@ -2,10 +2,9 @@
2
  # This file is distributed under the same license as the Markup (JSON-LD) structured in schema.org package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: Markup (JSON-LD) structured in schema.org 2.4.1\n"
6
- "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-structuring-"
7
- "markup\n"
8
- "POT-Creation-Date: 2016-03-01 08:58:28+00:00\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
@@ -22,11 +21,11 @@ msgid "Status"
22
  msgstr ""
23
 
24
  #: includes/wp-structuring-admin-list.php:51
25
- msgid "Schema Type"
26
  msgstr ""
27
 
28
  #: includes/wp-structuring-admin-list.php:52
29
- #: includes/wp-structuring-admin-post.php:115
30
  msgid "Output On"
31
  msgstr ""
32
 
@@ -42,44 +41,51 @@ msgstr ""
42
  msgid "Without registration."
43
  msgstr ""
44
 
45
- #: includes/wp-structuring-admin-post.php:90
46
  msgid "Schema.org Register"
47
  msgstr ""
48
 
49
- #: includes/wp-structuring-admin-post.php:120
50
- #: includes/wp-structuring-admin-post.php:128
51
- #: includes/wp-structuring-admin-post.php:154
52
- #: includes/wp-structuring-admin-post.php:163
53
- #: includes/wp-structuring-admin-post.php:173
54
- #: includes/wp-structuring-admin-post.php:184
55
- #: includes/wp-structuring-admin-post.php:195
56
  msgid "Posts"
57
  msgstr ""
58
 
59
- #: includes/wp-structuring-admin-post.php:136
60
- #: includes/wp-structuring-admin-post.php:152
61
- #: includes/wp-structuring-admin-post.php:171
62
- #: includes/wp-structuring-admin-post.php:182
63
- #: includes/wp-structuring-admin-post.php:193
 
 
 
 
 
 
 
 
 
 
64
  msgid "All Pages (In Header)"
65
  msgstr ""
66
 
67
- #: includes/wp-structuring-admin-post.php:144
68
  msgid "Event Post Page"
69
  msgstr ""
70
 
71
- #: includes/wp-structuring-admin-post.php:153
72
- #: includes/wp-structuring-admin-post.php:172
73
- #: includes/wp-structuring-admin-post.php:183
74
- #: includes/wp-structuring-admin-post.php:194
75
  msgid "Homepage"
76
  msgstr ""
77
 
78
- #: includes/wp-structuring-admin-post.php:155
79
- #: includes/wp-structuring-admin-post.php:174
80
- #: includes/wp-structuring-admin-post.php:185
81
- #: includes/wp-structuring-admin-post.php:196
82
- msgid "Pages"
83
  msgstr ""
84
 
85
  #: includes/wp-structuring-custom-post-event.php:34
2
  # This file is distributed under the same license as the Markup (JSON-LD) structured in schema.org package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Markup (JSON-LD) structured in schema.org 2.5.0\n"
6
+ "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-structuring-markup\n"
7
+ "POT-Creation-Date: 2016-04-19 12:08:30+00:00\n"
 
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
21
  msgstr ""
22
 
23
  #: includes/wp-structuring-admin-list.php:51
24
+ msgid "Schema.org Type"
25
  msgstr ""
26
 
27
  #: includes/wp-structuring-admin-list.php:52
28
+ #: includes/wp-structuring-admin-post.php:142
29
  msgid "Output On"
30
  msgstr ""
31
 
41
  msgid "Without registration."
42
  msgstr ""
43
 
44
+ #: includes/wp-structuring-admin-post.php:117
45
  msgid "Schema.org Register"
46
  msgstr ""
47
 
48
+ #: includes/wp-structuring-admin-post.php:147
49
+ #: includes/wp-structuring-admin-post.php:158
50
+ #: includes/wp-structuring-admin-post.php:187
51
+ #: includes/wp-structuring-admin-post.php:199
52
+ #: includes/wp-structuring-admin-post.php:213
53
+ #: includes/wp-structuring-admin-post.php:227
54
+ #: includes/wp-structuring-admin-post.php:241
55
  msgid "Posts"
56
  msgstr ""
57
 
58
+ #: includes/wp-structuring-admin-post.php:148
59
+ #: includes/wp-structuring-admin-post.php:159
60
+ #: includes/wp-structuring-admin-post.php:188
61
+ #: includes/wp-structuring-admin-post.php:200
62
+ #: includes/wp-structuring-admin-post.php:214
63
+ #: includes/wp-structuring-admin-post.php:228
64
+ #: includes/wp-structuring-admin-post.php:242
65
+ msgid "Pages"
66
+ msgstr ""
67
+
68
+ #: includes/wp-structuring-admin-post.php:169
69
+ #: includes/wp-structuring-admin-post.php:185
70
+ #: includes/wp-structuring-admin-post.php:211
71
+ #: includes/wp-structuring-admin-post.php:225
72
+ #: includes/wp-structuring-admin-post.php:239
73
  msgid "All Pages (In Header)"
74
  msgstr ""
75
 
76
+ #: includes/wp-structuring-admin-post.php:177
77
  msgid "Event Post Page"
78
  msgstr ""
79
 
80
+ #: includes/wp-structuring-admin-post.php:186
81
+ #: includes/wp-structuring-admin-post.php:212
82
+ #: includes/wp-structuring-admin-post.php:226
83
+ #: includes/wp-structuring-admin-post.php:240
84
  msgid "Homepage"
85
  msgstr ""
86
 
87
+ #: includes/wp-structuring-admin-post.php:287
88
+ msgid "Output On(Custom Posts)"
 
 
 
89
  msgstr ""
90
 
91
  #: includes/wp-structuring-custom-post-event.php:34
readme.txt CHANGED
@@ -2,8 +2,8 @@
2
  Contributors: miiitaka
3
  Tags: schema, schema.org, json, json-ld, seo, post, posts, google, shortcode, breadcrumb
4
  Requires at least: 4.3.1
5
- Tested up to: 4.4.2
6
- Stable tag: 2.4.2
7
 
8
  Allows you to include schema.org JSON-LD syntax markup on your website
9
 
@@ -52,6 +52,15 @@ if ( shortcode_exists( 'wp-structuring-markup-breadcrumb' ) ) {
52
 
53
  == Changelog ==
54
 
 
 
 
 
 
 
 
 
 
55
  = 2.4.2 (2016-03-09) =
56
 
57
  * Fixed : Updated image size detection to use curl first, as attachment_url_to_postid() hits the database
@@ -66,12 +75,12 @@ if ( shortcode_exists( 'wp-structuring-markup-breadcrumb' ) ) {
66
 
67
  * Added : Schema.org type "Person".
68
  * Updated : Schema.org type "LocalBusiness" OpenHours : shift time setting.
69
- * Check : WordPress version 4.4.2 operation check.
70
 
71
  = 2.3.3 (2016-01-19) =
72
 
73
- * Fixed : Improved wording on admin pages
74
- * Fixed : Added alternate methods to get image dimensions for systems running legacy SSL
75
 
76
  = 2.3.2 (2016-01-10) =
77
 
@@ -80,7 +89,7 @@ if ( shortcode_exists( 'wp-structuring-markup-breadcrumb' ) ) {
80
 
81
  = 2.3.1 (2016-01-07) =
82
 
83
- * Check : WordPress version 4.4.1 operation check.
84
  * Added : Breadcrumb ShortCode option add.
85
 
86
  = 2.3.0 (2016-01-03) =
2
  Contributors: miiitaka
3
  Tags: schema, schema.org, json, json-ld, seo, post, posts, google, shortcode, breadcrumb
4
  Requires at least: 4.3.1
5
+ Tested up to: 4.5.0
6
+ Stable tag: 2.5.0
7
 
8
  Allows you to include schema.org JSON-LD syntax markup on your website
9
 
52
 
53
  == Changelog ==
54
 
55
+ = 2.5.0 (2016-04-19) =
56
+
57
+ * Updated : You can select a custom posts at the output page.
58
+ * Updated : Add the output on "Pages" in the "Article","BlogPosting" and "NewsArticle" Schema.org type.
59
+ * Updated : It added the Holiday Opening Hour of items to Schema.org Type "LocalBusiness".
60
+ * Updated : It added the GeoCircle of items to Schema.org Type "LocalBusiness".
61
+ * Updated : Japanese translation.
62
+ * Checked : WordPress version 4.5.0 operation check.
63
+
64
  = 2.4.2 (2016-03-09) =
65
 
66
  * Fixed : Updated image size detection to use curl first, as attachment_url_to_postid() hits the database
75
 
76
  * Added : Schema.org type "Person".
77
  * Updated : Schema.org type "LocalBusiness" OpenHours : shift time setting.
78
+ * Checked : WordPress version 4.4.2 operation check.
79
 
80
  = 2.3.3 (2016-01-19) =
81
 
82
+ * Fixed : Improved wording on admin pages.
83
+ * Fixed : Added alternate methods to get image dimensions for systems running legacy SSL.
84
 
85
  = 2.3.2 (2016-01-10) =
86
 
89
 
90
  = 2.3.1 (2016-01-07) =
91
 
92
+ * Checked : WordPress version 4.4.1 operation check.
93
  * Added : Breadcrumb ShortCode option add.
94
 
95
  = 2.3.0 (2016-01-03) =
wp-structuring-markup.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: Markup (JSON-LD) structured in schema.org
4
  Plugin URI: https://wordpress.org/plugins/wp-structuring-markup/
5
  Description: Allows you to include schema.org JSON-LD syntax markup on your website
6
- Version: 2.4.2
7
  Author: Kazuya Takami
8
  Author URI: http://programp.com/
9
  License: GPLv2 or later
@@ -19,7 +19,7 @@ new Structuring_Markup();
19
  *
20
  * @author Kazuya Takami
21
  * @since 1.0.0
22
- * @version 2.4.2
23
  */
24
  class Structuring_Markup {
25
 
@@ -27,10 +27,10 @@ class Structuring_Markup {
27
  * Variable definition.
28
  *
29
  * @since 1.3.0
30
- * @version 2.4.2
31
  */
32
  private $text_domain = 'wp-structuring-markup';
33
- private $version = '2.4.2';
34
 
35
  /**
36
  * Constructor Define.
3
  Plugin Name: Markup (JSON-LD) structured in schema.org
4
  Plugin URI: https://wordpress.org/plugins/wp-structuring-markup/
5
  Description: Allows you to include schema.org JSON-LD syntax markup on your website
6
+ Version: 2.5.0
7
  Author: Kazuya Takami
8
  Author URI: http://programp.com/
9
  License: GPLv2 or later
19
  *
20
  * @author Kazuya Takami
21
  * @since 1.0.0
22
+ * @version 2.5.0
23
  */
24
  class Structuring_Markup {
25
 
27
  * Variable definition.
28
  *
29
  * @since 1.3.0
30
+ * @version 2.5.0
31
  */
32
  private $text_domain = 'wp-structuring-markup';
33
+ private $version = '2.5.0';
34
 
35
  /**
36
  * Constructor Define.