{"id":340444,"date":"2026-08-17T11:03:47","date_gmt":"2026-08-17T11:03:47","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/anni-marketing\/"},"modified":"2026-08-17T11:03:21","modified_gmt":"2026-08-17T11:03:21","slug":"anni-marketing","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/anni-marketing\/","author":23532573,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.4","stable_tag":"1.1.4","tested":"7.0.4","requires":"5.9","requires_php":"7.4","requires_plugins":null,"header_name":"Anni Marketing","header_author":"Anni Marketing","header_description":"Verbindet deine Website mit Anni (anni-marketing.ch): Statistik-Messcode und Status-Kanal. Keine Daten an Dritte, kein Tracking durch das Plugin selbst.","assets_banners_color":"","last_updated":"2026-08-17 11:03:21","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/anni-marketing.ch","header_author_uri":"https:\/\/digitalerakete.ch","rating":0,"author_block_rating":0,"active_installs":0,"downloads":38,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.4":{"tag":"1.1.4","author":"annimarketing","date":"2026-08-17 11:03:21"}},"upgrade_notice":[],"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.4"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[232,1005,597,127115,34283],"plugin_category":[36],"plugin_contributors":[276092],"plugin_business_model":[],"class_list":["post-340444","plugin","type-plugin","status-publish","hentry","plugin_tags-analytics","plugin_tags-google-analytics","plugin_tags-integration","plugin_tags-search-console","plugin_tags-site-verification","plugin_category-analytics","plugin_contributors-annimarketing","plugin_committers-annimarketing"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/anni-marketing.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Anni is a marketing assistant for small businesses in Switzerland (anni-marketing.ch). This companion plugin lets Anni finish your Google setup automatically after you connect your WordPress site:<\/p>\n\n<ul>\n<li>Outputs the <strong>Google Analytics 4<\/strong> tag (gtag.js) in your site's head \u2014 only if you (or Anni, with your permission) configure a measurement ID.<\/li>\n<li>Outputs the <strong>Google Search Console<\/strong> site-verification meta tag \u2014 only if a verification token is configured.<\/li>\n<li>Provides a small authenticated REST endpoint (<code>anni\/v1<\/code>) so the Anni app can read plugin status and set the two values above. All endpoints require the <code>manage_options<\/code> capability (administrators). Requests are authenticated with WordPress Application Passwords.<\/li>\n<\/ul>\n\n<p>The plugin itself does <strong>not<\/strong> track visitors, does not send data anywhere, and stores only two options (<code>anni_ga4_id<\/code>, <code>anni_gsc_verification<\/code>). The Google Analytics tag is only loaded if a measurement ID has been explicitly configured; in that case Google's terms for Analytics apply.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects your site to the Anni marketing platform (https:\/\/anni-marketing.ch), operated by\ndigitale rakete GmbH (https:\/\/digitalerakete.ch), so that Anni can complete your Google setup for you.<\/p>\n\n<p>What the plugin itself sends: nothing. The plugin does not initiate any outbound request. It only\n<em>receives<\/em> authenticated REST requests from the Anni app and stores\/prints two values on your site.<\/p>\n\n<p>When your site is contacted: only after you connect your website inside your own Anni account and\ncreate a WordPress Application Password for it. The Anni app then calls the endpoints below using\nthat password:<\/p>\n\n<ul>\n<li><code>GET \/wp-json\/anni\/v1\/status<\/code> \u2014 reads whether the plugin is active and which values are set\n(requires the <code>manage_options<\/code> capability).<\/li>\n<li><code>POST \/wp-json\/anni\/v1\/ga4<\/code> \u2014 stores your Google Analytics 4 measurement ID (requires <code>manage_options<\/code>).<\/li>\n<li><code>POST \/wp-json\/anni\/v1\/gsc<\/code> \u2014 stores your Google Search Console verification token (requires <code>manage_options<\/code>).<\/li>\n<\/ul>\n\n<p>Data involved: your GA4 measurement ID and your Search Console verification token. No visitor data,\nno personal data and no site content is transmitted by this plugin.<\/p>\n\n<p>Google Analytics: if \u2014 and only if \u2014 a measurement ID is configured, the plugin prints Google's\nstandard gtag.js snippet, which loads https:\/\/www.googletagmanager.com\/gtag\/js in visitors' browsers.\nThis is Google's service, used under your own Google Analytics property. Google's terms and privacy\npolicy apply: https:\/\/policies.google.com\/terms and https:\/\/policies.google.com\/privacy<\/p>\n\n<p>Anni platform terms and privacy policy: https:\/\/anni-marketing.ch\/nutzungsbedingungen and\nhttps:\/\/anni-marketing.ch\/datenschutz<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate the plugin.<\/li>\n<li>Connect your website in your Anni account (anni-marketing.ch) \u2014 Anni configures statistics and Search Console automatically.<\/li>\n<li>Alternatively, set the options manually via WP-CLI or the REST endpoint.<\/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. It only prints the Google Analytics tag if you configure a measurement ID. Without configuration it outputs nothing.<\/p><\/dd>\n<dt id=\"who%20can%20change%20the%20settings%3F\"><h3>Who can change the settings?<\/h3><\/dt>\n<dd><p>Only authenticated WordPress administrators (<code>manage_options<\/code>), typically via an Application Password issued by you. All three endpoints require this \u2014 including reading the plugin status.<\/p><\/dd>\n<dt id=\"does%20it%20work%20without%20an%20anni%20account%3F\"><h3>Does it work without an Anni account?<\/h3><\/dt>\n<dd><p>Yes \u2014 you can set the GA4 ID and the Search Console token yourself; the plugin is a minimal, dependency-free head-injector.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.4<\/h4>\n\n<ul>\n<li>Author URI auf https:\/\/digitalerakete.ch umgestellt (die alte Adresse hatte kein\ngueltiges Zertifikat und wurde vom Review geruegt).<\/li>\n<li>Firmenname in readme.txt an das Impressum angeglichen: digitale rakete GmbH.<\/li>\n<\/ul>\n\n<h4>1.1.3<\/h4>\n\n<ul>\n<li>Tightened the <code>\/status<\/code> REST endpoint to require <code>manage_options<\/code> (was <code>edit_posts<\/code>), matching the other two endpoints and this readme's own description.<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Added the required \"External services\" documentation.<\/li>\n<li>Corrected the documented capabilities to match the code (status: edit_posts, writes: manage_options).<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Search Console verification meta support (<code>anni\/v1\/gsc<\/code>).<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release: GA4 tag output + status endpoint.<\/li>\n<\/ul>","raw_excerpt":"Connects your site to Anni (anni-marketing.ch): adds your own GA4 tag and Search Console verification. No tracking by the plugin itself.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/340444","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=340444"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/annimarketing"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=340444"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=340444"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=340444"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=340444"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=340444"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=340444"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}