Give a WordPress user the TermsFeed menu and the screens they need

The TermsFeed admin menu in TermsFeed AutoTerms follows the capabilities of each user, so an Editor, an Author, or a legal page editor without unfiltered_html sees part of it or none. A capability is a single permission that WordPress checks before it shows a screen. Administrators see every item, and other users see the items their capabilities allow.

Compare the menu the user sees with the items each group of users gets.

Menu item Who sees it
Dashboard, All Legal Pages, Add Legal Page, Help Administrators, and users with the plugin capabilities
Compliance Kits, Settings Administrators, and users with the plugin capabilities together with unfiltered_html
Legacy Auto TOS & PP The users who see Settings, on sites upgraded from Auto Terms of Service and Privacy Policy 1.x only

Close every private window, open a new one, and log in as the user there, or ask the user for a screenshot of the menu, before you change any role. Read the full list of menu items in What the TermsFeed AutoTerms WordPress Plugin Does.

Cause 1: An Editor, Author, or Contributor has no plugin capabilities

The WordPress roles Editor, Author, and Contributor carry none of the plugin capabilities, so their users do not see the TermsFeed menu. The plugin adds its own capabilities only to the roles it creates, and never to the roles WordPress ships. It creates "WPAutoTerms Pages Editor (additional)", and "Editor + WPAutoTerms Pages Editor" on sites that have the Editor role. A user who is not an Administrator needs a plugin role to create or edit legal pages.

The Users screen lists every role a user holds. Open Users and read the Role column of the user. A Role column that shows only "Editor", "Author", or "Contributor", and no plugin role, means the user holds none of the capabilities.

Give an Editor the combined role, which holds the capabilities the Editor role had when the plugin created the combined role, plus the legal page capabilities.

  1. Open Users and edit the user.
  2. Select the role "Editor + WPAutoTerms Pages Editor".
  3. Click the "Update User" button and ask the user to reload the admin.

A developer gives an Editor the same role with WP-CLI, replacing jane with the user login.

wp user set-role jane manage_wpautoterms_pages_editor

For an Author or a Contributor, keep the Author or Contributor role and add "WPAutoTerms Pages Editor (additional)" beside it. The "Editor + WPAutoTerms Pages Editor" role gives an Author or a Contributor Editor permissions over every post and page of your WordPress website, so keep that role for Editors. The profile screen offers a single role, so add the second role with a role editor plugin that allows several roles, or as a developer with WP-CLI, again replacing jane. Before you run wp user add-role, compare what each role allows in TermsFeed AutoTerms Capabilities and Roles.

wp user add-role jane manage_wpautoterms_pages

Cause 2: The user has the plugin capabilities but not unfiltered_html

A user with the plugin capabilities but without unfiltered_html sees the legal pages and not Compliance Kits or Settings. Those screens hold code that the plugin prints on every page of your WordPress website, and unfiltered_html is the WordPress permission to add that code without filtering. On a multisite network only Super Admins hold it, so an Editor with the combined role sees the legal pages only.

Look at the TermsFeed menu the user sees. A menu with Dashboard, All Legal Pages, Add Legal Page, and Help, but without Compliance Kits and Settings, points to the missing capability.

Ask an Administrator, or a Super Admin on a network, to change the kit settings for the user. On a single site, give the user unfiltered_html with a role plugin only where you trust that user with code on every page. Read the causes that remove the capability in Code or HTML Not Saving in WordPress.

Cause 3: The user has only the additional role

The role "WPAutoTerms Pages Editor (additional)" holds the 10 legal page capabilities and nothing else, so a user with that role alone lacks the basic WordPress access to the admin. The role is meant to sit on top of another role, such as Author or Editor. A user with it alone does not hold the read capability, so WordPress sends that user to the home page after login and refuses the WordPress Dashboard. The legal page screens still open from a direct address, such as /wp-admin/edit.php?post_type=wpautoterms_page.

On the Users screen, the Role column of the user shows only "WPAutoTerms Pages Editor (additional)" when the user has no WordPress role underneath.

Give the user a WordPress role first, then add the additional role on top.

  1. Give the user a WordPress role, such as Author or Editor.
  2. Add "WPAutoTerms Pages Editor (additional)" on top with wp user add-role or with a role plugin that allows several roles.
  3. Ask the user to log in again and open the TermsFeed menu.

Cause 4: The site never ran version 1.x of the plugin

The Legacy Auto TOS & PP item appears only on sites upgraded from Auto Terms of Service and Privacy Policy 1.x, so a new installation never shows it. The screen holds the text that the 3 legacy shortcodes of that earlier plugin print. A site without those settings has nothing to show there.

A developer reads the upgrade flag with WP-CLI: wp option get wpautoterms_legacy_options prints 1 on a site upgraded from version 1.x. An empty value or a missing option means the plugin did not find 1.x settings when it first ran. The menu without the Legacy Auto TOS & PP item is then the expected menu. A 1 with the item still missing points to a user who is not an Administrator and lacks unfiltered_html.

Nothing is missing, so leave the menu as it is. Use the [wpautoterms] shortcodes for legal pages on a new site, and read how the 3 legacy shortcodes behave in Legal Page Shortcodes for WordPress.

How to verify that the user sees the TermsFeed menu

A user with the right role sees the TermsFeed menu after a fresh login, with the items that role allows. A private window keeps your own admin session open during the test.

  1. Close every private window, open a new one, and log in as the user.
  2. Confirm that the TermsFeed menu shows Dashboard, All Legal Pages, Add Legal Page, and Help.
  3. Open Add Legal Page and confirm the "Create" buttons.
  4. Confirm Compliance Kits and Settings for a user who has unfiltered_html, and open Compliance Kits to check that the screen loads. On a single site an Editor with the combined role sees both items.