3

I have a structure section that is driving the majority of a site, which works great with multiple entry types letting us handle different needs across different areas of the site.

The client now wants a new user group that can only access pages in one particular area of the site. as user group access is tied to sections without granular control of entry types within each section, that means we need a wholesale refactor of the way the site is built and managed, which is going to be a real headache at this point.

Does anybody have any approaches for this?

1 Answer 1

2

When you mention new user group, is that a new group of admins/back end users or just people browsing on the front end?

If it's on the front end, just checking the logged in user's group in twig against a new restricted entry type could give you want you want.

{% if entry.type == "restrictedEntryType" and currentUser and currentUser.isInGroup('newUserGroup') %}

   {# let them through #}
   {% include "whatever/restricted_content.html" %}

{% else %}
   <p>Thou shall not pass! You need to log in to see this content.</p>
{%endif%}

If it's the back end, like you said, you'd have to do a serious refactor to manage it properly. Put all the restricted content in one structure and only give access to admins/users you want to have edit the content. You may end up doing that anyway just to keep everything sane, depending on how siphoned off your content is.

To move a structure from one section to another, check out Brandon Kelly's canonical answer.

1
  • 1
    Sorry, backend. Having a single structure is a great solution for the client at present as they can control the complete content architecture of the site and navigation is dynamic. Moving to individual structures places some limitations on that, so I was hoping to avoid it.
    – Russ Back
    Commented Sep 8, 2015 at 7:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.