Version Description
- New: Added ItemReviewed types in Review schema.
- Fix: error "Thing is not a known valid target type for the item reviewed the property" in the review schema.
Download this release
Release Info
Developer | brainstormworg |
Plugin | All In One Schema Rich Snippets |
Version | 1.6.0 |
Comparing to | |
See all releases |
Code changes from version 1.5.6 to 1.6.0
- functions.php +160 -2
- index.php +1 -1
- js/toggle.js +74 -0
- meta-boxes.php +162 -0
- readme.txt +6 -2
functions.php
CHANGED
@@ -69,9 +69,39 @@ function display_rich_snippet($content) {
|
|
69 |
$review .= '<div class="snippet-title" style="background:'.esc_attr($args_color["snippet_title_bg"] ).'; color:'.esc_attr($args_color["snippet_title_color"] ).'; border-bottom:1px solid '.esc_attr($args_color["snippet_border"] ).';">'.esc_attr(stripslashes( $args_review['review_title'] ) ).'</div>';
|
70 |
$review .= '<div class="snippet-markup" itemscope itemtype="http://schema.org/Review">';
|
71 |
$item = get_post_meta( $post->ID, '_bsf_item_name', true );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
72 |
$rating = get_post_meta( $post->ID, '_bsf_rating', true );
|
73 |
$reviewer = get_post_meta( $post->ID, '_bsf_item_reviewer', true);
|
74 |
$post_date = get_the_date('Y-m-d');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
75 |
if(trim($reviewer) != "")
|
76 |
{
|
77 |
if($args_review['item_reviewer'] != "")
|
@@ -89,13 +119,12 @@ function display_rich_snippet($content) {
|
|
89 |
{
|
90 |
if( $args_review['item_name'] != "")
|
91 |
$review .= "<div class='snippet-label'>".esc_attr(stripslashes( $args_review['item_name'] ) )."</div>";
|
92 |
-
$review .= "<div class='snippet-data'> <span itemprop='
|
93 |
}
|
94 |
if(trim($rating) != "")
|
95 |
{
|
96 |
if( $args_review['item_rating'] != "")
|
97 |
$review .= "<div class='snippet-label'>".esc_attr(stripslashes( $args_review['item_rating'] ) )."</div>";
|
98 |
-
|
99 |
$review .= "<div class='snippet-data'> <span itemprop='reviewRating' itemscope itemtype='http://schema.org/Rating'><span class='rating-value' itemprop='ratingValue'>".esc_attr( $rating )."</span></span><span class='star-img'>";
|
100 |
for($i = 1; $i<=ceil($rating); $i++)
|
101 |
{
|
@@ -108,6 +137,135 @@ function display_rich_snippet($content) {
|
|
108 |
}
|
109 |
$review .= '</span></div>';
|
110 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
111 |
$review .= "</div>
|
112 |
</div><div style='clear:both;'></div>";
|
113 |
|
69 |
$review .= '<div class="snippet-title" style="background:'.esc_attr($args_color["snippet_title_bg"] ).'; color:'.esc_attr($args_color["snippet_title_color"] ).'; border-bottom:1px solid '.esc_attr($args_color["snippet_border"] ).';">'.esc_attr(stripslashes( $args_review['review_title'] ) ).'</div>';
|
70 |
$review .= '<div class="snippet-markup" itemscope itemtype="http://schema.org/Review">';
|
71 |
$item = get_post_meta( $post->ID, '_bsf_item_name', true );
|
72 |
+
$item_review_type = get_post_meta( $post->ID, '_bsf_item_review_type', true );
|
73 |
+
$item_event_name = get_post_meta( $post->ID, '_bsf_item_event_name', true );
|
74 |
+
$item_event_start_date = get_post_meta( $post->ID, '_bsf_item_event_start_date', true );
|
75 |
+
$item_event_org = get_post_meta( $post->ID, '_bsf_item_event_organization', true );
|
76 |
+
$item_event_street = get_post_meta( $post->ID, '_bsf_item_event_street', true );
|
77 |
+
$item_event_local = get_post_meta( $post->ID, '_bsf_item_event_local', true );
|
78 |
+
$item_event_region = get_post_meta( $post->ID, '_bsf_item_event_region', true );
|
79 |
+
$item_event_postal_code = get_post_meta( $post->ID, '_bsf_item_event_postal_code', true );
|
80 |
+
$item_pro_name = get_post_meta( $post->ID, '_bsf_item_pro_name', true );
|
81 |
+
$item_pro_price = get_post_meta( $post->ID, '_bsf_item_pro_price', true );
|
82 |
+
$item_pro_cur = get_post_meta( $post->ID, '_bsf_item_pro_cur', true );
|
83 |
+
$item_pro_status = get_post_meta( $post->ID, '_bsf_item_pro_status', true );
|
84 |
+
$item_recp_name = get_post_meta( $post->ID, '_bsf_item_recipes_name', true );
|
85 |
+
$item_recp_photo = get_post_meta( $post->ID, '_bsf_item_recipes_photo', true );
|
86 |
+
$item_soft_name = get_post_meta( $post->ID, '_bsf_item_soft_name', true );
|
87 |
+
$item_os_name = get_post_meta( $post->ID, '_bsf_item_os_name', true );
|
88 |
+
$item_app_name = get_post_meta( $post->ID, '_bsf_item_app_name', true );
|
89 |
+
$item_video_title = get_post_meta( $post->ID, '_bsf_item_video_title', true );
|
90 |
+
$item_video_desc = get_post_meta( $post->ID, '_bsf_item_video_desc', true );
|
91 |
+
$item_video_thumb = get_post_meta( $post->ID, '_bsf_item_video_thumb', true );
|
92 |
+
$item_video_date = get_post_meta( $post->ID, '_bsf_item_video_date', true );
|
93 |
$rating = get_post_meta( $post->ID, '_bsf_rating', true );
|
94 |
$reviewer = get_post_meta( $post->ID, '_bsf_item_reviewer', true);
|
95 |
$post_date = get_the_date('Y-m-d');
|
96 |
+
|
97 |
+
if('item_recipe' == $item_review_type ){
|
98 |
+
$review .= '<div class="snippet-image"><img width="180" src="'.esc_url( $item_recp_photo ).'" alt="recipe image"/></div>';
|
99 |
+
$review .= '<div class="aio-info">';
|
100 |
+
}
|
101 |
+
if('item_video' == $item_review_type){
|
102 |
+
$review .= '<div class="snippet-image"><img width="180" src="'.esc_url( $item_video_thumb ).'" alt="Video Image"/></div>';
|
103 |
+
$review .= '<div class="aio-info">';
|
104 |
+
}
|
105 |
if(trim($reviewer) != "")
|
106 |
{
|
107 |
if($args_review['item_reviewer'] != "")
|
119 |
{
|
120 |
if( $args_review['item_name'] != "")
|
121 |
$review .= "<div class='snippet-label'>".esc_attr(stripslashes( $args_review['item_name'] ) )."</div>";
|
122 |
+
$review .= "<div class='snippet-data'> <span itemprop='name'>".esc_attr($item )."</span></div>";
|
123 |
}
|
124 |
if(trim($rating) != "")
|
125 |
{
|
126 |
if( $args_review['item_rating'] != "")
|
127 |
$review .= "<div class='snippet-label'>".esc_attr(stripslashes( $args_review['item_rating'] ) )."</div>";
|
|
|
128 |
$review .= "<div class='snippet-data'> <span itemprop='reviewRating' itemscope itemtype='http://schema.org/Rating'><span class='rating-value' itemprop='ratingValue'>".esc_attr( $rating )."</span></span><span class='star-img'>";
|
129 |
for($i = 1; $i<=ceil($rating); $i++)
|
130 |
{
|
137 |
}
|
138 |
$review .= '</span></div>';
|
139 |
}
|
140 |
+
if(trim($item_review_type) != "")
|
141 |
+
{
|
142 |
+
if('item_event' == $item_review_type){
|
143 |
+
$item_event = get_option('bsf_event');
|
144 |
+
$review .= '<span itemprop="itemReviewed" itemscope itemtype="https://schema.org/Event">';
|
145 |
+
if(trim($item_event_name) != ""){
|
146 |
+
if( $item_event['event_title'] != "")
|
147 |
+
$review .= "<div class='snippet-label'>".esc_attr(stripslashes( $item_event['event_title'] ) )."</div>";
|
148 |
+
$review .= " <div class='snippet-data'><span itemprop='name'>".esc_attr( stripslashes( $item_event_name ) )."</span></div>";
|
149 |
+
}
|
150 |
+
if(trim($item_event_start_date) != ""){
|
151 |
+
if($item_event['start_time'] != "")
|
152 |
+
$review .= "<div class='snippet-label'>".esc_attr(stripslashes( $item_event['start_time'] ) )."</div>";
|
153 |
+
$review .= " <div class='snippet-data'><span itemprop='startDate' datetime='".esc_attr( $item_event_start_date )."T00:00-00:00'>".esc_attr( $item_event_start_date )."</span></div>";
|
154 |
+
}
|
155 |
+
if(trim($item_event_org != "")){
|
156 |
+
if( $item_event['event_location'] != "")
|
157 |
+
$review .= "<div class='snippet-label'>".esc_attr(stripslashes( $item_event['event_location'] ) )."</div>";
|
158 |
+
$review .= " <div class='snippet-data'><span itemprop='location' itemscope itemtype='http://schema.org/Place'><span itemprop='name'>".esc_attr( stripslashes( $item_event_org ) )."</span>,";
|
159 |
+
if(trim($item_event_street) != "")
|
160 |
+
$review .= '<span itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
|
161 |
+
<span itemprop="streetAddress">'.esc_attr( $item_event_street ).'</span>,';
|
162 |
+
if(trim($item_event_local) != "")
|
163 |
+
$review .= '<span itemprop="addressLocality">'.esc_attr( $item_event_local ).'</span>,';
|
164 |
+
if(trim($item_event_region) != "")
|
165 |
+
$review .= '<span itemprop="addressRegion">'.esc_attr( $item_event_region ).'</span>';
|
166 |
+
if(trim($item_event_postal_code) != "")
|
167 |
+
$review .= '-<span itemprop="postalCode">'.esc_attr( $item_event_postal_code ).'</span>';
|
168 |
+
$review .= '</span>';
|
169 |
+
$review .="</span></div>";
|
170 |
+
}
|
171 |
+
$review .= "</span>";
|
172 |
+
}
|
173 |
+
if('item_product' == $item_review_type){
|
174 |
+
$item_product = get_option('bsf_product');
|
175 |
+
if(trim($item_pro_status) == "out_of_stock"){
|
176 |
+
$item_pro_status = 'OutOfStock';
|
177 |
+
$availability = "Out of Stock";
|
178 |
+
}
|
179 |
+
else if(trim($item_pro_status) == "in_stock"){
|
180 |
+
$item_pro_status = 'InStock';
|
181 |
+
$availability = "Available in Stock";
|
182 |
+
}
|
183 |
+
else if(trim($item_pro_status) == "instore_only"){
|
184 |
+
$item_pro_status = 'InStoreOnly';
|
185 |
+
$availability = "Available in Store Only";
|
186 |
+
}
|
187 |
+
else if(trim($item_pro_status) == "preorder"){
|
188 |
+
$availability = "Pre-Order Only";
|
189 |
+
}
|
190 |
+
$review .= '<span itemprop="itemReviewed" itemscope itemtype="https://schema.org/Product">';
|
191 |
+
if(trim($item_pro_name) != ""){
|
192 |
+
if( $item_product['product_name'] != "")
|
193 |
+
$review .= "<div class='snippet-label'>".esc_attr(stripslashes( $item_product['product_name'] ) )."</div>";
|
194 |
+
$review .= " <div class='snippet-data'><span itemprop='name'>".esc_attr( stripslashes( $item_pro_name ) )."</span></div>";
|
195 |
+
}
|
196 |
+
if(trim($item_pro_price) != ""){
|
197 |
+
|
198 |
+
if($item_product['product_price'] != "")
|
199 |
+
$review .= '<div class="offer_sec" itemprop="offers" itemscope itemtype="http://schema.org/Offer"><div class="snippet-label">'.esc_attr( stripslashes( $item_product['product_price'] ) ).'</div>';
|
200 |
+
$review .= '<div class="snippet-data">
|
201 |
+
<span itemprop="priceCurrency">'.esc_attr( $item_pro_cur ).'</span><span itemprop="price">'.' '.esc_attr( $item_pro_price ).'</span></div>';
|
202 |
+
|
203 |
+
if(trim($item_pro_status) != "")
|
204 |
+
{
|
205 |
+
if($item_product['product_avail'] != "")
|
206 |
+
$review .= '<div class="snippet-label">'.esc_attr( stripslashes( $item_product['product_avail'] ) ).'</div>';
|
207 |
+
$review .= ' <div class="snippet-data"> <span itemprop="availability" content="'.esc_attr( $item_pro_status ).'">'.esc_attr( $availability ).'</span></span></div>';
|
208 |
+
}
|
209 |
+
$review .= '</div>';
|
210 |
+
}
|
211 |
+
$review .= "</span>";
|
212 |
+
}
|
213 |
+
if('item_recipe' == $item_review_type){
|
214 |
+
$item_recipe = get_option('bsf_recipe');
|
215 |
+
$review .= '<span itemprop="itemReviewed" itemscope itemtype="https://schema.org/Recipe">';
|
216 |
+
if(trim($item_recp_name) != ""){
|
217 |
+
if( $item_recipe['recipe_name'] != "")
|
218 |
+
$review .= "<div class='snippet-label'>".esc_attr(stripslashes( $item_recipe['recipe_name'] ) )."</div>";
|
219 |
+
$review .= " <div class='snippet-data'><span itemprop='name'>".esc_attr( stripslashes( $item_recp_name ) )."</span></div>";
|
220 |
+
}
|
221 |
+
if(trim($item_recp_photo) != ""){
|
222 |
+
$review .= '<meta itemprop="image" content="'.esc_attr( $item_recp_photo ).'">';
|
223 |
+
}
|
224 |
+
$review .= "</span></div>";
|
225 |
+
}
|
226 |
+
if('item_software' == $item_review_type){
|
227 |
+
$item_soft = get_option('bsf_software');
|
228 |
+
$review .= '<span itemprop="itemReviewed" itemscope itemtype="https://schema.org/SoftwareApplication">';
|
229 |
+
if( trim( $item_soft_name ) != "" ){
|
230 |
+
if( $item_soft['software_name'] != "")
|
231 |
+
$review .= "<div class='snippet-label'>".esc_attr(stripslashes( $item_soft['software_name'] ) )."</div>";
|
232 |
+
$review .= " <div class='snippet-data'><span itemprop='name'>".esc_attr( stripslashes( $item_soft_name ) )."</span></div>";
|
233 |
+
}
|
234 |
+
if( trim( $item_os_name ) != "" ){
|
235 |
+
if( $item_soft['software_name'] )
|
236 |
+
$review .= "<div class='snippet-label'>".esc_attr(stripslashes( $item_soft['software_name'] ) )."</div>";
|
237 |
+
$review .= " <div class='snippet-data'><span itemprop='operatingSystem'>".esc_attr( stripslashes( $item_os_name ) )."</span></div>";
|
238 |
+
}
|
239 |
+
if( trim( $item_app_name ) != "" ){
|
240 |
+
$review .= "<div class='snippet-label'>".esc_attr(stripslashes( 'Software Category' ) )."</div>";
|
241 |
+
$review .= " <div class='snippet-data'><span itemprop='applicationCategory'>".esc_attr( stripslashes( $item_app_name ) )."</span></div>";
|
242 |
+
}
|
243 |
+
$review .= "</span>";
|
244 |
+
}
|
245 |
+
if('item_video' == $item_review_type){
|
246 |
+
$item_video = get_option('bsf_video');
|
247 |
+
$review .= '<span itemprop="itemReviewed" itemscope itemtype="https://schema.org/VideoObject">';
|
248 |
+
if( trim ( $item_video_title ) != "" ){
|
249 |
+
if( $item_video['video_title'] != "")
|
250 |
+
$review .= "<div class='snippet-label'>".esc_attr(stripslashes( $item_video['video_title'] ) )."</div>";
|
251 |
+
$review .= " <div class='snippet-data'><span itemprop='name'>".esc_attr( stripslashes( $item_video_title ) )."</span></div><div class='snippet-clear'></div>";
|
252 |
+
}
|
253 |
+
if(trim( $item_video_desc ) != "" ){
|
254 |
+
if($item_video['video_desc'] != "" )
|
255 |
+
$review .= '<div class="snippet-label-img">'.esc_attr( stripslashes( $item_video['video_desc'] ) ).'</div>';
|
256 |
+
$review .= '<div class="snippet-data-img"><span itemprop="description">'.esc_attr( htmlspecialchars_decode( $item_video_desc ) ).'</span></div>';
|
257 |
+
}
|
258 |
+
if(trim( $item_video_date ) != "" ){
|
259 |
+
if($item_video['video_date'] != "" )
|
260 |
+
$review .= '<div class="snippet-label">'.esc_attr( stripslashes( $item_video['video_date'] ) ).'</div>';
|
261 |
+
$review .= "<div class='snippet-data'><span itemprop='uploadDate'>".esc_attr( stripslashes( $item_video_date ) )."</span></div>";
|
262 |
+
}
|
263 |
+
if(trim($item_video_thumb) != ""){
|
264 |
+
$review .= '<meta itemprop="thumbnailUrl" content="'.esc_attr( $item_video_thumb ).'">';
|
265 |
+
}
|
266 |
+
$review .= "</span></div>";
|
267 |
+
}
|
268 |
+
}
|
269 |
$review .= "</div>
|
270 |
</div><div style='clear:both;'></div>";
|
271 |
|
index.php
CHANGED
@@ -5,7 +5,7 @@ Plugin URI: https://www.brainstormforce.com
|
|
5 |
Author: Brainstorm Force
|
6 |
Author URI: https://www.brainstormforce.com
|
7 |
Description: Welcome to the Schema - All In One Schema Rich Snippets! You can now easily add schema markup on various pages and posts of your website. Implement schema types such as Review, Events, Recipes, Article, Products, Services etc.
|
8 |
-
Version: 1.
|
9 |
Text Domain: rich-snippets
|
10 |
License: GPL2
|
11 |
*/
|
5 |
Author: Brainstorm Force
|
6 |
Author URI: https://www.brainstormforce.com
|
7 |
Description: Welcome to the Schema - All In One Schema Rich Snippets! You can now easily add schema markup on various pages and posts of your website. Implement schema types such as Review, Events, Recipes, Article, Products, Services etc.
|
8 |
+
Version: 1.6.0
|
9 |
Text Domain: rich-snippets
|
10 |
License: GPL2
|
11 |
*/
|
js/toggle.js
CHANGED
@@ -1,9 +1,19 @@
|
|
1 |
jQuery(document).ready(function() {
|
2 |
var selected = jQuery("#_bsf_post_type").val();
|
|
|
3 |
if(selected == "0")
|
4 |
hidden();
|
5 |
else
|
6 |
expand_default(selected);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
//Function to hide all the snippet blocks
|
8 |
function hidden() {
|
9 |
jQuery(".review").hide();
|
@@ -19,9 +29,20 @@ function hidden() {
|
|
19 |
jQuery(".service").hide();
|
20 |
|
21 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
22 |
//Function to expand the updated snippet block
|
23 |
function expand_default(selected) {
|
24 |
hidden();
|
|
|
25 |
if(selected == '1')
|
26 |
{
|
27 |
jQuery(".review").show(500);
|
@@ -69,7 +90,11 @@ function expand_default(selected) {
|
|
69 |
}
|
70 |
jQuery("#_bsf_post_type").change(function() {
|
71 |
hidden();
|
|
|
72 |
var type=jQuery(this).val();
|
|
|
|
|
|
|
73 |
if(type == '1')
|
74 |
{
|
75 |
jQuery(".review").show(500);
|
@@ -115,4 +140,53 @@ function expand_default(selected) {
|
|
115 |
jQuery(".service").show(500);
|
116 |
}
|
117 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
118 |
});
|
1 |
jQuery(document).ready(function() {
|
2 |
var selected = jQuery("#_bsf_post_type").val();
|
3 |
+
var item_type = jQuery("#_bsf_item_review_type").val();
|
4 |
if(selected == "0")
|
5 |
hidden();
|
6 |
else
|
7 |
expand_default(selected);
|
8 |
+
jQuery( window ).load(function() {
|
9 |
+
if(item_type == "none")
|
10 |
+
item_hidden();
|
11 |
+
else if(selected != "1" && item_type != "none")
|
12 |
+
item_hidden();
|
13 |
+
else
|
14 |
+
item_expand_default(item_type);
|
15 |
+
});
|
16 |
+
|
17 |
//Function to hide all the snippet blocks
|
18 |
function hidden() {
|
19 |
jQuery(".review").hide();
|
29 |
jQuery(".service").hide();
|
30 |
|
31 |
}
|
32 |
+
|
33 |
+
//Function to hide all the snippet blocks
|
34 |
+
function item_hidden() {
|
35 |
+
jQuery(".soft_item_type").hide();
|
36 |
+
jQuery(".event_item_type").hide();
|
37 |
+
jQuery(".product_item_type").hide();
|
38 |
+
jQuery(".recipes_item_type").hide();
|
39 |
+
jQuery(".video_item_type").hide();
|
40 |
+
}
|
41 |
+
|
42 |
//Function to expand the updated snippet block
|
43 |
function expand_default(selected) {
|
44 |
hidden();
|
45 |
+
item_hidden();
|
46 |
if(selected == '1')
|
47 |
{
|
48 |
jQuery(".review").show(500);
|
90 |
}
|
91 |
jQuery("#_bsf_post_type").change(function() {
|
92 |
hidden();
|
93 |
+
item_hidden();
|
94 |
var type=jQuery(this).val();
|
95 |
+
if(type == '1' && 'none' != item_type ){
|
96 |
+
item_expand_default(item_type);
|
97 |
+
}
|
98 |
if(type == '1')
|
99 |
{
|
100 |
jQuery(".review").show(500);
|
140 |
jQuery(".service").show(500);
|
141 |
}
|
142 |
});
|
143 |
+
|
144 |
+
//Function to expand the item review updated snippet block.
|
145 |
+
function item_expand_default(item_type) {
|
146 |
+
item_hidden();
|
147 |
+
if(item_type == 'item_software')
|
148 |
+
{
|
149 |
+
jQuery(".soft_item_type").show(500);
|
150 |
+
}
|
151 |
+
if(item_type == 'item_event')
|
152 |
+
{
|
153 |
+
jQuery(".event_item_type").show(500);
|
154 |
+
}
|
155 |
+
if(item_type == 'item_product')
|
156 |
+
{
|
157 |
+
jQuery(".product_item_type").show(500);
|
158 |
+
}
|
159 |
+
if(item_type == 'item_recipe')
|
160 |
+
{
|
161 |
+
jQuery(".recipes_item_type").show(500);
|
162 |
+
}
|
163 |
+
if(item_type == 'item_video')
|
164 |
+
{
|
165 |
+
jQuery(".video_item_type").show(500);
|
166 |
+
}
|
167 |
+
}
|
168 |
+
jQuery("#_bsf_item_review_type").change(function() {
|
169 |
+
item_hidden();
|
170 |
+
var type=jQuery(this).val();
|
171 |
+
if(type == 'item_software')
|
172 |
+
{
|
173 |
+
jQuery(".soft_item_type").show(500);
|
174 |
+
}
|
175 |
+
if(type == 'item_event')
|
176 |
+
{
|
177 |
+
jQuery(".event_item_type").show(500);
|
178 |
+
}
|
179 |
+
if(type == 'item_product')
|
180 |
+
{
|
181 |
+
jQuery(".product_item_type").show(500);
|
182 |
+
}
|
183 |
+
if(type == 'item_recipe')
|
184 |
+
{
|
185 |
+
jQuery(".recipes_item_type").show(500);
|
186 |
+
}
|
187 |
+
if(type == 'item_video')
|
188 |
+
{
|
189 |
+
jQuery(".video_item_type").show(500);
|
190 |
+
}
|
191 |
+
});
|
192 |
});
|
meta-boxes.php
CHANGED
@@ -74,6 +74,168 @@ function bsf_metaboxes( array $meta_boxes ) {
|
|
74 |
'class' => 'review',
|
75 |
'type' => 'text',
|
76 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
77 |
array(
|
78 |
'name' => __('Your Rating','rich-snippets'),
|
79 |
'desc' => __(' Rate this item (1-5)','rich-snippets'),
|
74 |
'class' => 'review',
|
75 |
'type' => 'text',
|
76 |
),
|
77 |
+
array(
|
78 |
+
'name' => __('Item Review Type','rich-snippets'),
|
79 |
+
'desc' => __('Select the item to be reviewed.','rich-snippets'),
|
80 |
+
'id' => $prefix . 'item_review_type',
|
81 |
+
'class' => 'item_type review',
|
82 |
+
'type' => 'select',
|
83 |
+
'options' => array(
|
84 |
+
array( 'name' => __('Select Item type','rich-snippets'), 'value' => 'none', ),
|
85 |
+
array( 'name' => __('Event','rich-snippets'), 'value' => 'item_event', ),
|
86 |
+
array( 'name' => __('Product','rich-snippets'), 'value' => 'item_product', ),
|
87 |
+
array( 'name' => __('Recipe','rich-snippets'), 'value' => 'item_recipe', ),
|
88 |
+
array( 'name' => __('Software Application','rich-snippets'), 'value' => 'item_software', ),
|
89 |
+
array( 'name' => __('Video','rich-snippets'), 'value' => 'item_video', ),
|
90 |
+
),
|
91 |
+
),
|
92 |
+
array(
|
93 |
+
'name' => __('Event Name','rich-snippets'),
|
94 |
+
'desc' => __('Enter the Event name.','rich-snippets'),
|
95 |
+
'id' => $prefix . 'item_event_name',
|
96 |
+
'class' => 'event_item_type',
|
97 |
+
'type' => 'text',
|
98 |
+
),
|
99 |
+
array(
|
100 |
+
'name' => __('Event Start Date ','rich-snippets'),
|
101 |
+
'desc' => __('Provide the Event Start Date.','rich-snippets'),
|
102 |
+
'id' => $prefix . 'item_event_start_date',
|
103 |
+
'class' => 'event_item_type',
|
104 |
+
'type' => 'text_date',
|
105 |
+
),
|
106 |
+
array(
|
107 |
+
'name' => __('Event Location ','rich-snippets'),
|
108 |
+
'desc' => __('Location Name Here','rich-snippets'),
|
109 |
+
'id' => $prefix . 'item_event_organization',
|
110 |
+
'class' => 'event_item_type',
|
111 |
+
'type' => 'text_medium',
|
112 |
+
),
|
113 |
+
array(
|
114 |
+
'name' => __('','rich-snippets'),
|
115 |
+
'desc' => __('Street Address','rich-snippets'),
|
116 |
+
'id' => $prefix . 'item_event_street',
|
117 |
+
'class' => 'event_item_type',
|
118 |
+
'type' => 'text_medium',
|
119 |
+
),
|
120 |
+
array(
|
121 |
+
'name' => __('','rich-snippets'),
|
122 |
+
'desc' => __('Locality','rich-snippets'),
|
123 |
+
'id' => $prefix . 'item_event_local',
|
124 |
+
'class' => 'event_item_type',
|
125 |
+
'type' => 'text_medium',
|
126 |
+
),
|
127 |
+
array(
|
128 |
+
'name' => __('','rich-snippets'),
|
129 |
+
'desc' => __('Region','rich-snippets'),
|
130 |
+
'id' => $prefix . 'item_event_region',
|
131 |
+
'class' => 'event_item_type',
|
132 |
+
'type' => 'text_medium',
|
133 |
+
),
|
134 |
+
array(
|
135 |
+
'name' => __('','rich-snippets'),
|
136 |
+
'desc' => __('Postal Code','rich-snippets'),
|
137 |
+
'id' => $prefix . 'item_event_postal_code',
|
138 |
+
'class' => 'event_item_type',
|
139 |
+
'type' => 'text_medium',
|
140 |
+
),
|
141 |
+
array(
|
142 |
+
'name' => __('Product Name','rich-snippets'),
|
143 |
+
'desc' => __('Enter the Product name.','rich-snippets'),
|
144 |
+
'id' => $prefix . 'item_pro_name',
|
145 |
+
'class' => 'product_item_type',
|
146 |
+
'type' => 'text',
|
147 |
+
),
|
148 |
+
array(
|
149 |
+
'name' => __('Product Price','rich-snippets'),
|
150 |
+
'desc' => __('Enter the product Price.','rich-snippets'),
|
151 |
+
'id' => $prefix . 'item_pro_price',
|
152 |
+
'class' => 'product_item_type',
|
153 |
+
'type' => 'text_small',
|
154 |
+
),
|
155 |
+
array(
|
156 |
+
'name' => __('Currency ','rich-snippets'),
|
157 |
+
'desc' => __('Enter the Currency Code(e.g USD, INR, AUD, EUR, GBP). <a href="http://www.science.co.il/International/Currency-Codes.asp" target="_blank"> Know you currency code</a>','rich-snippets'),
|
158 |
+
'id' => $prefix . 'item_pro_cur',
|
159 |
+
'class' => 'product_item_type',
|
160 |
+
'type' => 'text_small',
|
161 |
+
),
|
162 |
+
array(
|
163 |
+
'name' => __('Availability','rich-snippets'),
|
164 |
+
'desc' => __('Select the products availability.','rich-snippets'),
|
165 |
+
'id' => $prefix . 'item_pro_status',
|
166 |
+
'class' => 'product_item_type',
|
167 |
+
'type' => 'select',
|
168 |
+
'options' => array(
|
169 |
+
array('name' => __('__ Please Select __','rich-snippets'), 'value' => ''),
|
170 |
+
array('name' => __('Out of Stock','rich-snippets'), 'value' => 'out_of_stock'),
|
171 |
+
array('name' => __('In Stock','rich-snippets'), 'value' => 'in_stock'),
|
172 |
+
array('name' => __('In Store Only','rich-snippets'), 'value' => 'instore_only'),
|
173 |
+
array('name' => __('Pre-Order','rich-snippets'), 'value' => 'preorder'),
|
174 |
+
),
|
175 |
+
),
|
176 |
+
array(
|
177 |
+
'name' => __('Recipe Name ','rich-snippets'),
|
178 |
+
'desc' => __('Enter the recipe name.','rich-snippets'),
|
179 |
+
'id' => $prefix . 'item_recipes_name',
|
180 |
+
'class' => 'recipes_item_type',
|
181 |
+
'type' => 'text_medium',
|
182 |
+
),
|
183 |
+
array(
|
184 |
+
'name' => __('Recipe Photo','rich-snippets'),
|
185 |
+
'desc' => __('Upload or Select recipe photo. Medium size is recommended (300px X 300px)','rich-snippets'),
|
186 |
+
'id' => $prefix . 'item_recipes_photo',
|
187 |
+
'class' => 'recipes_item_type',
|
188 |
+
'type' => 'file',
|
189 |
+
),
|
190 |
+
array(
|
191 |
+
'name' => __('Software Name','rich-snippets'),
|
192 |
+
'desc' => __('Enter the Software name.','rich-snippets'),
|
193 |
+
'id' => $prefix . 'item_soft_name',
|
194 |
+
'class' => 'soft_item_type',
|
195 |
+
'type' => 'text',
|
196 |
+
),
|
197 |
+
array(
|
198 |
+
'name' => __('Software Operating System','rich-snippets'),
|
199 |
+
'desc' => __('Enter the Operating System name.','rich-snippets'),
|
200 |
+
'id' => $prefix . 'item_os_name',
|
201 |
+
'class' => 'soft_item_type',
|
202 |
+
'type' => 'text',
|
203 |
+
),
|
204 |
+
array(
|
205 |
+
'name' => __('Software Application Category','rich-snippets'),
|
206 |
+
'desc' => __('Enter the Application Category name.','rich-snippets'),
|
207 |
+
'id' => $prefix . 'item_app_name',
|
208 |
+
'class' => 'soft_item_type',
|
209 |
+
'type' => 'text',
|
210 |
+
),
|
211 |
+
array(
|
212 |
+
'name' => __('Video Title','rich-snippets'),
|
213 |
+
'desc' => __('Enter the title for this video','rich-snippets'),
|
214 |
+
'id' => $prefix . 'item_video_title',
|
215 |
+
'class' => 'video_item_type',
|
216 |
+
'type' => 'text',
|
217 |
+
),
|
218 |
+
array(
|
219 |
+
'name' => __('Video Description','rich-snippets'),
|
220 |
+
'desc' => __('Enter the brief description for this video','rich-snippets'),
|
221 |
+
'id' => $prefix . 'item_video_desc',
|
222 |
+
'class' => 'video_item_type',
|
223 |
+
'type' => 'textarea_small',
|
224 |
+
),
|
225 |
+
array(
|
226 |
+
'name' => __('Video Thumbnail','rich-snippets'),
|
227 |
+
'desc' => __('Upload or select video thumbnail from gallery. Medium size is recommended (300px X 300px)','rich-snippets'),
|
228 |
+
'id' => $prefix . 'item_video_thumb',
|
229 |
+
'class' => 'video_item_type',
|
230 |
+
'type' => 'file',
|
231 |
+
),
|
232 |
+
array(
|
233 |
+
'name' => __('Upload Date','rich-snippets'),
|
234 |
+
'desc' => __('Provide the date when the video is uploaded','rich-snippets'),
|
235 |
+
'id' => $prefix . 'item_video_date',
|
236 |
+
'class' => 'video_item_type',
|
237 |
+
'type' => 'text_date',
|
238 |
+
),
|
239 |
array(
|
240 |
'name' => __('Your Rating','rich-snippets'),
|
241 |
'desc' => __(' Rate this item (1-5)','rich-snippets'),
|
readme.txt
CHANGED
@@ -3,8 +3,8 @@ Contributors: brainstormforce
|
|
3 |
Donate link: https://www.paypal.me/BrainstormForce
|
4 |
Tags: schema markup, structured data, rich snippets, schema.org, Microdata, schema
|
5 |
Requires at least: 3.7
|
6 |
-
Tested up to: 5.
|
7 |
-
Stable tag: 1.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
Boost CTR. Improve SEO & Rankings. Supports most of the content type. Works perfectly with Google, Bing, Yahoo & Facebook.
|
@@ -80,6 +80,10 @@ Review, Event, People, Product, Recipe, Software Application, Video, Articles et
|
|
80 |
|
81 |
== Changelog ==
|
82 |
|
|
|
|
|
|
|
|
|
83 |
= 1.5.6 =
|
84 |
- Improvement: Updated plugin name - `All In One Schema Rich Snippets` to `Schema - All In One Schema Rich Snippets`.
|
85 |
- Improvement: Updated product availability strings according to the Google requirement.
|
3 |
Donate link: https://www.paypal.me/BrainstormForce
|
4 |
Tags: schema markup, structured data, rich snippets, schema.org, Microdata, schema
|
5 |
Requires at least: 3.7
|
6 |
+
Tested up to: 5.3
|
7 |
+
Stable tag: 1.6.0
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
Boost CTR. Improve SEO & Rankings. Supports most of the content type. Works perfectly with Google, Bing, Yahoo & Facebook.
|
80 |
|
81 |
== Changelog ==
|
82 |
|
83 |
+
= 1.6.0 =
|
84 |
+
- New: Added ItemReviewed types in Review schema.
|
85 |
+
- Fix: error "Thing is not a known valid target type for the item reviewed the property" in the review schema.
|
86 |
+
|
87 |
= 1.5.6 =
|
88 |
- Improvement: Updated plugin name - `All In One Schema Rich Snippets` to `Schema - All In One Schema Rich Snippets`.
|
89 |
- Improvement: Updated product availability strings according to the Google requirement.
|