Home › Toolset Professional Support › [Resolved] Hide Toolset buttons from the post content rich text editor for non-admins
Problem:
How to remove Toolset buttons from the rich text editor in Toolset Forms?
Solution:
You will need to add the following code to your theme's functions.php file, editing it as required:
/** * Remove Toolset buttons on front-end editors * which appear for role author+ when insert * media option set on CRED forms * * The filters work globally, so you need * to specify the pages where the * CRED form is added */ function remove_toolset_buttons(){ // $post not available with init hook $postID = url_to_postid( $_SERVER['REQUEST_URI'] , '_wpg_def_keyword', true ); $target_pages = array( 10, 25, 66 ); // Edit for pages with CRED forms if ( in_array( $postID, $target_pages ) ) { // remove the Fields and Views button add_filter( 'toolset_editor_add_form_buttons', '__return_false' ); // remove the CRED button add_filter( 'toolset_cred_button_before_print', '__return_false' ); // remove the Access button for certain roles add_filter( 'toolset_editor_add_access_button', function(){ $roles = array( 'author', 'subscriber' ); return $roles; } ); } } add_action( 'init', 'remove_toolset_buttons' );
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 |
---|---|---|---|---|---|---|
- | 7:00 – 14:00 | 7:00 – 14:00 | 7:00 – 14:00 | 7:00 – 14:00 | 7:00 – 14:00 | - |
- | 15:00 – 16:00 | 15:00 – 16:00 | 15:00 – 16:00 | 15:00 – 16:00 | 15:00 – 16:00 | - |
Supporter timezone: Europe/London (GMT+00:00)
Tagged: Content-submission forms, Toolset Forms
Related documentation:
This topic contains 4 replies, has 2 voices.
Last updated by PiotrO586 6 years, 4 months ago.
Assisted by: Nigel.
Hi,
In my form for adding/editing posts I enabled Add Media button. However, along with this button, the Toolset buttons appear for non-admin accounts. How to disable/hide them for non-admins? Is there any special hook?
Languages: English (English ) Spanish (Español )
Timezone: Europe/London (GMT+00:00)
Hi Piotr
The steps required for this are described in another ticket: https://toolset.com/forums/topic/removing-buttons-for-certain-user-roles-for-the-post-editor/
Can you try that and if you have any problems let me know.
I haven't tried it myself, I'd need to take a deeper look if you say it doesn't work as expected.
Hi Nigel,
I tried it, but no luck. Your link seems to concern back-end? Anyway, I meant front-end form and rich text editor included therein.
Languages: English (English ) Spanish (Español )
Timezone: Europe/London (GMT+00:00)
Sorry, I mis-read your message, the above solution was for the back-end, yes.
For front-end forms you need to do the following:
/** * Remove Toolset buttons on front-end editors * which appear for role author+ when insert * media option set on CRED forms * * The filters work globally, so you need * to specify the pages where the * CRED form is added */ function remove_toolset_buttons(){ // $post not available with init hook $postID = url_to_postid( $_SERVER['REQUEST_URI'] , '_wpg_def_keyword', true ); $target_pages = array( 10, 25, 66 ); // Edit for pages with CRED forms if ( in_array( $postID, $target_pages ) ) { // remove the Fields and Views button add_filter( 'toolset_editor_add_form_buttons', '__return_false' ); // remove the CRED button add_filter( 'toolset_cred_button_before_print', '__return_false' ); // remove the Access button for certain roles add_filter( 'toolset_editor_add_access_button', function(){ $roles = array( 'author', 'subscriber' ); return $roles; } ); } } add_action( 'init', 'remove_toolset_buttons' );
Can you try again?
Thank you Nigel, this works fine.