Version Description
- Fix: AMP markup when checking if variable hold an array by using is_array function.
- Fix: Use get_option instead of deprecated function get_settings in AMP.
- Fix: Put the Author gravatar size variable in an array of args.
- Fix: Error loading gravatar happen when email not associated with an image.
- Fix: Added check for post ID before outputting markup on singular pages.
- Fix: Add missing full URL to Twitter ID in author markup.
- Fix: Post meta class, use break instead of continue in switch. s* Update: Move VC integration to deprecated functions.
- Update: Move Divi integration to deprecated functions.
- Update: Replaces Cheating Huh? with You dont have permission to do this to align the error message with recent WP core changes. (core.trac.wordpress.org/ticket/38332)
- Update: Pumped tested WordPress version to 5.0.2 release.
- Update: Updated the readme.txt file.
Download this release
Release Info
Developer | hishaman |
Plugin | Schema |
Version | 1.7.3 |
Comparing to | |
See all releases |
Code changes from version 1.7.2 to 1.7.3
- README.md +3 -2
- includes/admin/meta/class-meta.php +2 -1
- includes/admin/meta/css/chosen-sprite.png +0 -0
- includes/admin/meta/css/chosen-sprite@2x.png +0 -0
- includes/admin/meta/js/scripts.js +1 -1
- includes/deprecated-functions.php +42 -0
- includes/extensions/author.php +15 -5
- includes/integrations/amp.php +16 -14
- includes/integrations/divi.php +0 -31
- includes/integrations/thirstyaffiliates.php +1 -1
- includes/integrations/visual-composer.php +0 -33
- includes/integrations/yoast-seo.php +1 -1
- includes/json/schema-output.php +3 -4
- readme.txt +27 -5
- schema.php +4 -6
README.md
CHANGED
@@ -68,7 +68,8 @@ Schema markup is code (semantic vocabulary) that you put on your website to help
|
|
68 |
Schema plugin integrates, and play nicely with:
|
69 |
|
70 |
* Yoast SEO
|
71 |
-
* AMP plugin
|
|
|
72 |
* WPRichSnippets
|
73 |
* The SEO Framework
|
74 |
* Visual Composer
|
@@ -82,4 +83,4 @@ Schema plugin integrates, and play nicely with:
|
|
82 |
* Thesis 2.x
|
83 |
* Divi
|
84 |
|
85 |
-
More information and documentation can be found at [scema.press](https://schema.press/).
|
68 |
Schema plugin integrates, and play nicely with:
|
69 |
|
70 |
* Yoast SEO
|
71 |
+
* AMP plugin (Automattic's Accelerated Mobile Pages)
|
72 |
+
* Accelerated Mobile Pages - AMP for WP
|
73 |
* WPRichSnippets
|
74 |
* The SEO Framework
|
75 |
* Visual Composer
|
83 |
* Thesis 2.x
|
84 |
* Divi
|
85 |
|
86 |
+
More information and documentation can be found at [scema.press](https://schema.press/docs/).
|
includes/admin/meta/class-meta.php
CHANGED
@@ -77,7 +77,8 @@ function schema_wp_custom_meta_box_field( $field, $meta = null, $repeatable = nu
|
|
77 |
case 'tel':
|
78 |
case 'email':
|
79 |
default:
|
80 |
-
if ( is_array($meta) ) continue; // if $meta has an array, continue to the next case, @since 1.6.9.4
|
|
|
81 |
echo '<input type="' . $type . '" name="' . esc_attr( $name ) . '" id="' . esc_attr( $id ) . '" value="' . esc_attr( $meta ) . '" class="'.$size.'-text '.$class.'" size="30" placeholder="' . $placeholder . '" />
|
82 |
<br />' . $desc;
|
83 |
break;
|
77 |
case 'tel':
|
78 |
case 'email':
|
79 |
default:
|
80 |
+
//if ( is_array($meta) ) continue; // if $meta has an array, continue to the next case, @since 1.6.9.4
|
81 |
+
if ( is_array($meta) ) break; // if $meta has an array, take a break, @since 1.7.3
|
82 |
echo '<input type="' . $type . '" name="' . esc_attr( $name ) . '" id="' . esc_attr( $id ) . '" value="' . esc_attr( $meta ) . '" class="'.$size.'-text '.$class.'" size="30" placeholder="' . $placeholder . '" />
|
83 |
<br />' . $desc;
|
84 |
break;
|
includes/admin/meta/css/chosen-sprite.png
CHANGED
File without changes
|
includes/admin/meta/css/chosen-sprite@2x.png
CHANGED
File without changes
|
includes/admin/meta/js/scripts.js
CHANGED
@@ -3,7 +3,7 @@ jQuery(function($) {
|
|
3 |
// the upload image button, saves the id and outputs a preview of the image
|
4 |
var imageFrame;
|
5 |
|
6 |
-
$(document).on('click', '.meta_box_upload_image_button', function(
|
7 |
event.preventDefault();
|
8 |
|
9 |
var options, attachment;
|
3 |
// the upload image button, saves the id and outputs a preview of the image
|
4 |
var imageFrame;
|
5 |
|
6 |
+
$(document).on('click', '.meta_box_upload_image_button', function(event) {
|
7 |
event.preventDefault();
|
8 |
|
9 |
var options, attachment;
|
includes/deprecated-functions.php
CHANGED
@@ -39,3 +39,45 @@ function schema_wp_first_post_date( $format = 'Y-m-d' ) {
|
|
39 |
|
40 |
return $output;
|
41 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
|
40 |
return $output;
|
41 |
}
|
42 |
+
|
43 |
+
|
44 |
+
//add_filter( 'schema_wp_filter_content', 'remove_visual_composer_shortcodes' );
|
45 |
+
/**
|
46 |
+
* Remove VC shortcodes from content
|
47 |
+
*
|
48 |
+
* @since 1.5.9.3
|
49 |
+
* @return string
|
50 |
+
*/
|
51 |
+
function remove_visual_composer_shortcodes( $content ) {
|
52 |
+
|
53 |
+
global $post;
|
54 |
+
|
55 |
+
$vc_enabled = get_post_meta($post->ID, '_wpb_vc_js_status', true);
|
56 |
+
|
57 |
+
if ( isset($vc_enabled) && $vc_enabled == 'true') {
|
58 |
+
|
59 |
+
$content = preg_replace('/\[\/?vc_.*?\]/', '', $content);
|
60 |
+
}
|
61 |
+
|
62 |
+
return $content;
|
63 |
+
}
|
64 |
+
|
65 |
+
|
66 |
+
//add_filter( 'schema_wp_filter_content', 'schema_wp_remove_divi_shortcodes' );
|
67 |
+
/**
|
68 |
+
* Remove Divi shortcodes from content
|
69 |
+
*
|
70 |
+
* @since 1.5.9
|
71 |
+
* @return string
|
72 |
+
*/
|
73 |
+
function schema_wp_remove_divi_shortcodes( $content ) {
|
74 |
+
|
75 |
+
$my_theme = wp_get_theme();
|
76 |
+
|
77 |
+
if ( $my_theme == 'Divi') {
|
78 |
+
|
79 |
+
$content = preg_replace('/\[\/?et_pb.*?\]/', '', $content);
|
80 |
+
}
|
81 |
+
|
82 |
+
return $content;
|
83 |
+
}
|
includes/extensions/author.php
CHANGED
@@ -69,10 +69,17 @@ function schema_wp_get_author_array( $post_id = null ) {
|
|
69 |
$author['description'] = strip_tags( get_the_author_meta( 'description', $post_author->ID ) );
|
70 |
}
|
71 |
|
72 |
-
if ( schema_wp_validate_gravatar($email) ) {
|
73 |
// Default = 96px, since it is a squre image, width = height
|
74 |
-
$image_size = apply_filters( 'schema_wp_get_author_array_img_size', 96);
|
75 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
|
77 |
if ( $image_url ) {
|
78 |
$author['image'] = array (
|
@@ -99,6 +106,10 @@ function schema_wp_get_author_array( $post_id = null ) {
|
|
99 |
$tumblr = esc_attr( stripslashes( get_the_author_meta( 'tumblr', $post_author->ID ) ) );
|
100 |
$github = esc_attr( stripslashes( get_the_author_meta( 'github', $post_author->ID ) ) );
|
101 |
|
|
|
|
|
|
|
|
|
102 |
$sameAs_links = array( $website, $googleplus, $facebook, $twitter, $instagram, $youtube, $linkedin, $myspace, $pinterest, $soundcloud, $tumblr, $github);
|
103 |
|
104 |
$social = array();
|
@@ -115,7 +126,6 @@ function schema_wp_get_author_array( $post_id = null ) {
|
|
115 |
return apply_filters( 'schema_wp_author', $author );
|
116 |
}
|
117 |
|
118 |
-
|
119 |
/**
|
120 |
* Validate gravatar by email or id
|
121 |
*
|
@@ -130,7 +140,7 @@ function schema_wp_get_author_array( $post_id = null ) {
|
|
130 |
function schema_wp_validate_gravatar( $email ) {
|
131 |
|
132 |
$hashkey = md5(strtolower(trim($email)));
|
133 |
-
$uri = 'http://www.gravatar.com/avatar/' . $hashkey
|
134 |
$data = get_transient($hashkey);
|
135 |
|
136 |
if (false === $data) {
|
69 |
$author['description'] = strip_tags( get_the_author_meta( 'description', $post_author->ID ) );
|
70 |
}
|
71 |
|
72 |
+
if ( schema_wp_validate_gravatar( $email ) ) {
|
73 |
// Default = 96px, since it is a squre image, width = height
|
74 |
+
$image_size = apply_filters( 'schema_wp_get_author_array_img_size', 96 );
|
75 |
+
|
76 |
+
// Get an array of args
|
77 |
+
// @since 1.7.2
|
78 |
+
$args = array(
|
79 |
+
'size' => $image_size,
|
80 |
+
);
|
81 |
+
|
82 |
+
$image_url = get_avatar_url( $email, $args );
|
83 |
|
84 |
if ( $image_url ) {
|
85 |
$author['image'] = array (
|
106 |
$tumblr = esc_attr( stripslashes( get_the_author_meta( 'tumblr', $post_author->ID ) ) );
|
107 |
$github = esc_attr( stripslashes( get_the_author_meta( 'github', $post_author->ID ) ) );
|
108 |
|
109 |
+
// Add full URL to Twitter
|
110 |
+
// @since 1.7.3
|
111 |
+
if ( isset($twitter) ) $twitter = 'https://twitter.com/' . $twitter;
|
112 |
+
|
113 |
$sameAs_links = array( $website, $googleplus, $facebook, $twitter, $instagram, $youtube, $linkedin, $myspace, $pinterest, $soundcloud, $tumblr, $github);
|
114 |
|
115 |
$social = array();
|
126 |
return apply_filters( 'schema_wp_author', $author );
|
127 |
}
|
128 |
|
|
|
129 |
/**
|
130 |
* Validate gravatar by email or id
|
131 |
*
|
140 |
function schema_wp_validate_gravatar( $email ) {
|
141 |
|
142 |
$hashkey = md5(strtolower(trim($email)));
|
143 |
+
$uri = 'http://www.gravatar.com/avatar/' . $hashkey;
|
144 |
$data = get_transient($hashkey);
|
145 |
|
146 |
if (false === $data) {
|
includes/integrations/amp.php
CHANGED
@@ -10,7 +10,7 @@
|
|
10 |
// Exit if accessed directly
|
11 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
12 |
|
13 |
-
add_filter( 'amp_post_template_metadata', 'schema_wp_amp_modify_json_output',
|
14 |
/**
|
15 |
* Modify AMP json-ld output
|
16 |
*
|
@@ -19,29 +19,31 @@ add_filter( 'amp_post_template_metadata', 'schema_wp_amp_modify_json_output', 10
|
|
19 |
function schema_wp_amp_modify_json_output( $metadata, $post ) {
|
20 |
|
21 |
// Get AMP plugin settings
|
22 |
-
$options =
|
23 |
|
24 |
// Get schema markup json
|
25 |
$json = schema_wp_get_jsonld( $post->ID );
|
26 |
-
|
27 |
// Check if this is the About or Contact page
|
28 |
// If so, override the $json array
|
29 |
-
if (
|
|
|
|
|
30 |
|
31 |
-
|
32 |
-
|
33 |
|
34 |
-
|
35 |
|
36 |
-
|
37 |
-
|
38 |
|
39 |
-
|
40 |
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
}
|
45 |
|
46 |
// Return markup array
|
47 |
if ( ! empty($json) ) {
|
10 |
// Exit if accessed directly
|
11 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
12 |
|
13 |
+
add_filter( 'amp_post_template_metadata', 'schema_wp_amp_modify_json_output', 99, 2 );
|
14 |
/**
|
15 |
* Modify AMP json-ld output
|
16 |
*
|
19 |
function schema_wp_amp_modify_json_output( $metadata, $post ) {
|
20 |
|
21 |
// Get AMP plugin settings
|
22 |
+
$options = get_option('amp-options');
|
23 |
|
24 |
// Get schema markup json
|
25 |
$json = schema_wp_get_jsonld( $post->ID );
|
26 |
+
|
27 |
// Check if this is the About or Contact page
|
28 |
// If so, override the $json array
|
29 |
+
if ( is_array($options['supported_post_types']) ) {
|
30 |
+
|
31 |
+
if ( in_array("page", $options['supported_post_types']) ) {
|
32 |
|
33 |
+
$about_page_id = schema_wp_get_option( 'about_page' );
|
34 |
+
$contact_page_id = schema_wp_get_option( 'contact_page' );
|
35 |
|
36 |
+
if ( isset($about_page_id) && $post->ID == $about_page_id ) {
|
37 |
|
38 |
+
$json = schema_wp_get_page_about_json( 'AboutPage' );
|
39 |
+
}
|
40 |
|
41 |
+
if ( isset($contact_page_id) && $post->ID == $contact_page_id) {
|
42 |
|
43 |
+
$json = schema_wp_get_page_contact_json( 'ContactPage' );
|
44 |
+
}
|
45 |
+
} // end if
|
46 |
+
} // end if
|
47 |
|
48 |
// Return markup array
|
49 |
if ( ! empty($json) ) {
|
includes/integrations/divi.php
DELETED
@@ -1,31 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Divi Theme integration
|
4 |
-
*
|
5 |
-
*
|
6 |
-
* plugin url: http://elegantthemes.com/
|
7 |
-
* @since 1.5.9
|
8 |
-
*/
|
9 |
-
|
10 |
-
// Exit if accessed directly
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) exit;
|
12 |
-
|
13 |
-
|
14 |
-
add_filter( 'schema_wp_filter_content', 'remove_divi_shortcodes' );
|
15 |
-
/**
|
16 |
-
* Remove Divi shortcodes from content
|
17 |
-
*
|
18 |
-
* @since 1.5.9
|
19 |
-
* @return string
|
20 |
-
*/
|
21 |
-
function remove_divi_shortcodes( $content ) {
|
22 |
-
|
23 |
-
$my_theme = wp_get_theme();
|
24 |
-
|
25 |
-
if ( $my_theme == 'Divi') {
|
26 |
-
|
27 |
-
$content = preg_replace('/\[\/?et_pb.*?\]/', '', $content);
|
28 |
-
}
|
29 |
-
|
30 |
-
return $content;
|
31 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/integrations/thirstyaffiliates.php
CHANGED
@@ -21,7 +21,7 @@ add_action( 'schema_wp_post_types', 'schema_wp_thirstyaffiliates_remove_cpt' );
|
|
21 |
*/
|
22 |
function schema_wp_thirstyaffiliates_remove_cpt( $post_types ) {
|
23 |
|
24 |
-
if (!is_plugin_active('thirstyaffiliates/thirstyaffiliates.php'))
|
25 |
return $post_types;
|
26 |
|
27 |
unset($post_types['thirstylink']);
|
21 |
*/
|
22 |
function schema_wp_thirstyaffiliates_remove_cpt( $post_types ) {
|
23 |
|
24 |
+
if ( ! is_plugin_active('thirstyaffiliates/thirstyaffiliates.php') )
|
25 |
return $post_types;
|
26 |
|
27 |
unset($post_types['thirstylink']);
|
includes/integrations/visual-composer.php
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Visual Composer plugin integration
|
4 |
-
*
|
5 |
-
*
|
6 |
-
* plugin url: https://vc.wpbakery.com/
|
7 |
-
* @since 1.5.9.3
|
8 |
-
*/
|
9 |
-
|
10 |
-
// Exit if accessed directly
|
11 |
-
if ( ! defined( 'ABSPATH' ) ) exit;
|
12 |
-
|
13 |
-
|
14 |
-
add_filter( 'schema_wp_filter_content', 'remove_visual_composer_shortcodes' );
|
15 |
-
/**
|
16 |
-
* Remove VC shortcodes from content
|
17 |
-
*
|
18 |
-
* @since 1.5.9.3
|
19 |
-
* @return string
|
20 |
-
*/
|
21 |
-
function remove_visual_composer_shortcodes( $content ) {
|
22 |
-
|
23 |
-
global $post;
|
24 |
-
|
25 |
-
$vc_enabled = get_post_meta($post->ID, '_wpb_vc_js_status', true);
|
26 |
-
|
27 |
-
if ( isset($vc_enabled) && $vc_enabled == 'true') {
|
28 |
-
|
29 |
-
$content = preg_replace('/\[\/?vc_.*?\]/', '', $content);
|
30 |
-
}
|
31 |
-
|
32 |
-
return $content;
|
33 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/integrations/yoast-seo.php
CHANGED
@@ -41,7 +41,7 @@ function my_wpseo_breadcrumb_output( $output ) {
|
|
41 |
|
42 |
if ( $breadcrumbs_enable ) {
|
43 |
|
44 |
-
//
|
45 |
$output = str_replace('xmlns:v="http://rdf.data-vocabulary.org/#"', '', $output);
|
46 |
$output = str_replace('typeof="v:Breadcrumb"', '', $output);
|
47 |
$output = str_replace('rel="v:url"', '', $output);
|
41 |
|
42 |
if ( $breadcrumbs_enable ) {
|
43 |
|
44 |
+
// Clean Yoast SEO from RDF markups
|
45 |
$output = str_replace('xmlns:v="http://rdf.data-vocabulary.org/#"', '', $output);
|
46 |
$output = str_replace('typeof="v:Breadcrumb"', '', $output);
|
47 |
$output = str_replace('rel="v:url"', '', $output);
|
includes/json/schema-output.php
CHANGED
@@ -19,6 +19,9 @@ function schema_wp_output() {
|
|
19 |
|
20 |
global $post;
|
21 |
|
|
|
|
|
|
|
22 |
// do not run on front, home page, archive pages, search result pages, and 404 error pages
|
23 |
if ( is_archive() || is_home() || is_front_page() || is_search() || is_404() ) return;
|
24 |
|
@@ -178,10 +181,6 @@ function schema_wp_get_schema_json( $type ) {
|
|
178 |
|
179 |
$schema["url"] = $json['permalink'];
|
180 |
|
181 |
-
if ( ! empty( $json["author"] ) ) {
|
182 |
-
//$schema["author"] = $json['author'];
|
183 |
-
}
|
184 |
-
|
185 |
// get supported article types
|
186 |
$support_article_types = schema_wp_get_support_article_types();
|
187 |
|
19 |
|
20 |
global $post;
|
21 |
|
22 |
+
// @since 1.7.3
|
23 |
+
if ( ! isset($post->ID) ) return;
|
24 |
+
|
25 |
// do not run on front, home page, archive pages, search result pages, and 404 error pages
|
26 |
if ( is_archive() || is_home() || is_front_page() || is_search() || is_404() ) return;
|
27 |
|
181 |
|
182 |
$schema["url"] = $json['permalink'];
|
183 |
|
|
|
|
|
|
|
|
|
184 |
// get supported article types
|
185 |
$support_article_types = schema_wp_get_support_article_types();
|
186 |
|
readme.txt
CHANGED
@@ -3,9 +3,9 @@ Contributors: hishaman, schemapress
|
|
3 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=NGVUBT2QXN7YL
|
4 |
Tags: schema, schema.org, json, json-ld, google, seo, structured data, markup, search engine, search, rich snippets, breadcrumbs, social, post, page, plugin, wordpress, content, article, news, search results, site name, knowledge graph, social, social profiles, keywords, meta-tags, metadata, tags, categories, optimize, ranking, search engine optimization, search engines, serp, sitelinks, google sitelinks, sitelinks search box, google sitelinks search box, semantic, structured, canonical, custom post types, post type, title, terms, media, images, thumb, featured, url, video, video markup, video object, VideoObject, video schema, audio object, AudioObject, audio schema, audio, sameAs, about, contact, amp, mobile, taxonomy
|
5 |
Requires at least: 4.0
|
6 |
-
Tested up to:
|
7 |
Requires PHP: 5.4
|
8 |
-
Stable tag: 1.7.
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
@@ -76,10 +76,11 @@ Schema markup is code (semantic vocabulary) that you put on your website to help
|
|
76 |
|
77 |
**Supported Plugins**
|
78 |
|
79 |
-
Schema plugin integrates
|
80 |
|
81 |
* Yoast SEO
|
82 |
-
* AMP plugin
|
|
|
83 |
* WPRichSnippets
|
84 |
* The SEO Framework
|
85 |
* Visual Composer
|
@@ -156,10 +157,25 @@ Yes, Schema plugin will detect AMP plugin and output a more complete and valid s
|
|
156 |
|
157 |
== Changelog ==
|
158 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
159 |
= 1.7.2 =
|
160 |
* Fix: Shortcades was not excluded from description.
|
161 |
* Fix: Set publicly_queryable to false in Schema post type to disable creation of single pages.
|
162 |
* Fix: Removed a notice in AMP pages, and fixed markup output.
|
|
|
163 |
* Enhancement: Improved performance of markup output on AMP pages.
|
164 |
* Updated the readme.txt file, and pumped the tested WP version to 4.9.8
|
165 |
|
@@ -647,6 +663,9 @@ Yes, Schema plugin will detect AMP plugin and output a more complete and valid s
|
|
647 |
|
648 |
== Upgrade Notice ==
|
649 |
|
|
|
|
|
|
|
650 |
= 1.7.1 =
|
651 |
In this release, several bug fixes and enhancements has been introduced. Please, update the plugin on your website now to get these fixes and enhancements.
|
652 |
|
@@ -774,4 +793,7 @@ Fixed a fatal error on plugin activation, added VideoObject support and more awe
|
|
774 |
Fixed an important bug within the plugin, Schema post was saved as draft and no way to set is as publish.Please, update the plugin on your website now to get this fix and other enhancements.
|
775 |
|
776 |
= 1.4.6 =
|
777 |
-
Added ability to set Featured image automatically when creating or editing a post. Added back settings Content tab. Fixed admin notices and bugs. A few minor code/ documentation tweaks, updated readme.txt file with new details. Please, update the plugin on your website now to get bug fixes, enhancements and new cool features in this release.
|
|
|
|
|
|
3 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=NGVUBT2QXN7YL
|
4 |
Tags: schema, schema.org, json, json-ld, google, seo, structured data, markup, search engine, search, rich snippets, breadcrumbs, social, post, page, plugin, wordpress, content, article, news, search results, site name, knowledge graph, social, social profiles, keywords, meta-tags, metadata, tags, categories, optimize, ranking, search engine optimization, search engines, serp, sitelinks, google sitelinks, sitelinks search box, google sitelinks search box, semantic, structured, canonical, custom post types, post type, title, terms, media, images, thumb, featured, url, video, video markup, video object, VideoObject, video schema, audio object, AudioObject, audio schema, audio, sameAs, about, contact, amp, mobile, taxonomy
|
5 |
Requires at least: 4.0
|
6 |
+
Tested up to: 5.0.2
|
7 |
Requires PHP: 5.4
|
8 |
+
Stable tag: 1.7.3
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
76 |
|
77 |
**Supported Plugins**
|
78 |
|
79 |
+
Schema plugin integrates and/or play nicely with (not necessarily a full integration):
|
80 |
|
81 |
* Yoast SEO
|
82 |
+
* AMP plugin (Automattic's Accelerated Mobile Pages)
|
83 |
+
* Accelerated Mobile Pages - AMP for WP
|
84 |
* WPRichSnippets
|
85 |
* The SEO Framework
|
86 |
* Visual Composer
|
157 |
|
158 |
== Changelog ==
|
159 |
|
160 |
+
= 1.7.3 =
|
161 |
+
* Fix: AMP markup when checking if variable hold an array by using is_array function.
|
162 |
+
* Fix: Use get_option instead of deprecated function get_settings in AMP.
|
163 |
+
* Fix: Put the Author gravatar size variable in an array of args.
|
164 |
+
* Fix: Error loading gravatar happen when email not associated with an image.
|
165 |
+
* Fix: Added check for post ID before outputting markup on singular pages.
|
166 |
+
* Fix: Add missing full URL to Twitter ID in author markup.
|
167 |
+
* Fix: Post meta class, use break instead of continue in switch.
|
168 |
+
s* Update: Move VC integration to deprecated functions.
|
169 |
+
* Update: Move Divi integration to deprecated functions.
|
170 |
+
* Update: Replaces “Cheating Huh?”” with “You don’t have permission to do this” to align the error message with recent WP core changes. (core.trac.wordpress.org/ticket/38332)
|
171 |
+
* Update: Pumped tested WordPress version to 5.0.2 release.
|
172 |
+
* Update: Updated the readme.txt file.
|
173 |
+
|
174 |
= 1.7.2 =
|
175 |
* Fix: Shortcades was not excluded from description.
|
176 |
* Fix: Set publicly_queryable to false in Schema post type to disable creation of single pages.
|
177 |
* Fix: Removed a notice in AMP pages, and fixed markup output.
|
178 |
+
* Fix: Media uploader was not working properly in post meta.
|
179 |
* Enhancement: Improved performance of markup output on AMP pages.
|
180 |
* Updated the readme.txt file, and pumped the tested WP version to 4.9.8
|
181 |
|
663 |
|
664 |
== Upgrade Notice ==
|
665 |
|
666 |
+
= 1.7.3 =
|
667 |
+
In this release, AMP and fixes and enhancements has been introduced. Please, update the plugin on your website now to get these fixes and enhancements.
|
668 |
+
|
669 |
= 1.7.1 =
|
670 |
In this release, several bug fixes and enhancements has been introduced. Please, update the plugin on your website now to get these fixes and enhancements.
|
671 |
|
793 |
Fixed an important bug within the plugin, Schema post was saved as draft and no way to set is as publish.Please, update the plugin on your website now to get this fix and other enhancements.
|
794 |
|
795 |
= 1.4.6 =
|
796 |
+
Added ability to set Featured image automatically when creating or editing a post. Added back settings Content tab. Fixed admin notices and bugs. A few minor code/ documentation tweaks, updated readme.txt file with new details. Please, update the plugin on your website now to get bug fixes, enhancements and new cool features in this release.
|
797 |
+
|
798 |
+
= 1.7.3 =
|
799 |
+
Added several bug fixes and enhancements. Please, update the plugin on your website now to get bug fixes.
|
schema.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* Description: The next generation of Structured Data.
|
6 |
* Author: Hesham
|
7 |
* Author URI: http://zebida.com
|
8 |
-
* Version: 1.7.
|
9 |
* Text Domain: schema-wp
|
10 |
* Domain Path: languages
|
11 |
*
|
@@ -51,7 +51,7 @@ final class Schema_WP {
|
|
51 |
*
|
52 |
* @since 1.0
|
53 |
*/
|
54 |
-
private $version = '1.7.
|
55 |
|
56 |
/**
|
57 |
* The settings instance variable
|
@@ -117,7 +117,7 @@ final class Schema_WP {
|
|
117 |
*/
|
118 |
public function __clone() {
|
119 |
// Cloning instances of the class is forbidden
|
120 |
-
_doing_it_wrong( __FUNCTION__, __( '
|
121 |
}
|
122 |
|
123 |
/**
|
@@ -129,7 +129,7 @@ final class Schema_WP {
|
|
129 |
*/
|
130 |
public function __wakeup() {
|
131 |
// Unserializing instances of the class is forbidden
|
132 |
-
_doing_it_wrong( __FUNCTION__, __( '
|
133 |
}
|
134 |
|
135 |
/**
|
@@ -247,7 +247,6 @@ final class Schema_WP {
|
|
247 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/amp.php';
|
248 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/wp-rich-snippets.php';
|
249 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/seo-framework.php';
|
250 |
-
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/visual-composer.php';
|
251 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/thirstyaffiliates.php';
|
252 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/woocommerce.php';
|
253 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/edd.php';
|
@@ -255,7 +254,6 @@ final class Schema_WP {
|
|
255 |
// Theme Integrations
|
256 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/genesis.php';
|
257 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/thesis.php';
|
258 |
-
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/divi.php';
|
259 |
|
260 |
// Core Extensions
|
261 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/extensions/post-meta-generator.php';
|
5 |
* Description: The next generation of Structured Data.
|
6 |
* Author: Hesham
|
7 |
* Author URI: http://zebida.com
|
8 |
+
* Version: 1.7.3
|
9 |
* Text Domain: schema-wp
|
10 |
* Domain Path: languages
|
11 |
*
|
51 |
*
|
52 |
* @since 1.0
|
53 |
*/
|
54 |
+
private $version = '1.7.3';
|
55 |
|
56 |
/**
|
57 |
* The settings instance variable
|
117 |
*/
|
118 |
public function __clone() {
|
119 |
// Cloning instances of the class is forbidden
|
120 |
+
_doing_it_wrong( __FUNCTION__, __( 'You don’t have permission to do this', 'schema-wp' ), '1.0' );
|
121 |
}
|
122 |
|
123 |
/**
|
129 |
*/
|
130 |
public function __wakeup() {
|
131 |
// Unserializing instances of the class is forbidden
|
132 |
+
_doing_it_wrong( __FUNCTION__, __( 'You don’t have permission to do this', 'schema-wp' ), '1.0' );
|
133 |
}
|
134 |
|
135 |
/**
|
247 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/amp.php';
|
248 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/wp-rich-snippets.php';
|
249 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/seo-framework.php';
|
|
|
250 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/thirstyaffiliates.php';
|
251 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/woocommerce.php';
|
252 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/edd.php';
|
254 |
// Theme Integrations
|
255 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/genesis.php';
|
256 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/integrations/thesis.php';
|
|
|
257 |
|
258 |
// Core Extensions
|
259 |
require_once SCHEMAWP_PLUGIN_DIR . 'includes/extensions/post-meta-generator.php';
|