Generate AI narration for a post and place the player on the frontend.
Prerequisites
- The post type supports
prc-spoken-article(default:post). - Site ElevenLabs settings are configured under Spoken Article → Settings.
- You can edit posts (
edit_posts).
Generate audio
-
Open the Spoken Article panel
Edit a supported post and open the Spoken Article sidebar panel.
-
Choose voice and quality
Pick a voice. Use draft quality for fast previews and production quality for publishable audio.
-
Generate
The editor requests TTS-ready text, then calls the server TTS proxy. Audio uploads to the media library and links to the spoken-article record.
-
Add a player block
Insert Spoken Article (
prc-spoken-article/player) where listeners should play the audio. One instance per post.
Blocks
| Block | Name | Role |
|---|---|---|
| Spoken Article | prc-spoken-article/player | Interactivity API player (play/pause, seek, skip ±15s, speed, session resume) |
| Spoken Article Trigger | prc-spoken-article/player-trigger | Compact trigger for opening playback |
| Add to Queue | prc-spoken-article/player-add-to-queue | Queue control for multi-item listening flows |
The player renders only when valid spoken-article audio meta exists. Audio data lives in meta / the CPT, not in block attributes.
Site settings
Spoken Article → Settings (edit.php?post_type=spoken-article&page=spoken-article-interstitials) configures:
- ElevenLabs API key fallback (when the platform constant is unset)
- Default voice
- Draft model (default
eleven_flash_v2_5) and production model (defaulteleven_multilingual_v2) - Global interstitial ads and label
Enable another post type
add_post_type_support( 'your-cpt', 'prc-spoken-article' );