I have a form that only logged in users can use. I’m trying to find a way to allow logged in users to see the entries for that form, but only those entries that were sent by them, not all entries for the form.
I have realised that “User” is one of the columns you can assign on the entries table viewing, so I was wondering if there is an easy way (I couldn’t find any hooks or filters to do that) to only display the entries where the user is the current logged user.
What you’re asking about is easy to set up using GravityView and our Advanced Filtering Extension, included in the Core + Extensions or All Access licenses. You can have administrators able to view and edit all entries, and then non-admins only able to view and edit entries they created.
The Status Page will show users only entries they have submitted.
The Inbox Page will show only entries that are currently assigned to a user for action. See user input step type or approval step type as examples of these.
Both can be filtered to show per form(s) or other values in case you need to provide additional granular options. For cases where you have built a workflow with them, you can also define which fields are displayed to the entry creator while their entry moves through its workflow (Start Step Configuration) allowing you to use both hidden and administrative fields for your staff while the customer only sees the subset of fields that were on display in the initial form submission (or less).