Home › Toolset Professional Support › [Resolved] Permission denied for editing forms
This is the technical support forum for Toolset - a suite of plugins for developing WordPress sites without writing PHP.
Everyone can read this forum, but only Toolset clients can post in it. Toolset support works 6 days per week, 19 hours per day.
Sun | Mon | Tue | Wed | Thu | Fri | Sat |
---|---|---|---|---|---|---|
- | - | 14:00 – 20:00 | 14:00 – 20:00 | 14:00 – 20:00 | 14:00 – 20:00 | 14:00 – 20:00 |
- | - | - | - | - | - | - |
Supporter timezone: Asia/Ho_Chi_Minh (GMT+07:00)
Related documentation:
This topic contains 29 replies, has 4 voices.
Last updated by FelipeP5703 5 years, 8 months ago.
Assisted by: Beda.
I am trying to:
I've created a Page with Elementor named Minha Conta (my account) which is suppose to be the page for users to be able to edit their post content after logging in.
Using Elementor, I included the Toolset Forms (see picture). On the editor you can see the Formulário para Editar Anúncio (Edit Ad form, which I created on Post Forms). I also included another form underneath for editing the user's profile (see pic), so the user can edit his/her email and the post content form on the same page.
After creating a fake profile and logging off then logging in with the user profile, the login takes me to Minha Conta (correct) but it shows Permission Denied on the editing content form but not on the edit profile form. It also shows the wordpress dashboard option on top that I don't want to show (see pic).
Also I added the Logout (Sair) button on top but it doesn't work correctly. It should log the user out and take them to their Ad. (See pic)
Link to a page where the issue can be seen:
hidden link
Try creating a fake profile Ad, I'll approve it and you will see what I mean.
I expected to see:
Once the user creates a profile, we approve it, then he/she clicks on Login on the home page, they login, it should take him/her to the Minha Conta (my account) page where they can edit their post and user forms.
Instead, I got: Permission denied (See pic)
Since I'm using Elementor to create Minha Conta (my account), I believe the directions on this page (https://toolset.com/documentation/getting-started-with-toolset/publish-content-from-the-front-end/forms-for-editing/) is not useful.
Unless I'm not doing the correct workflow on the back-end. Also I allowed Authors to edit and delete their own posts only using Access.
Not sure what to do anymore. If you need access to the site, please let me know.
then he/she clicks on Login on the home page, they login, it should take him/her to the Minha Conta (my account) page where they can edit their post and user forms.
This Form element is setup to modify "the current post" (see form.png). However, the current post is the Minha Conta Page, not an Anuncia post. That's why admins see a message that the form type and post type are mismatched (see mismatch.png).
The recommended approach is to create a View that shows Anuncia posts and include an "Edit Post" link in the loop. Create a Template for Anuncia posts using Elementor Pro and include a post content element. See Nigel's comment here for an explanation:
https://toolset.com/forums/topic/front-end-content-editing-forms-built-with-cred-embedding-in-elementor-single/
Let me know if you have questions about this and I'll be glad to help.
I will try the recommended approach but what I really wanted is this:
Client logins in - > goes to Minha Conta (My account) -> there he/she can see his/her profile info (similar to a dashboard) and how many Ads, he/she has as a list -> then he/she can click on the edit button next to the Ad he/she wants to edit -> it will take them to the form with all their info already filled in (just like the sign up form) and they will only be able to edit there.
Similar to the pic attached.
Is this possible?
I want to allow some users to be able to change their photos while others I want to restrict it. It will depend on each user.
If so, I would like the steps for that please. I want to make this so simple for my client so they cannot make any mistakes.
Client logins in - > goes to Minha Conta (My account) -> there he/she can see his/her profile info (similar to a dashboard) and how many Ads, he/she has as a list -> then he/she can click on the edit button next to the Ad he/she wants to edit -> it will take them to the form with all their info already filled in (just like the sign up form) and they will only be able to edit there.
This sounds like what I described, so I'm not sure I understand what the differences would be and why the recommended approach doesn't work. The profile page can include profile information as well as the List of Ads. The List of Ads in your terminology is basically a View in Toolset. The Edit button next to the ad is an edit post link in the loop as I mentioned. That link directs the User to an editing Form where they can edit the post.
I want to allow some users to be able to change their photos while others I want to restrict it. It will depend on each user.
Their photos - are you talking about photos associated with a User's profile, like custom image fields? Or photos associated with each Ad? At any rate, you can accomplish this with two Forms. In one Form, you can include the fields to modify photos. In the other Form, you can delete those fields. Then depending on some arbitrary criteria like User role, you can use conditional HTML to display different Forms for different Users. We have information about conditional HTML available here: https://toolset.com/documentation/user-guides/conditional-html-output-in-views/
Ok Christian, I have done some testing and I can't seem to get it. Here is what I did
I created two views
- Meus Anúncios (My Ads) where it should show all the Ads that Author created with some Edit links (which I could not figure out which edit link were, so I created three to test)
- Single Anuncio Editar (Edit Single Ad) which should show the Cred Form to Edit the Ad post
Pages:
- Minha Conta (My account) which shows the Meus Anúncios View with the Edit links
- Formulário para Editar Anúncio (Form to edit Single Ad) which I added the Single Anuncio Editar View to it. (This seems to be working correctly)
Now my issue is the Edit button on Minha Conta. As you can see on the screenshot, I created three links to test which one would go to the correct page (Formulário para Editar Anúncio), but the first link takes me to WP dashboard (no bueno), and the other two links take me to the AD itself with no editing capabilities.
I'm not sure where to go from here. Please enlight.
Also this:
Create a Template for Anuncia posts using Elementor Pro and include a post content element.
I don't know what you mean by "post content element." I really don't want to create a template from Toolset, I would like to create an Elementor Template instead.
Thanks for the help, and looking forward to your reply.
P.S. - I'm not 100% sure if the queries on the views I created are correct. 🙁
I don't know what you mean by "post content element." I really don't want to create a template from Toolset, I would like to create an Elementor Template instead.
When you are designing an Elementor Template, there is an element called "Post Content". I am attaching a screenshot here. You must place this Post Content Element somewhere in your Elementor template. Otherwise, the edit form will not be displayed, and the behavior will be like you described - it will simply link to the post with no ability to edit.
I have both the free version and the pro version of Elementor, and both are up to date and that widget does not show. See attachment.
I have sent Elementor an email about it. Let's see what they say.
Ok so they have replied. The Single Post Content works on the Single Post Template only on the Theme Builder.
So I added it to the Single post template named Modelo para Anúncios (Template for Ads). Now the link I added before on the Views to edit the post works. The only problem is that it shows the Ad at the bottom of it. (See Image).
Is there anyway to just show the form without the Ad underneath? And without the images? I created a condition that should only show the images if we approve it.
All I wanted is when the client clicks Edit, they would be taken back to the form they first filled out with their info already in it. Is it possible? If so, how?
Thanks
Hi Felipe,
Christian is out today but should return tomorrow to continue assisting.
Thanks,
Shane
I need to ask if this issue persists without Toolset, because if I understand you right, the Ad is added to an Elementor Template, and that Ad is also not built with Toolset.
It would hence not be an issue we can resolve.
The View itself is just a ShortCode that is showing a list of things on any place you insert it.
If the Ads are working only on single posts templates, it means those are not shown thru the View but with Elementor, hence, you would have to ask them how to remove it.
I am sorry if I misinterpret the issue. Please let me know.
Beda, maybe if I explain it better. I'm using Elementor Theme Builder to create the Ads Template because I'm not a coder and I've used Elementor for quite some time now. So I'm more familiar with Elementor than Toolset.
I thought I could build the pages, posts, etc with Elementor and use Toolset for the custom fields which would fill the template (Elementor's) with the intended info I needed.
So my progress with this was, I created a form (using Toolset) and used Toolset View plugin in an Elementor page named "Formulario para Novo Anuncio" (Registration form for new Ad) where the client would create an account by giving me their name and email, after completion, the form would take them to another Toolset form named "Formulario de Anuncio" (Ad form) which would be the required fields to create an Ad (Also just used Toolset View to a page.)
Now to display the Ad, I created an Elementor Single Template using shortcode widget and calling Toolset custom field by Dynamic link with Elementor, so I can create the look I want (I probably would not be able to create the same look with Toolset because again I'm not a coder).
I also created a page "Minha conta" (My account) where the User would login and change his/her Ads information. Created a View (Meus Anuncios) to show the user's Ads that was created by him/her and added an Edit link.
What I wanted is that Edit link to take them to the Ad form (Formulario de Anuncio) with their info already there and they would just change it. I do not want to confuse them by showing their Ad on the same page. That's where I'm having an issue.
Is this possible?
But from reading what you wrote, what I'm getting is that I would have to create a View to display ALL custom fields (in the format that I want, which requires coding) and add it to Elementor's Single Template. Is that correct?
Beda,
I tried your way. I put on draft Elementor's Single Template and created a Content Template using Toolset. Now when clicking the edit button it takes me to the form like it should BUT Feature Image is showing (in a big way) but in the wrong location and I can't change it. Now I have to code the html and css to the way I want. (For a tool that claims it's for non-coders, it's sad to know I have to code, not cool way to advertise it)
I also set a conditional display which is not working. On the editing form I put a conditional output to show or hide the feature image and the extra photos the client wants to change IF the field for allowing the client to change the pictures would be yes. (See images). The field to allow/disallowed is in the dashboard and not in the form. I want to allow some users to change their pictures and other to not change it, how do I do that?
Thanks for all your help
New threads created by Beda and linked to this one are listed below:
https://toolset.com/forums/topic/i-set-a-conditional-display-which-is-not-working/
1. BUT Feature Image is showing (in a big way) but in the wrong location and I can't change it
This cannot be changed by Toolset, because Toolset does not take over the template, instead only the_content() part.
The theme decides where to display the Featured Image and Title, you can only overwrite the_content() with Toolset
If the Theme offers options to remove the Featured Image you might use that, otherwise creating a Child Theme and a Child Template for the single posts would be the way to go.
2. I also set a conditional display which is not working.
Please follow up in the split ticket here, as we do not handle more than one issue each topic:
3. I thought I could build the pages, posts, etc with Elementor and use Toolset for the custom fields which would fill the template (Elementor's) with the intended info I needed.
Sure, this is possible.
You create templates with Elementor and use their Dynamic Inputs or our ShortCodes to display the Fields (and other data) of Toolset
4. What I wanted is that Edit link to take them to the Ad form (Formulario de Anuncio) with their info already there and they would just change it. I do not want to confuse them by showing their Ad on the same page. That's where I'm having an issue.
This is perfectly possible.
I misunderstood that you are using Ads as "Google Ads" for example.
I however now understand these are just simple Custom Posts?
In that case, you will create a Form as you did, to create these posts.
Then, a View for example that lists all those posts can hold an edit link that leads to the EDIT Form of Toolset for those Posts.
ALL data will be in that Form and the Ad (which is a post) will not show along with it, UNLESS you added the content to the same page/post where the form will show. Since edit forms usually are on the very post, Toolset removes the content and replaces it with the Form.
This is the same in Elementor. You will have to include the content widget of Elementor and also our Form
Then when you use the Form from a link the content will be removed and the form is shown.
See:
https://toolset.com/forums/topic/front-end-content-editing-forms-built-with-cred-embedding-in-elementor-single/
https://toolset.com/documentation/getting-started-with-toolset/publish-content-from-the-front-end/forms-for-editing/
https://toolset.com/documentation/user-guides/using-toolset-with-elementor-page-builder/
5. To create a list of things (In a View) you need to use Toolset Views, and in there, Elementor is not allowed, that is correct.
Hence you will either use Custom HTML or the "Loop wizard" to create the Views Loop (which will include your edit link to the Form). Then, that View can be inserted to an Elementor Template and shown on the front end.
Once clicked - the edit link will load the single post to edit, and replace the Elementor Template's Content Widget with our Form.
If you require more help on this, please let me know.
I also apologise if I am repeating things that are already clear to you or misunderstand others.
I could also setup an example, however this would be a minimal example, on your site (maybe better a test site) where I would need the Elementor Templates to be created already.
Thank you for your continued patience.
Beda,
Sorry, I thought I had replied to this thread before.
You create templates with Elementor and use their Dynamic Inputs or our ShortCodes to display the Fields (and other data) of Toolset
So that's what I did. I created a template using Elementor assigned for the custom post (Anuncios) using Elementor's Dynamic inputs for custom fields.
But, the issue is when I do that, the content is not replaced by Toolset. It stays there and the Editing Form, shows (either below or above, depending on where I put the Post Content widget). I did not want to show the content, and only show the Editing Form.
Is that possible, if so, how?
Thank you
Either it will show the content or if the URL with Forms edit parameters is called, the form.
Both together only happens if the Form is not called as expected.
Can I get a copy of this site to see how to solve this?
I'll need to minimalize the impact of other software and take apart the site, which is not possible on a live site or online testing site.
If possible create a duplicate like shown here https://toolset.com/faq/provide-supporters-copy-site/ and elaborate where I can see the issue on it so I can test and fix it or update you with better approaches.