{"id":295231,"date":"2026-05-14T11:38:31","date_gmt":"2026-05-14T11:38:31","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/grandranker\/"},"modified":"2026-07-07T20:06:55","modified_gmt":"2026-07-07T20:06:55","slug":"grandranker","status":"publish","type":"plugin","link":"https:\/\/vec.wordpress.org\/plugins\/grandranker\/","author":23473238,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.5.3","stable_tag":"1.5.3","tested":"6.8.5","requires":"5.6","requires_php":"7.4","requires_plugins":null,"header_name":"Grandranker","header_author":"Grandranker","header_description":"Sync AI-generated articles and inject schema markup from Grandranker.","assets_banners_color":"","last_updated":"2026-07-07 20:06:55","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/grandranker.com","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":10,"downloads":324,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"grandranker","date":"2026-05-14 11:38:21"},"1.0.1":{"tag":"1.0.1","author":"grandranker","date":"2026-05-14 12:35:05"},"1.0.2":{"tag":"1.0.2","author":"grandranker","date":"2026-05-14 14:05:46"},"1.1.0":{"tag":"1.1.0","author":"grandranker","date":"2026-05-19 10:31:01"},"1.5.2":{"tag":"1.5.2","author":"grandranker","date":"2026-06-28 11:40:33"},"1.5.3":{"tag":"1.5.3","author":"grandranker","date":"2026-07-07 20:06:55"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3531906,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3531906,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1","1.0.2","1.1.0","1.5.2","1.5.3"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[2353,5936,529,7143,186],"plugin_category":[55],"plugin_contributors":[262897],"plugin_business_model":[],"class_list":["post-295231","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-articles","plugin_tags-content","plugin_tags-publishing","plugin_tags-seo","plugin_category-seo-and-marketing","plugin_contributors-grandranker","plugin_committers-grandranker"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/grandranker\/assets\/icon-128x128.png?rev=3531906","icon_2x":"https:\/\/ps.w.org\/grandranker\/assets\/icon-256x256.png?rev=3531906","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><a href=\"https:\/\/grandranker.com\">Grandranker<\/a> is an AI-powered SEO platform that researches your niche, generates high-quality articles optimized for both traditional search engines and AI search (Google AI Overviews, ChatGPT, Perplexity, Claude, Gemini), and publishes them directly to your WordPress site.<\/p>\n\n<p>This plugin connects your WordPress site to Grandranker so articles flow straight from the platform into your blog \u2014 no copy-pasting, no manual formatting.<\/p>\n\n<p><strong>What Grandranker does for you:<\/strong><\/p>\n\n<ul>\n<li>Researches keywords and competitors in your niche<\/li>\n<li>Generates long-form, SEO-optimized articles with structured data (JSON-LD schema)<\/li>\n<li>Tracks your visibility across Google and AI search engines<\/li>\n<li>Publishes and updates articles on your WordPress site automatically<\/li>\n<\/ul>\n\n<p><strong>How the plugin works:<\/strong><\/p>\n\n<ol>\n<li>Install and activate the plugin.<\/li>\n<li>Enter your Grandranker API token in <strong>Grandranker<\/strong> settings.<\/li>\n<li>Click <strong>Save &amp; Connect<\/strong>.<\/li>\n<li>Articles published in Grandranker appear on your WordPress site automatically \u2014 with content, featured images, categories, meta descriptions, and structured data all handled for you.<\/li>\n<\/ol>\n\n<p><strong>Plugin features:<\/strong><\/p>\n\n<ul>\n<li>Secure HMAC-SHA256 signature verification on every request<\/li>\n<li>Creates and updates WordPress posts with title, slug, content, excerpt, and featured image<\/li>\n<li>Injects JSON-LD structured data (schema markup) into page head for SEO<\/li>\n<li>Sets Yoast SEO meta description automatically<\/li>\n<li>Unpublish endpoint to remove articles remotely<\/li>\n<li>Ping endpoint for connectivity checks<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>grandranker<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory, or install the plugin through the WordPress plugins screen.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> screen in WordPress.<\/li>\n<li>Go to <strong>Settings \u2192 Grandranker<\/strong>.<\/li>\n<li>Enter your API token and domain ID from your Grandranker dashboard.<\/li>\n<li>Click <strong>Save &amp; Connect<\/strong>.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"where%20do%20i%20find%20my%20api%20token%20and%20domain%20id%3F\"><h3>Where do I find my API token and domain ID?<\/h3><\/dt>\n<dd><p>Log in to <a href=\"https:\/\/app.grandranker.com\">Grandranker<\/a>, go to your domain settings, and navigate to the Integrations section. Your API token and domain ID are displayed there.<\/p><\/dd>\n<dt id=\"is%20the%20connection%20secure%3F\"><h3>Is the connection secure?<\/h3><\/dt>\n<dd><p>Yes. All article pushes are signed with HMAC-SHA256. The signing secret is exchanged during the initial connection and never transmitted again. Every incoming request is verified before any content is created.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20i%20publish%20an%20article%20in%20grandranker%3F\"><h3>What happens when I publish an article in Grandranker?<\/h3><\/dt>\n<dd><p>The article is sent to your WordPress site via a signed REST API call. The plugin creates a new WordPress post with the title, slug, HTML content, excerpt, meta description, featured image, and JSON-LD structured data. Re-publishing the same article updates the existing post.<\/p><\/dd>\n<dt id=\"can%20i%20unpublish%20articles%20from%20grandranker%3F\"><h3>Can I unpublish articles from Grandranker?<\/h3><\/dt>\n<dd><p>Yes. Grandranker can send a delete request to move the WordPress post to the trash.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.5.3<\/h4>\n\n<ul>\n<li>Fix corrupted JSON-LD schema: WordPress stripped backslashes on save, breaking escaped quotes and unicode characters (e.g. German umlauts) and producing invalid JSON in the page head<\/li>\n<li>Skip outputting stored schema that no longer parses as valid JSON, so pages published with older versions stop failing schema validation after updating<\/li>\n<\/ul>\n\n<h4>1.5.2<\/h4>\n\n<ul>\n<li>Set the SEO plugin meta title on publish (Yoast \/ Rank Math \/ AIOSEO) so the SEO title is populated instead of empty<\/li>\n<\/ul>\n\n<h4>1.5.1<\/h4>\n\n<ul>\n<li>Set the SEO plugin focus keyword on publish (Rank Math \/ Yoast) so keyword analysis scores correctly instead of showing an empty Focus Keyword<\/li>\n<\/ul>\n\n<h4>1.3.1<\/h4>\n\n<ul>\n<li>Strip embedded JSON-LD schema from post content and inject via wp_head instead<\/li>\n<li>Update existing posts on re-publish instead of skipping<\/li>\n<li>Rename plugin from \"Grandranker Publisher\" to \"Grandranker\"<\/li>\n<\/ul>\n\n<h4>1.3.0<\/h4>\n\n<ul>\n<li>Map article category to WordPress category on publish<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Secure HMAC-signed article publishing endpoint<\/li>\n<li>Automatic featured image attachment<\/li>\n<li>Yoast SEO meta description support<\/li>\n<li>Admin settings page for connection management<\/li>\n<li>Ping endpoint for connectivity verification<\/li>\n<\/ul>","raw_excerpt":"Automatically publish and update SEO-optimized articles from Grandranker \u2014 the AI content platform that helps you rank higher on Google and AI search  &hellip;","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/295231","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=295231"}],"author":[{"embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/grandranker"}],"wp:attachment":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=295231"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=295231"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=295231"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=295231"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=295231"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=295231"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}