Give different roles different home screens

What you’ll accomplish

Right now, everyone who opens your app lands on the same home screen. MAM Suite lets you change that: give each WordPress user role its own home-screen buttons and its own left-menu content. A member sees member content, a vendor sees vendor content, and anyone who isn’t signed in gets a public, fallback layout instead.

You’ll do this entirely in the MAM admin — no code required. Turn on role management for the roles you care about, then design the home screen for each one separately. From there, the app picks the right layout automatically, based on whoever’s signed in.

This article assumes you already have a working app with at least one home-screen button. If you’re starting from scratch, build the default home screen first, then come back here to split it by role.


How it works (the short version)

There are three moving parts:

  1. A list of “managed” roles. You tell MAM which WordPress roles deserve their own content; every role you leave off the list just falls back to the default layout.
  2. A per-role content set. Managing a role adds a Content for Role dropdown to the App Setup screen. Whatever you build while that role is selected gets saved against that role, and nothing else.
  3. Automatic runtime selection. When the app loads, MAM checks the signed-in user’s role and serves up that role’s buttons. No managed role — or no login at all — and they land on the special Any User Not Logged In layout, the public fallback.

Behind the scenes, each role’s buttons live in their own row, keyed by the role slug — so editing one role’s home screen can never touch another’s.


Step 1 — Turn on role management for the roles you want

  1. In WordPress admin, open Mobile App Manager → App Setup and go to the User Roles tab, where the User Roles Settings section lives.
  2. You’ll see a User Roles for Mobile App Content list with every WordPress role on your site (Administrator, Subscriber, Customer, plus any custom roles).
  3. For each role that should get its own home screen, set its dropdown to Yes. Leave the rest on No.
  4. Save.

Only the roles you flip to Yes become selectable down the line. The moment even one role is set to Yes, MAM switches into role-aware mode and the Content for Role picker shows up across the App Setup screens. Leave every role on No, and nothing changes — one home screen for everyone, same as before, with the per-role pickers staying out of sight.

Tip — start small. You don’t have to manage every role — just the ones whose experience actually differs (Customer and Vendor, say). Everyone else, along with every logged-out visitor, lands on the fallback layout.


Step 2 — Design the home screen for a role

  1. Open Mobile App Manager → App Setup and go to the Main Navigation (home screen) tab.
  2. At the top of the Home Page Design panel you’ll now see a Content for Role dropdown. It lists:
    • Any User Not Logged In — the public / fallback layout (see Step 4).
    • Each role you set to Yes in Step 1.
  3. Pick the role you want to edit.
  4. Add, reorder, and configure the home-screen buttons exactly as you normally would. Everything you do here is saved for the selected role only.
  5. Switch the dropdown to the next role and repeat.

Switch the dropdown, and the home-screen builder reloads with that role’s saved buttons. There’s no separate “save role” step tucked in here — your usual publish covers it, since each role’s content is stored independently.

Where this shows up in the app: the home screen is the app’s main navigation content — the app asks for the home layout for whoever’s currently signed in, and MAM hands back the buttons stored for that user’s managed role.


Step 3 — (Optional) Give each role its own left menu too

That same role split works on the slide-out left menu too, not just the home screen.

  1. In App Setup, go to the Left Menu tab.
  2. As on the home screen, you’ll see a Content for Role dropdown when role management is on.
  3. Select a role and build that role’s left-menu entries.
  4. Repeat for each role.

Home-screen content and left-menu content live separately, so two roles can share the same home screen but get completely different menus — or the other way around.


Step 4 — Set the fallback for logged-out and unmanaged users

The Any User Not Logged In entry in the Content for Role dropdown deserves special attention — it’s the layout the app falls back on for:

  • Anyone who has not signed in, and
  • Any signed-in user whose role you did not mark as managed.

Design this one — don’t skip it. It’s your safety net: if MAM can’t match a user to a managed role, this is what greets them. Leave it empty, and those users land on an empty home screen instead.

A pattern that works well: keep Any User Not Logged In lean and public — a sign-in prompt, a few public sections — and save the richer, member-only buttons for the specific managed roles.


Save time: clone one role’s content to another

Two roles starting from the same layout? You don’t have to rebuild it by hand.

  1. On the Main Navigation or Left Menu tab, select the role you want to populate in the Content for Role dropdown.
  2. Scroll to the Clone from Role control near the bottom of the builder.
  3. Choose the role you want to copy from.
  4. Click Clone.

The target role’s content for that location gets replaced with a copy of the source role’s — free to tweak from there without touching the original.

Heads-up — Clone overwrites. Cloning swaps out the selected role’s existing buttons for that location (home screen or left menu) with the copy, so make sure you’re fine losing what’s there. If the source role has no content set up yet, MAM will ask you to set that up first, rather than cloning an empty layout.


How the app decides which layout to show

This part is automatic — you won’t configure it — but it helps to know the order MAM checks things in:

  1. The app sends along the signed-in user’s identity when it loads.
  2. MAM looks up the user’s WordPress roles and finds the first managed role that user has.
  3. If a managed role matches, the app serves that role’s home screen and left menu.
  4. If no managed role matches — including when the user isn’t logged in — the app serves the Any User Not Logged In layout.

Matching stops at the first managed role it finds, so a user holding more than one managed role gets whichever one comes up first. Worth remembering when you’re deciding which roles to manage, especially if your users commonly wear more than one hat.


Previewing as a role

As an administrator, you can view the app as a specific user instead of just as yourself — handy for confirming a role’s home screen looks right before real users ever see it. In WordPress admin, go to Users → All Users, hover the user you want to check, and click the View as user on app row action. Since each user’s home screen is chosen by their role, viewing as someone who holds a managed role shows you exactly that role’s home screen and left menu. When you’re done, click Stop view as user on App on the same user to end the session.


Troubleshooting

The Content for Role dropdown never appears.
Role management only kicks in once at least one role is set to Yes back in Step 1. Double-check the User Roles Settings section and confirm your changes actually saved.

A user sees the wrong home screen.
Check that user’s WordPress role(s) — the app serves the first managed role it finds for them. If the role you expected isn’t set to Yes, that user falls through to Any User Not Logged In instead. And if they hold several managed roles, they’ll get whichever one matches first.

Logged-out users see an empty home screen.
The Any User Not Logged In layout hasn’t been designed yet. Head to Step 4 and build it out — it’s the fallback for everyone without a managed role.

A role’s home screen is blank even though I built it.
Double-check you had the right role selected in the Content for Role dropdown while you were building — content saves against whatever role was selected at the time. Re-select the role and confirm its buttons load.


  • Build your app’s home screen
  • Customize the left menu
  • User roles and app sign-in
  • Preview your app before publishing
Was this article helpful?
Contents

    Need Support?

    Can't find the answer you're looking for? Don't worry we're here to help!