Add a Voice AI Agent to DNN (DotNetNuke)
Add the AnveVoice voice agent to a DNN Platform site using the Persona Bar head-tag field, with host-account, validity and theme notes.
How to add AnveVoice to a DNN site
DNN has a built-in box for HTML that goes into the head of every page: Settings > Site Settings > Site Behavior > Default Pages in the Persona Bar. Paste the AnveVoice tag there with a host account and the voice agent loads across the site. Steps checked against the official documentation on 2026-10-14.
At a glance
- Where the code goes: Persona Bar > Settings > Site Settings > Site Behavior > Default Pages
- Account needed: A host / super user account, per the DNN administrator docs
- Coding needed: None for the settings route
- Time: About 2 minutes
Before you begin
The DNN administrators' guide for adding metadata lists one prerequisite: a host or super user account, because hosts hold full permissions over every site in the DNN instance. An ordinary site administrator may not see this field. If you only manage one portal on shared hosting, ask whoever holds the host login to paste the line for you. You also need your AnveVoice embed ID. Create a free account at app.anvevoice.app, build a voice bot for the site, and copy the ID from the dashboard.
- 1. Copy the tag — Put your own ID in place of YOUR_EMBED_ID. The src can carry &position=bottom-left or &theme=dark if you want to change placement or colours. Code: <script src="https://anvevoice.app/embed.js?embedId=YOUR_EMBED_ID" async></script>
Method 1: the head-section field
The guide describes this field as the place to enter HTML code, for example meta tags, for the head section of every page. A script tag is also valid in the head, and the AnveVoice tag loads asynchronously so it does not delay rendering. The docs state the HTML tags must be valid for the head section. A community report describes a pasted script with a missing closing tag breaking the markup of the whole site, even the Persona Bar. Copy the full line, and test on a staging copy first if you can.
- 1. Open Site Settings — Sign in as host, open the Persona Bar, and go to Settings > Site Settings.
- 2. Find the field — Choose the Site Behavior tab, then the Default Pages subtab, and look for the text area for HTML added to the head of every page.
- 3. Paste the tag — Add the AnveVoice line without removing anything already in the box, such as verification meta tags. Make sure the tag is complete, with its closing script element.
- 4. Save — Click Save at the bottom of the settings screen and load the public site.
Older DNN versions
The DNN community's Control Bar to Persona Bar reference says this setting used to sit under Admin > Site Settings > Advanced Settings > Page Output Settings, and that the field moved to Settings > Site Behavior > Default Pages in the Persona Bar, with the other fields in that older subtab deprecated. If you run an older release with the Control Bar, use the legacy path.
Method 2: through the theme
Developers who maintain their own theme can register scripts at theme level instead. DNN's documentation on client resources explains that scripts are registered through providers that decide whether a reference renders in the head, near the top of the body, or near the bottom of the form, and themes can request them with the DnnJsInclude control. Those mechanisms are built around registered files with priorities, and the AnveVoice script is a single remote tag, so the Site Settings field is the simpler route for this tag. Choose the theme route only if your team already manages its skin in source control.
Multiple portals, caching and performance
Site Settings apply to the current site, called a portal, so a DNN instance hosting several sites needs the tag pasted once per site. If the button does not appear after saving, the page may be cached. The migration reference places client resource management under Settings > Servers > Server Settings > Performance, and DNN also has output caching on modules and pages. Clear caches or increment the client resource version, then reload.
Check that it works
- 1. Log out first — Open the home page in a private window so host-only toolbars do not interfere.
- 2. Look for the microphone — A round button appears bottom-right. Click it, allow microphone access, and speak a question.
- 3. Check the head — View source and confirm anvevoice.app/embed.js appears once inside head.
Common problems
- Field not visible: you are signed in as a site administrator rather than host.
- Site layout or Persona Bar broke after saving: invalid markup was pasted. Remove the added text, save, and paste the line again carefully.
- Works on one site but not another: each portal has its own setting.
- No microphone prompt: the page must be served over HTTPS.
Sources
- DNN docs: Add Metadata to Pages (Persona Bar > Settings > Site Settings) (https://dnnsoftware.com/docs/administrators/configuring-your-site/add-metadata-to-pages.html) — checked 2026-10-14
- DNN Community docs: Control Bar to Persona Bar reference (https://docs.dnncommunity.org/content/tutorials/references/control-bar-to-persona-bar/index.html) — checked 2026-10-14
- DNN Community docs: Client resources (script providers and placement) (https://docs.dnncommunity.org/content/tutorials/client-resources/index.html) — checked 2026-10-14
Related
- How to add AnveVoice to Xperience by Kentico
- How to add AnveVoice to an ExpressionEngine site
- How to add AnveVoice to a ProcessWire site
- How to add AnveVoice to a plain HTML website
Try AnveVoice on your site
Free plan: $0, 50,000 tokens a month, no card. Get your embed ID in the dashboard, then paste one tag.