{"id":308069,"date":"2026-05-05T21:36:38","date_gmt":"2026-05-05T21:36:38","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/decaroy-site-helper\/"},"modified":"2026-05-05T21:36:04","modified_gmt":"2026-05-05T21:36:04","slug":"decaroy-site-helper","status":"publish","type":"plugin","link":"https:\/\/ug.wordpress.org\/plugins\/decaroy-site-helper\/","author":23492787,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.2","stable_tag":"1.0.2","tested":"6.9.4","requires":"5.5","requires_php":"7.4","requires_plugins":null,"header_name":"DecaRoy Site Helper","header_author":"DecaRoy","header_description":"Provides a small REST API endpoint to manage custom &lt;head&gt; meta tags (Google Site Verification and similar). Useful for programmatic site verification by automation tools.","assets_banners_color":"","last_updated":"2026-05-05 21:36:04","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/decaroy.com\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":47,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.2":{"tag":"1.0.2","author":"decaraoy","date":"2026-05-05 21:36:04"}},"upgrade_notice":{"1.0.2":"<p>Documentation fix (Contributors username). No code changes.<\/p>","1.0.1":"<p>Removed unused Plugin URI. No code changes.<\/p>","1.0.0":"<p>First public release.<\/p>"},"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.2"],"block_files":[],"assets_screenshots":[],"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[569,33232,6489,23853],"plugin_category":[],"plugin_contributors":[261966],"plugin_business_model":[],"class_list":["post-308069","plugin","type-plugin","status-publish","hentry","plugin_tags-automation","plugin_tags-google-site-verification","plugin_tags-meta-tag","plugin_tags-rest-api","plugin_contributors-decaraoy","plugin_committers-decaraoy"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/decaroy-site-helper.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>DecaRoy Site Helper is a minimal plugin that adds a single REST API\nendpoint to read, write, and delete a Google Site Verification meta tag\nthat is then injected into the document &lt;head&gt; on every page.<\/p>\n\n<p>The plugin is intended for sites managed programmatically by automation\ntools that need to verify domain ownership in Google Search Console\nwithout giving the automation tool FTP or filesystem access.<\/p>\n\n<h4>Features<\/h4>\n\n<ul>\n<li>Single REST endpoint at <code>\/wp-json\/decaroy\/v1\/head-meta<\/code><\/li>\n<li>GET \u2014 read current configuration<\/li>\n<li>POST \u2014 set the Google Site Verification token (validated against\nGoogle's expected format)<\/li>\n<li>DELETE \u2014 remove the configured token<\/li>\n<li>Token is rendered as <code>&amp;lt;meta name=\"google-site-verification\" ...&amp;gt;<\/code>\nin the &lt;head&gt; via <code>wp_head<\/code> action<\/li>\n<li>No tracking, no phone-home, no remote calls<\/li>\n<li>No database tables, no cron jobs<\/li>\n<\/ul>\n\n<h4>How it works<\/h4>\n\n<p>When a token is set via POST, it is stored in a single WordPress option\n(<code>decaroy_gsc_verification_token<\/code>). On every page render, the plugin\nhooks into <code>wp_head<\/code> and emits a meta tag with the token. Google can\nthen read that meta tag during the verification step, after which the\ndomain becomes available to the verifying account in Search Console.<\/p>\n\n<p>Authentication uses standard WordPress capabilities: the requesting\nuser must have <code>manage_options<\/code> (typically administrators). Pair with\nWordPress Application Passwords for headless authentication.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code> or install\ndirectly through the WordPress plugins screen.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> screen in WordPress.<\/li>\n<li><p>Use the REST endpoint to set a token:<\/p>\n\n<p>POST \/wp-json\/decaroy\/v1\/head-meta\n   Content-Type: application\/json\n   Body: {\"gsc_verification_token\": \"abcd...your-token...\"}<\/p><\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20track%20my%20visitors%3F\"><h3>Does this plugin track my visitors?<\/h3><\/dt>\n<dd><p>No. The plugin makes no remote calls and stores no data beyond the\nsingle Google Site Verification token in WordPress options.<\/p><\/dd>\n<dt id=\"is%20the%20meta%20tag%20visible%20to%20anyone%3F\"><h3>Is the meta tag visible to anyone?<\/h3><\/dt>\n<dd><p>Yes. By design, Google Site Verification meta tags are visible in the\nHTML source \u2014 that is how Google verifies them. The token itself is\nnot sensitive: knowing it does not grant any access.<\/p><\/dd>\n<dt id=\"what%20capability%20does%20the%20rest%20endpoint%20require%3F\"><h3>What capability does the REST endpoint require?<\/h3><\/dt>\n<dd><p>manage_options. Only administrators can read or write the token.<\/p><\/dd>\n<dt id=\"can%20i%20use%20this%20with%20other%20meta%20tags%20besides%20google%20site%20verification%3F\"><h3>Can I use this with other meta tags besides Google Site Verification?<\/h3><\/dt>\n<dd><p>Currently the plugin handles only the <code>google-site-verification<\/code> meta\ntag. Future versions may add support for additional meta tags.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Corrected Contributors username in readme to match the actual\nWordPress.org account that owns this plugin. No code changes.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Removed Plugin URI (the plugin does not have a dedicated landing page).\nAuthor URI points to the author's site.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>REST endpoint to manage Google Site Verification meta tag.<\/li>\n<li><code>wp_head<\/code> injection of the configured tag.<\/li>\n<\/ul>","raw_excerpt":"Tiny REST API endpoint to manage custom &lt;head&gt; meta tags (e.g. Google Site Verification) programmatically.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/308069","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=308069"}],"author":[{"embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/decaraoy"}],"wp:attachment":[{"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=308069"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=308069"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=308069"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=308069"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=308069"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=308069"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}