Sauter la navigation

[Résolu] Problemas a la hora de actualizar plugins de toolset

This support ticket is created Il y a 7 années et 1 mois. There's a good chance that you are reading advice that it now obsolete.

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)

Ce sujet contient 23 réponses, a 2 voix.

Dernière mise à jour par Nigel Il y a 7 années et 1 mois.

Assisté par: Nigel.

Auteur
Publications
#590576

Hola Nigel, sobre el tema de las actualizaciones, yo no digo que realmente el problema sea actualizar los plugins de toolset yo solo explico unos hechos que me han sucedido. como a pasado en algún caso anterior de mis tikets, puede ser se descubra el problema y no se lo que yo me pensaba sobre las actualizaciones. Solo digo des de mi inexperiencia lo que me encontrado.

En los backups buscaré si tengo con los plugins anteriores para poder detectar el problema. te digo alguna cosa.
Sobre el problema del botón de importar imágenes, está en un formulario del Front-end creado con "forms" tiene un Post Field Group de los cuales puse un editor de texto (WYSIWYG). La configuración del formulario hay un checkbox donde dice "Allow Media Insert button in Post Content Rich Text Editor" también está seleccionado y sigue sin aparecer. también he mirado en el apartado de accesos y he mirado que en el media tenga permisos del role="Nivell 2. Anuncis i ofertes" para modificar, te adjuntado imagen en el ticket anterior y sigue sin aparecer.
Saludos.
Rafa Corts

#590622

Nigel
Supporter

Les langues: Anglais (English ) Espagnol (Español )

Fuseau horaire: Europe/London (GMT+00:00)

Screen Shot 2017-11-17 at 13.52.55.png

Hola Rafa

Es difícil ver el problema porque es tan complicado ver los formularios en el front end.

Siempre veo este mensaje cuando visito la página crea un anunci, p.j.

"No tens permisos per poder accedir aquest lloc, neccesites tenir un nivell com ha mínim del Nivell 2. Anuncis i ofertes and Nivell 3. Venda de productes (E-commerce) , si vols accedir per fer un canvi de nivell selecciona:
Canvi de nivell de subscripció"

He creado una página de prueba donde he metido el formulario formulario-para-anuncis para poder visitarla como administrador sin condiciones, y sale normal con el Media Insert botón.

He intentado visitar la misma página como otro usuario ("fruites mary") y no pudo ver el formulario.

Cambié los opciones Access para que un usuario con sus roles puede ver el formulario, pero es complicado por tener multiples roles con nombres parecidos (ve el pantallazo). Era necesario da permisos a los roles "Nivell 2. Anuncis i ofertes (Sense moure un dit)" y "Nivell 3. Venda de productes E-commerce (Sense moure un dit)".

Ahora pudo ver el formulario, pero no el botón.

También era necesario da permiso a estes roles para manejar media.

Pero hay un limitación (de WordPress) que el tipo de entrada Media no puede tener permisos más generosos que el tipo de Posts estandar, entonces es necesario dar los mismos permisos a Posts que a Media.

Entonces veo el botón cuando visito el formulario con el usuario "fruites mary".

#590637
Captura de pantalla 2017-11-17 a las 16.02.19.png

Hola Nigel, primero muchas gracias por ayudarme, estoy muy agradecido. Respeto al ticket anterior, me dices que no podías acceder para crear un anuncio, resulta que no se puede crear un anuncio asta que no se haya creado un centro y el centro lo tenia de pruebay lo he dejado en borrador y por esto no podias, disculpas.
Ahora según lo que me has dicho "Pero hay un limitación (de WordPress) que el tipo de entrada Media no puede tener permisos más generosos que el tipo de Posts estandar, entonces es necesario dar los mismos permisos a Posts que a Media."

Segudamente he dado los permisos correspondientes en los medias y en las entrada.

Ahora si que puedo ver el botón de importar imágenes, bien. Nos vamos acercando, los plugins anteriores no era necesario dar permisos a las entrada para poder crear un formulario y poner imagenes. esto puede ser uno de los cambios de versión. Aquí sería la explicación porque antes podia y ahora no me dejaba.

Ahora surge otro problema, con la nueva versión se ven ahora 4 botones: insertar medios, cred Forms, Fields and Views, Access. Yo sol quiero que tengan los usuarios el botón de insertar medios, es posible anular los otros 3 botones?
Te dejo una imagen.
Gracias por todo.
Rafa corts

#591460

Hola Nigel, haber si me puedes decir alguna cosa sobre :
Con la nueva versión se ven ahora 4 botones: insertar medios, cred Forms, Fields and Views, Access. Yo sol quiero que tengan los usuarios el botón de insertar medios, es posible anular los otros 3 botones?
Gracias por todo.
Rafa corts

#591485

Nigel
Supporter

Les langues: Anglais (English ) Espagnol (Español )

Fuseau horaire: Europe/London (GMT+00:00)

Disculpe Rafa

Contesté ayer pero me parece que sela ha perdido, tenemos unos problemas con el servidor del foro.

Entonces, te repito.

Estos botones solo aparecen cuando tienes activado el botón de Media (como quieres), pero puedes ocultarlos con el código siguiente:

/**
* 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 will need
* to add a test, e.g. for the page 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' );

Tendrás que editar $target_pages con los ID's de las páginas que contiene un formulario CRED, y $roles para los roles para los cuales quieres ocultar el botón de Access.

#591616

Hola Nigel, gracias por el esfuerzo y el codigo.
Con este codigo entiendo que desaparecen los botones, "cred Forms" , "Fields and Views" y el botón "Access" desaparecerá según el rol que ponga. En este caso con el rol "Nivell 2. Anuncis i ofertes" desapareceria el boton 'access' esto es hacin?

De hecho no consigo eliminar el botón "access", solo me interesa el de insertar media.
También estoy observando que cuando un usuario inserta una imagen con este botón, antes solo se podía ver todas las imágenes que había importado un mismo autor. Ahora cuando importas una imagen en la mediateca se puede ver todas las imágenes sin ninguna restringion. hay alguna forma para poder limitar las imagenes que solo se puedan ver sus propio autor.
Seria con el Rol 'Nivell 2. Anuncis i ofertes'. Ya que con el rol de administración ya me interesa que se pueda ver toda la mediateca.
Saludos.
Rafa corts

/**
* 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 will need
* to add a test, e.g. for the page 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( 'Nivell 2. Anuncis i ofertes' );
            return $roles;
        } );
    }
}
add_action( 'init', 'remove_toolset_buttons' );
#591681

Nigel
Supporter

Les langues: Anglais (English ) Espagnol (Español )

Fuseau horaire: Europe/London (GMT+00:00)

Hola Rafa

Como tienes muchos roles he cambiado el código para que tienes que especificar los roles que deben poder ver el botón de Access (p.j. administrator y editor):

/**
* 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 will need
* to add a test, e.g. for the page 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(){
            global $wp_roles;
            $all_roles = array_keys($wp_roles->roles);

            $retain_roles = array('administrator', 'editor'); // Edit roles which should see button 

            $exclude_roles = array_diff( $all_roles, $exclude_roles );

            return $exclude_roles;
        } );
    }
}
add_action( 'init', 'remove_toolset_buttons' );

Me acaba de dar cuenta que el asunto de este hilo ha cambiado bastante.

Disculpe la molestia pero ¿puedes abrir un hilo nuevo para el cuestión de el contenido de la galería de Media?

Saludos

#592240

Hola Nigel, perdona por si no me explico bien, yo lo que necesito es que solo se muestre el botón de "Media", el de Access tambien debe estar oculto. Solo se mostraran todos los botones con el rol de administrador.
Saludos.
Rafa Corts

#592415

Nigel
Supporter

Les langues: Anglais (English ) Espagnol (Español )

Fuseau horaire: Europe/London (GMT+00:00)

Hola Rafa

¿Probaste el código? Es lo que debe hacer (solo tendrías que editar $retain_roles para incluir 'administrator' y nada más).

Bueno, intento de nuevo con algo más sencillo.

/**
* Remove Toolset buttons on all front-end editors
* except for Administrators 
*/
function remove_toolset_buttons(){
   
    if ( !is_admin() && !current_user_can( 'manage_options' ) ) {

        // 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(){
            global $wp_roles;
            $all_roles = array_keys($wp_roles->roles);
 
            return $all_roles;
        } );
    }
}
add_action( 'init', 'remove_toolset_buttons' );

Este eliminará los botones en cualquier editor del front end para todos los roles menos administrador. No hay nada editar.