# Affiliate disclosure settings

Turn on an affiliate disclosure notice and choose its text, position, style and post types.
Page: https://docs.linkmanagerpro.com/guides/settings/disclosure
Use when someone asks: affiliate disclosure settings; disclosure text; cookie notice settings
Intent: Info

The Affiliate disclosure tab holds your affiliate disclosure settings. Turn the notice on, and Link Manager Pro adds your text to single posts that link to one of your affiliates, or have a link marked `sponsored`. You choose the text, where it sits, how it looks and on which post types. The tab also holds the **Cookie notice** about the click tracking cookie.

## Where to find it

Link Manager › Settings › Affiliate disclosure

In the screenshot, the **Affiliate disclosure** tab (1) is open. The **Affiliate disclosure** switch (2) is off, so only it and **Cookie notice** (3) show.

[Screenshot: Affiliate disclosure settings tab with the Affiliate disclosure tab, the Affiliate disclosure switch and Cookie notice marked: 1 to 3 in that order]

Only administrators see Settings. Changes take effect when you select **Save changes** (or press Ctrl+S, ⌘S on a Mac). Until then, each changed row shows **Edited**, and **Cancel** puts back the saved values. If saving fails, **Couldn’t save. Your edits are kept.** appears next to the buttons and **Save changes** becomes **Retry**.

While **Affiliate disclosure** is off, the tab shows only that switch and **Cookie notice**. The other rows appear when you turn the switch on. Their saved values stay while it's off.

## Settings and defaults

Each row links to its section below. New sites get the same values.

| Setting | Default | Choices | What it does |
|---|---|---|---|
| **Affiliate disclosure** | Off | On or off | Adds your notice to single posts that link to one of your affiliates, or have a link marked `sponsored`. [More](#when-does-the-disclosure-show) |
| **Disclosure text** | A ready-made sentence ([see it](#disclosure-text)) | Plain text | The notice visitors read. HTML tags are removed when you save. Shows while **Affiliate disclosure** is on. [More](#disclosure-text) |
| **Position** | **Above the post** | **Above the post** or **Below the post** | Puts the notice at the start or the end of the post content. Shows while **Affiliate disclosure** is on. [More](#position-and-style) |
| **Style** | Boxed | Boxed, Minimal or Custom | How the notice looks on your site. Shows while **Affiliate disclosure** is on. [More](#position-and-style) |
| **Custom CSS class** | Empty | One CSS class name | Your own class on the notice. Shows and works only while **Style** is Custom. [More](#custom-css-class) |
| **Post types** | **Posts** and **Pages** | The public post types on your site | Which kinds of single pages can get the notice. Shows while **Affiliate disclosure** is on. [More](#post-types) |
| **Preview** | | Not a setting | A sketch of the notice as you change the rows above. [More](#preview) |
| **Cookie notice** | Off | On or off (**I handle cookie consent for my visitors**) | Explains the tracking cookie. The switch doesn't change what Link Manager Pro does. [More](#cookie-notice-setting) |

## Turn on the affiliate disclosure

1. Go to Link Manager › Settings › Affiliate disclosure.
2. Turn on **Affiliate disclosure**.
3. Check **Disclosure text**, **Position**, **Style** and **Post types**. **Preview** follows your changes.
4. Select **Save changes**.

To check it worked, open a published post that links to one of your affiliates, through a short link or directly. The notice sits at the top or the bottom of the post text.

The notice is added each time a post is shown. It's never saved into your posts, so turning the switch off removes it everywhere at once. Saving this tab doesn't clear page caches, though. If you use a cache plugin, clear its cache after you save, or cached pages keep their old version.

## When does the disclosure show?

The disclosure shows on a single post, page or other single entry of a type you picked under **Post types**, when its content links to one of your affiliates or has a link marked `sponsored`. **Disclosure text** must not be empty. Link Manager Pro doesn't check whether a link really earns you a commission. It checks the domain against your list under **Affiliates** ([Affiliates](https://docs.linkmanagerpro.com/guides/affiliates)).

All of these must be true:

- **Affiliate disclosure** is on.
- The visitor is on a single entry. Archive and category pages never show it.
- The entry's post type is picked under **Post types**.
- The post content contains a link that counts (table below).
- **Disclosure text** isn't empty.

What counts in the post content:

| In the post content | Counts? |
|---|---|
| A short link on your site whose destination is on an affiliate's domain | Yes. The address can use your **Short link prefix**, your **Internal link prefix** or your **Affiliate link prefix**, and can be a full address or a path only (`/link/deal`). |
| An auto-link whose short link leads to an affiliate's domain | Yes. Auto-links are in place before the check runs. |
| A plain link to an affiliate's domain, with no short link | Yes |
| Any link whose `rel` contains `sponsored`, to any site | Yes, also one you marked yourself |
| A short link to a site that isn't on your **Affiliates** list | No, unless its `rel` contains `sponsored` |
| A link marked only `nofollow` | No |
| A short link with an old prefix, after you changed the prefix | Yes, when it leads to an affiliate's domain, like a short link with a current prefix |

An affiliate's domain matches exactly. Capital letters and a leading `www.` are ignored, but a subdomain like `shop.example.com` isn't covered by `example.com` and needs its own entry under **Affiliates**.

A masked link to an affiliate's domain counts by its address, so it needs no `sponsored`. A short link to your own pages doesn't count.

After you change **Short link prefix**, **Internal link prefix** or **Affiliate link prefix**, links in your posts that still use the old prefix keep counting by their address. The General tab offers **Update links in posts** to move them to the new prefix ([General settings](https://docs.linkmanagerpro.com/guides/settings/general#short-link-prefix)).

For technical readers: the check reads the post's HTML as WordPress outputs it. A short link counts wherever it appears in the content, once its slug matches one of your links. The `rel` check needs a real `rel` attribute that holds the whole word `sponsored`, quoted or not. `data-rel="sponsored"` and `rel="sponsored-post"` don't count. The notice goes into the viewed post's own content only, not into excerpts or other posts shown on the page. The notice isn't added in the WordPress admin, REST API responses, AJAX requests or cron jobs.

::: info Note
Link Manager Pro shows the notice by these rules. Whether your text and its placement meet the rules that apply to your site is your call; these docs give no legal advice. For a walk-through of setting it up and checking it on your posts, see [Add an affiliate disclosure](https://docs.linkmanagerpro.com/tutorials/ftc-affiliate-disclosure). Tips on wording the notice are on [Write a notice your readers understand](https://docs.linkmanagerpro.com/features/disclosure#write-a-notice-your-readers-understand).
:::

## Disclosure text

**Disclosure text** is the notice your visitors read, in plain text. It starts with this sentence:

> Disclosure: This post contains affiliate links. If you purchase through these links, I may earn a commission at no additional cost to you.

- HTML tags are removed when you save. A link in the text becomes plain words: `See <a href="/policy">our policy</a>` is saved as `See our policy`.
- Line breaks don't show. The notice appears as one paragraph, on your site and in **Preview**.
- If the field is empty, no post gets the notice, even with the switch on. **Preview** then shows no notice and the line **No notice is shown while the text is empty.**
- The field's gray hint, **Disclosure: This post contains affiliate links…**, is only a placeholder. It's never shown to visitors.

## Position and style

**Position** decides where the notice goes. **Above the post** puts it at the start of the post content, before the first paragraph. **Below the post** puts it after the last one.

**Style** decides how it looks on your site. Each choice in the list reads **Boxed (a bordered box with an icon)**, **Minimal (text with an icon and a divider)** or **Custom (your own CSS class)**.

| Choice in **Style** | On your site |
|---|---|
| Boxed (the default) | A box with a thin border, a light tinted background and a small info icon |
| Minimal | The text with the info icon and a thin divider line below it |
| Custom | Your text only: no icon, no border, no background. You style it with **Custom CSS class**. |

All three take your theme's font and text color, at 0.875 times the size of the post text, with some space below. Boxed and Minimal show the text slightly lighter. Link Manager Pro adds that small stylesheet only on single pages, and only while **Affiliate disclosure** is on.

### Custom CSS class

**Custom CSS class** appears when you choose Custom in **Style**. Enter one class name, without the dot, for example `my-disclosure-style`. Then add CSS for that class to your theme, like this:

```css
.my-disclosure-style {
  padding: 12px 16px;
  border-left: 4px solid #f0b400;
  background: #fff8e1;
}
```

- Only letters, digits, hyphens and underscores are kept when the notice is shown. A dot is dropped, so `.my-disclosure-style` still works. A space is dropped too: `my class` becomes `myclass`, so you can't add two classes.
- With Custom and no class, the notice is plain text with the base styling above.
- The class is used only with Custom. Boxed and Minimal ignore it.

For technical readers, the notice is an `<aside>` element with `aria-label="Affiliate disclosure"` and the classes `lmp-affiliate-disclosure` and `lmp-disclosure--boxed`, `lmp-disclosure--minimal` or `lmp-disclosure--custom`. With Boxed and Minimal, the text sits in a `div` with the class `lmp-affiliate-disclosure__text`, after the icon.

## Post types

**Post types** lists the public post types on your site, for example **Posts**, **Pages** and a products or reviews type that another plugin adds. **Posts** and **Pages** are picked by default: the field shows **Posts** and +1, and opening it shows **Pages** ticked too. Media attachments aren't listed.

- A post type you don't pick never shows the notice, whatever links its entries contain.
- If you remove every post type, the notice can show on single entries of every type. That includes media attachment pages, where your site has them. To show it nowhere, turn off **Affiliate disclosure** instead.
- If the list can't load, it offers **Posts** and **Pages** only.

## Preview

**Preview** shows a sketch of the notice above or below a placeholder line, **Your post content would appear here…**. It follows your text, **Position** and **Style** as you change them, before you save.

- It's drawn with the admin's own styles. On your site, the notice takes your theme's font and colors.
- It removes HTML tags and joins lines, the way your site shows the text.
- With Custom, it shows plain text. Your class isn't applied in the admin.
- With an empty **Disclosure text**, it shows **No notice is shown while the text is empty.**, like your site.

The Preview doesn't tell you which posts get the notice. For that, open a post with a short link on your site.

## Cookie notice setting

**Cookie notice** explains the cookie Link Manager Pro sets for click tracking. Its switch, **I handle cookie consent for my visitors**, is off by default and changes nothing: no feature reads it. Cookie consent itself is handled on the Integrations tab, or with a filter for developers.

What the notice describes, as the code does it:

- The cookie is named `link_manager_pro_id`. It holds a random ID that tells whether a click is a visitor's first on that link ([How clicks are counted](https://docs.linkmanagerpro.com/features/click-tracking)).
- It's set when a visitor goes through a short link or one of your redirects, and only while **Click tracking** is on. It expires after 1 year.
- Say Complianz, CookieYes or Cookiebot is active, and **Respect visitor consent** is on (the default). Then the cookie waits until the visitor accepts the **Consent category**, **Statistics** by default ([Integrations settings](https://docs.linkmanagerpro.com/guides/settings/integrations)).
- Without consent, no new cookie is set. An existing one is deleted the next time the visitor goes through a short link or redirect. Clicks are still counted. Unique clicks then go by IP address and browser.
- Developers can decide consent with the `link_manager_pro_cookie_consent` filter. Return `false` to stop the cookie. With no consent plugin and no filter, the cookie is allowed.

A second cookie, `lmpro_pw_` followed by the link's number, is set only when a visitor enters the right password for a password-protected link. It lets that browser through for 1 day. The notice on this tab doesn't mention it.

For technical readers, both cookies are set with path `/`, `HttpOnly`, `SameSite=Lax`, and `Secure` on an `https` site.

## Get more out of it

- Put the notice before your links. **Above the post** places it before the first paragraph, so readers meet it before any link in the post text.
- Match your theme's look with Custom. Choose Custom in **Style**, enter a class like `my-disclosure-style` and add the CSS from [Custom CSS class](#custom-css-class) to your theme.
- Pick the post types you publish affiliate content in. If your reviews live in their own post type, pick it under **Post types**, next to **Posts** and **Pages**.
- Point readers to your full policy in plain words. Links can't go in the notice, so write the address as text, for example "Our disclosure policy: yoursite.com/disclosure".
- Mention the cookies in your privacy policy. Link Manager Pro adds suggested text about `link_manager_pro_id` and `lmpro_pw_` to WordPress's privacy policy guide ([Privacy and personal data](https://docs.linkmanagerpro.com/guides/privacy)).

## If something goes wrong

- If the notice doesn't show, then check that **Affiliate disclosure** is on and saved, and **Disclosure text** isn't empty. Open a single post (not an archive) of a picked post type. It needs a link to a domain listed under **Affiliates**, through a short link with a current or previous prefix or directly, or a link marked `sponsored`. A `nofollow` link alone doesn't count. Then clear your page cache. A theme or page builder that shows posts without WordPress's `the_content` output gets no notice.
- If the notice shows on a post you didn't expect, then the post has a link to an affiliate's domain, or a link marked `sponsored`. An auto-link to an affiliate counts too. Remove or change that link. There's no switch for a single post, so otherwise stop picking that post type.
- If a link or formatting in your text disappeared after saving, then it was HTML, which is removed. Write the text as plain words.
- If the Custom style looks unstyled, then add CSS for your class to your theme, and check that the class has no spaces.

More fixes are on [Troubleshooting](https://docs.linkmanagerpro.com/troubleshooting).

## Related

- [Affiliate disclosure](https://docs.linkmanagerpro.com/features/disclosure)
- [Add an affiliate disclosure](https://docs.linkmanagerpro.com/tutorials/ftc-affiliate-disclosure)
- [All settings](https://docs.linkmanagerpro.com/guides/settings)
- [Integrations settings](https://docs.linkmanagerpro.com/guides/settings/integrations)
- [Troubleshooting](https://docs.linkmanagerpro.com/troubleshooting)
