=== PUBVOICE - AI Audio Player Powered by Gemini ===
Contributors: medialeap
Tags: audio, text-to-speech, voice, amazon, affiliate
Requires at least: 6.3
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 1.3.2
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Convert articles into Gemini-powered AI audio with text-to-speech. Gutenberg block, shortcode, auto embed, plus Amazon Associate monetization.

== Description ==

🎧 **[Try the live demo →](https://pub-voice.com/en/beta)**

PUBVOICE is a Gemini-powered text-to-speech (TTS) service that converts your WordPress articles into high-quality audio — automatically. Powered by Google Gemini, PUBVOICE turns your blog posts into natural, context-aware AI audio. Add a "listen path" to your blog so readers can consume your content during commutes, workouts, or any screen-free moment.

✨ **Free plan available** — start with no credit card required.

= 📻 Why Audio? =

The podcast market continues to grow year after year. According to Edison Research, 47% of Americans aged 12+ listen to podcasts monthly. In Japan, audiobook usage is growing ~20% year-over-year (Yano Research Institute). AI voice synthesis quality has improved dramatically while costs have dropped — making article audio conversion practical for any publisher.

Readers want to consume content in screen-free moments: commuting, exercising, cooking. Text-only media miss these touchpoints entirely. Adding a listening experience lets your articles reach audiences during time they already have, but can't use their eyes.

= 📊 Proven Results =

Deployed across 30+ media sites, PUBVOICE has delivered measurable improvements:

* ⏱️ **11x longer** session duration — readers stay while listening
* 🔁 **+32% repeat visit rate** — listeners come back to listen again
* 📈 **+19% more page views** — audio navigation drives multi-article browsing

The most surprising finding: repeat visitors shift from "arriving via search" to "coming back to listen." The delivery channel changes the relationship quality between your content and its audience.

= 🧠 Not Just Read-Aloud — Intelligent Scripting Powered by Gemini =

PUBVOICE doesn't simply read your article text aloud. Powered by Google Gemini, the AI understands article structure — headings, bullet points, tables — and automatically rewrites scripts for natural listening. This means proper pacing, contextual transitions, and natural intonation that holds listener attention through completion.

🎤 Voice clone technology is also available: editors can use their own voice to deliver articles, creating a personal connection that text alone cannot achieve. Listeners recognize the writer's voice and develop familiarity with your brand.

= ⚙️ Key Features =

* 🔄 **Auto Embed** — Automatically insert the Gemini-powered AI audio player on all blog posts
* 🧩 **Gutenberg Block** — Use the "PUBVOICE Audio Player" block in the block editor
* 📝 **Shortcode** — Use `[pubvoice]` shortcode for manual placement
* 🎨 **Customizable Layout** — Choose between Default and Compact player layouts
* 🗣️ **30+ AI Voices** — Gemini-powered, context-aware scripts with natural intonation
* 👤 **Voice Clone** — Use your own voice to deliver articles
* 📊 **GA4 Analytics** — Track play starts, completion rate, and drop-off points
* ✅ **Verify Domain** — Complete domain verification from the settings page
* 📡 **RSS Sync** — New articles are detected and converted to audio automatically
* 🔍 **SEO-Friendly** — Outputs Google-recommended structured data (JSON-LD) for audio content
* 🛒 **Amazon Product Cards** — Display Amazon Associate product cards inside the player, synced to playback time. Runs on your own domain — fully compliant with the Amazon Associate Operating Agreement
* 📈 **Click & Impression Tracking** — Measure which products convert (Basic plan and above)
* 🎨 **Player CSS Customization** — Match the player look to your brand (Basic plan and above)

= 🛠️ How It Works =

1. 🔗 Sign up at [pub-voice.com](https://pub-voice.com/en) (free plan available) and create a content source
2. 📡 Add your site's RSS feed URL in the PUBVOICE dashboard
3. 🤖 PUBVOICE will automatically crawl your articles and generate Gemini-powered AI audio using text-to-speech
4. 🔌 Install this plugin and enter your Content Source ID
5. ▶️ The audio player will appear on your articles — no coding required

= 🎯 Use Cases =

* ✍️ **Bloggers & Media** — Reach readers who prefer listening over reading
* 📣 **Content Marketers** — Increase time on page and reduce bounce rates
* ♿ **Accessibility** — Provide audio alternatives for visually impaired users
* 🚶 **Multitasking Readers** — Let users consume your content while commuting or exercising
* 🏷️ **Brand Building** — Use voice clones to create a personal, recognizable audio identity

= 💰 Pricing =

* 🆓 **Free** — $0/month. 2,500 credits per month, up to 600 characters per script (~1.5 min audio), 2 content sources. No credit card required.
* ✨ **Lite** — $10/month. 10,000 credits/month, up to 800 characters per script (~2 min audio), 2 content sources, 1 cloned voice.
* 💎 **Basic** — $65/month. 70,000 credits/month, up to 1,000 characters per script (~2.5 min audio), 3 content sources.
* 🚀 **Pro** — $199/month. 180,000 credits/month, up to 2,000 characters per script (~4 min audio), 5 content sources, all voices, cloned voices, detailed analytics.

🎉 **Beta special**: During the beta period, Basic plan features are available completely free. Start at [pub-voice.com](https://pub-voice.com/en).

= 📰 Press =

* [PR TIMES — PUBVOICE launches embedded audio player for web articles](https://prtimes.jp/main/html/rd/p/000000009.000168375.html)
* [ASCII STARTUP — PUBVOICE adds AI audio player embedding and voice cloning](https://ascii.jp/elem/000/004/400/4400045/)

== Screenshots ==

1. Audio player embedded in an article — readers can listen with one click.
2. PUBVOICE dashboard — manage content sources, articles, and audio settings.

== Installation ==

1. Upload the `pub-voice-wordpress` folder to `/wp-content/plugins/`
2. Activate the plugin through the 'Plugins' menu in WordPress
3. Go to **PUBVOICE** in the admin sidebar
4. Enter your Content Source ID from the PUBVOICE dashboard
5. Configure your preferred settings and save

== External Services ==

This plugin connects to the PUBVOICE service (operated by Media Leap Inc.) to deliver and play AI-generated audio for your articles. The service is required for the plugin's core functionality. An account is required to use this plugin (a free plan is available at https://pub-voice.com/en).

= PUBVOICE API (api.pub-voice.com) =

This service provides AI text-to-speech audio generation and playback for WordPress articles. It is the core of the plugin.

* Data sent and when:
  * **Domain verification / Connect Source** (`api.pub-voice.com/api/connect-source`): POST request containing your Content Source ID. Sent only when an administrator clicks the "Verify Domain" button on the settings page.
  * **Audio information fetch** (`api.pub-voice.com/api/public/audio-info`): GET request containing the article URL. Sent on the front-end when a post with the audio player is loaded (results are cached locally for up to 1 day).
* Terms of Service: https://pub-voice.com/en/terms (English) / https://pub-voice.com/ja/terms (Japanese)
* Privacy Policy: https://pub-voice.com/en/privacy (English) / https://pub-voice.com/ja/privacy (Japanese)

= PUBVOICE Player SDK (sdk.pub-voice.com) =

This service provides the player SDK script that renders and controls the audio player on the front-end.

* Data sent and when: The SDK script is loaded from `sdk.pub-voice.com` on the front-end of posts where the audio player is displayed. The current article URL is sent to the SDK at runtime to retrieve the corresponding audio data.
* Terms of Service: https://pub-voice.com/en/terms (English) / https://pub-voice.com/ja/terms (Japanese)
* Privacy Policy: https://pub-voice.com/en/privacy (English) / https://pub-voice.com/ja/privacy (Japanese)

== Source Code ==

This plugin ships its complete source code in the distribution package, including the human-readable JavaScript and CSS source files for the Gutenberg block (under `src/block/`). These source files are the inputs used to generate the compiled assets in the `build/` directory.

To regenerate the `build/` assets from source:

	npm install
	npm run build

The `package.json` file shipped with the plugin documents the build toolchain (`@wordpress/scripts`) and the exact build command. The block source files include:

* `src/block/index.js` — Block registration entry point
* `src/block/edit.js` — Block editor component
* `src/block/save.js` — Block save callback
* `src/block/block.json` — Block metadata
* `src/block/editor.css` / `src/block/style.css` — Block styles

== Frequently Asked Questions ==

= How do I get a Content Source ID? =

Sign up at [pub-voice.com](https://pub-voice.com/en), create a content source for your website, and copy the Content Source ID from the dashboard.

= Does the player work on all post types? =

Auto embed mode only works on blog posts (`post` type). For other post types, use the Gutenberg block or shortcode.

= What if my RSS feed is not being crawled? =

Make sure your RSS feed URL is correctly set in the PUBVOICE dashboard. PUBVOICE crawls RSS feeds every hour. Initial crawl can take up to 6 hours after RSS registration.

= Can I customize the player appearance? =

Yes, you can choose between Default and Compact layouts. Additional customization options are available in the PUBVOICE dashboard.

= Is there a free plan? =

Yes! PUBVOICE offers a free plan ($0/month) with 2,500 credits/month — no credit card required. During the beta period, Basic plan features ($65/month value) are available completely free. Visit [pub-voice.com](https://pub-voice.com/en) to sign up.

= Does audio help SEO? =

PUBVOICE outputs Google-recommended structured data (JSON-LD) for audio content on your site, which may help search engines understand your pages better.

= Will our articles be used as AI training data? =

No. Your article text is never used as training data for external AI models. PUBVOICE uses enterprise-grade secure APIs for audio generation and script creation only.

= Does this plugin make external requests? =

Yes. PUBVOICE is a service plugin and communicates with `pub-voice.com`. To deliver and play audio, the plugin:

* Loads the PUBVOICE player SDK script from `pub-voice.com` on pages where the player is displayed.
* Requests audio playback data, structured-data (JSON-LD) sources, and domain-verification status from the PUBVOICE API.

These requests are the plugin's core functionality and are made with the site administrator's explicit configuration (entering a Content Source ID in the settings page). No data is sent to external services without an administrator configuring the plugin. Your article text is never used as AI training data.

= What is voice cloning? =

Voice cloning lets editors create an AI replica of their own voice. Readers hear the article delivered in the writer's voice, creating a personal connection that text alone cannot achieve. This feature is available in the PUBVOICE dashboard.

= How does PUBVOICE differ from simple text-to-speech? =

Unlike basic TTS that reads text word-for-word, PUBVOICE understands article structure (headings, bullet points, tables) and automatically rewrites scripts optimized for listening — with proper pacing, contextual transitions, and natural intonation. It also integrates with GA4 for detailed playback analytics (start rate, near-completion rate, drop-off points).

= Can I track audio analytics in Google Analytics? =

Yes. PUBVOICE integrates with GA4 to track play starts, completion rates, and drop-off points. You can compare browsing behavior and conversion rates between listeners and non-listeners, enabling data-driven content optimization.

= Are past articles automatically converted? =

Yes. Past articles available from your registered RSS feed are automatically detected and converted to audio. The player appears on those articles once audio is generated.

== Changelog ==

= 1.3.2 =
* Tweak: The "Why PUBVOICE" feature cards on the settings landing page now display in a 4-column horizontal layout for easier scanning. They stack vertically on narrow screens.
* Tweak: Renamed the "Associate Tag" field to "Store ID" so it matches the name shown in Amazon Associate Central.
* Tweak: Moved the product preview section below the Amazon settings fields, with clearer spacing and a distinct card layout so it's easier to find after entering your Store ID.
* Fix: Replaced the placeholder text in the Store ID field with a generic example (yourstore-22).

= 1.3.1 =
* Fix: Correct the upgrade link in the settings pricing section and the post editor meta box so it points to the working dashboard upgrade page.

= 1.3.0 =
* New: Display Amazon Associate product cards inside the audio player, synced to playback time. Paste an Amazon URL or ASIN, set a timestamp, and the card appears at the right moment during audio playback.
* New: Amazon product preview in the settings page — paste a product URL to see exactly how the card will look before publishing.
* New: Product cue editor on each post — add multiple products and schedule when each one appears during the audio.
* New: Plan-aware features — product cards with images and prices are available on every plan. Click & impression tracking and player CSS customization unlock on the Basic plan and above.
* New: Pricing section on the settings page showing all plans and the features available at each tier.
* Privacy: Updated the suggested privacy policy text to cover Amazon product data fetching and product click/impression tracking when those features are enabled.

= 1.2.0 =
* Rebrand: Rename to "PUBVOICE - AI Audio Player Powered by Gemini" to highlight that audio generation is powered by Google Gemini.
* Tweak: Update plugin description, readme copy, and settings landing page to showcase Gemini integration.
* Tweak: Update Gutenberg block description to mention Gemini-powered audio.

= 1.1.1 =
* Maintenance: Refresh readme pricing copy so the Free plan description is picked up by translate.wordpress.org.

= 1.1.0 =
* New: Suggest privacy policy text via wp_add_privacy_policy_content() so site owners can disclose the data PUBVOICE sends to its external API and player SDK. Required by Plugin Check for plugins that make external requests.
* Tweak: Clean up all plugin data on uninstall — options (pubvoice_settings, pubvoice_installed_at), per-user review-dismissal meta, and cached audio-info transients are now removed when the plugin is deleted.
* Maintenance: Remove a redundant CachedStructuredDataFetcher instance from the dependency container.

= 1.0.4 =
* New: Add a "Leave a Review" link on the settings page footer to help surface the WordPress.org Reviews tab.
* New: Show a dismissible review request notice on the settings page after the plugin has been active for 7 days.
* Maintenance: Fix version constant mismatch (PUBVOICE_VERSION now matches the plugin header).

= 1.0.3 =
* i18n: Update Japanese translation to follow the WordPress Japanese translation style guide (spacing between half-width and full-width characters, half-width punctuation and parentheses).

= 1.0.2 =
* Docs: Point Plugin URI at the localized product landing page (/en/beta or /ja/beta) so reviewers land on a clear service description page.

= 1.0.1 =
* Security: Validate select-field values (embed mode, auto embed position, layout, locale) against an allow-list in the settings sanitizer before storing. Non-conforming submissions fall back to defaults.
* Hardening: Guard the settings sanitizer against non-array input.
* Docs: Clarify localized Terms of Service and Privacy Policy URLs (English / Japanese) in the readme.
* Docs: Point Plugin URI, readme links, and admin landing page links at the localized home page (/en or /ja) instead of the bare apex domain so reviewers always land on rendered content.
* i18n: Remove manual load_plugin_textdomain(); WordPress loads translations automatically from the Text Domain and Domain Path headers.

= 1.0.0 =
* Initial release
* Auto embed mode for blog posts
* Gutenberg block support
* Shortcode `[pubvoice]` support
* Settings page with Verify Domain
* AudioObject structured data (JSON-LD) output with settings toggle

== Disclaimer ==

This plugin uses Google Gemini. Gemini is a trademark of Google LLC. PUBVOICE is an independent service and is not affiliated with or endorsed by Google LLC.
