Find out why your affiliate disclaimer is missing from a post and show it
The Endorsements kit in TermsFeed AutoTerms adds its disclaimer to the single view of a blog post only, and only while the kit is on and the post qualifies. The disclaimer is an affiliate disclosure, a short text that tells readers a post contains affiliate links or endorsements. The plugin adds it before or after the post content, at the position the "Where to insert the disclaimer note" setting chooses.
Search the page source (Ctrl+U, or Cmd+Option+U on a Mac) of the post for class="wpautoterms-endorsements". A page that holds <div class="wpautoterms-endorsements"> with your message inside it received the disclaimer, so a disclaimer that still stays out of sight points to a theme rule that hides the box. Compare the settings with Add an Affiliate Disclosure in WordPress.
Cause 1: The Endorsements kit is off
The Endorsements kit stays off after install until you click its "Enable" button on the Compliance Kits screen. Saving a message on the Endorsements settings screen leaves the kit off, because that screen has no Enabled checkbox.
Open TermsFeed > Compliance Kits and read the Endorsements box, which shows "Disabled".
Turn the kit on from the Compliance Kits screen, then check a post.
- Click the "Enable" button in the Endorsements box, which shows "Endorsements enabled." at the top of the screen.
- Clear the page cache.
- Close every private window, open a new one, and load a blog post.
Cause 2: The page is not the single view of a blog post
The plugin adds the disclaimer only to the post you open on its own page, and only to posts of the type Post. Pages, products, and other custom post types get none, and neither do archives, the blog home page, category pages, excerpts, and related posts. A legal page embedded with a shortcode, and other posts shown on the same page, get none either.
Search the page source for <body class= and read the classes in that attribute. WordPress adds single-post there on the single view of a blog post only. No single-post in the attribute means the address opens a page, a product, a list of posts, or a category instead of one blog post.
Open the blog post itself, by its own address, and check the disclaimer there, before or after the content. No setting makes the plugin add a disclaimer to pages and other post types, so write a disclosure into their content yourself.
Cause 3: The post lacks the chosen tag
With "When to insert the disclaimer note" set to "if tag exists on a post", the plugin shows the disclaimer only on posts that carry the chosen tag. The same setting with no tag chosen, or with a tag you deleted since, shows the disclaimer on no post.
Compare the tag in "Choose a tag from your current list of tags:" on the Endorsements screen with the Tags of the post in the editor.
On a post that lacks the tag, add the chosen tag and click the "Save" or "Update" button of the editor. With no tag chosen on the Endorsements screen, choose an existing tag there and click the "Save Changes" button. Where every post carries affiliate links, set "When to insert the disclaimer note" to "always" instead, and click the "Save Changes" button. Then clear the page cache, close every private window, and load the post in a new one.
Cause 4: The theme or page builder prints the post without the_content
The plugin adds the disclaimer through the_content, the WordPress filter that themes run on the body of a post, so a template that skips the filter skips the disclaimer. Some page builders and custom single post templates print the post body with their own code. The disclaimer then never reaches the page, although the kit is on and the post qualifies.
Switch to a default WordPress theme for a moment and open the post. A disclaimer that appears there and not with your own theme or template means the template skips the filter.
As the site owner, print the post body with the page builder element that runs the filter.
- Open the single post template of your page builder.
- Print the body with the "Post Content" element of the builder, such as the widget in Elementor Pro. Set the element to the WordPress content if it offers a choice of source.
- Save the template, clear the page cache, and open the post again.
As a developer, print the body with the_content() in the single post template of your WordPress theme, or pass the content through the filter with apply_filters( 'the_content', get_the_content() ).
Cause 5: A page cache serves the post from before the change
A page cache keeps serving the post as it was before you turned the kit on or changed the message, so the disclaimer is missing or out of date. The Endorsements kit prints the same text for every visitor, so a cached post keeps the old disclaimer, or none, until you purge the cache.
Load the post logged out, as the page cache serves it to visitors. Close every private window, open a new one, and load the post address with ?nocache=1 added, then the plain address. A disclaimer on the first address and none on the plain one means the cache still holds the old post. A cache or content delivery network (CDN) that ignores query strings shows the old disclaimer, or none, on both addresses, so clear its cache instead.
Purge each cache, then open the post fresh. Clear each kind of cache with WordPress Caching Plugins.
- Purge the caching plugin.
- Purge the server cache of your host and the cache of your CDN.
- Close every private window, open a new one, and load the plain address.
Cause 6: A theme rule hides the disclaimer
A theme rule with display: none on the disclaimer box hides a disclaimer that the page received. The page source holds <div class="wpautoterms-endorsements">, while the post does not show the disclaimer.
Search the Elements tab for class="wpautoterms-endorsements", select the element, and read the Styles panel. A display: none rule from a theme stylesheet means the theme hides the box.
Override the theme rule in the "Additional CSS" field of the Endorsements kit. Without unfiltered_html, the plugin keeps the field unchanged and shows an error. Fix that error with Code or HTML Not Saving in WordPress.
- Add
.wpautoterms-endorsements { display: block !important; }to the "Additional CSS" field. - Click the "Save Changes" button.
- Clear the page cache and open the post again.
How to verify that the disclaimer shows
A working kit shows the disclaimer on the single view of a qualifying blog post, at the position you chose, and nowhere in the post list. Look at a post as a visitor sees it. Save your change and clear the page cache first.
- Open TermsFeed > Compliance Kits and confirm that the Endorsements box shows "Enabled".
- Close every private window, open a new one, and load a blog post that carries the chosen tag, or any post with "always".
- Confirm that the disclaimer appears before or after the content, at the position the "Where to insert the disclaimer note" setting chooses.
- Search the page source for
class="wpautoterms-endorsements"and confirm that it appears once. - Open the blog home page and confirm that the post list does not carry a disclaimer.
The class .wpautoterms-endorsements wraps the disclaimer box wherever it shows. Style the box with that class and the color and font fields in Add an Affiliate Disclosure in WordPress.