Skip Navigation

[Resolved] Se ejecuta codigo en html en el backend.

This support ticket is created 4 years, 3 months ago. 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)

This topic contains 5 replies, has 2 voices.

Last updated by Nigel 4 years, 2 months ago.

Assisted by: Nigel.

Author
Posts
#1787463

Estaba poniendo unas redirecciones dentro de un layout para que dependiendo unas condiciones se redirigiera a una web o otra y resulta que al entrar a editar con la nueva version de wordpress, el codigo del layout se ejecuta cuando intentas editar la plantilla.

He podido bloquear si ejecucion dandole rapidamente a parar la carga. Pero esto es muy extraño

Cuando meto esta intruccion automaticamente se ejecuta. en modo editar plantilla
<meta http-equiv="refresh" content="0; url=[wpv-post-url]/?layout_id=1168">

#1788459

Nigel
Supporter

Languages: English (English ) Spanish (Español )

Timezone: Europe/London (GMT+00:00)

No entiendo, ¿dónde metes este meta tag?

Un meta tag va dentro del head tag, entonces tendrías que editar el header.php, no entiendo lo que haces.

#1788627

Bascaimente el sistema tiene paciente que son de un determinado medico(autor) entonces is alguien que no es ese autor entra en el paciente de otro medico un condicional comprueba si es su propietario y si no lo es muestra el este codigo y lo redirige automaticamente al menu de inicio o donde nos interese.

Desde esta ultima actualizacion, codigos html se ejecutan en el backend en tiempo de edicion del layout, cuando no deberia ser asi, Si pongo ese codigo dentro de un formulario una vista o una pagina no ocurre nada, pero dentro de un layout en tiempo de edicion, se ejecuta el solo.

#1790063

Nigel
Supporter

Languages: English (English ) Spanish (Español )

Timezone: Europe/London (GMT+00:00)

Disculpe, habia un problema en nuestra sistema ayer y no pude contestar.

Pues, primero, me parece que este no es nuevo, lo probé con los plugins corrientes y con versiones anteriores con la misma resulta.

De todas formas, como ya dije, no es válido incluir un meta tag dentro del body tag, es válido solo en el head: hidden link

Entonces no es algo que los desarrolladores van a "arreglar".

Lo que quieres es que solo el autor de una entrada puede verla, ¿correcto?

Creo que debes usar un poco código particular, así:

add_action( 'template_redirect', 'ts_maybe_redirect' );
function ts_maybe_redirect(){

    if ( is_singular( 'my-post-type' ) ) // editar slug de tipo de entrada
    {
        global $post;
        if ( $post->post_author != get_current_user_id() && !current_user_can( 'administrator' ) )
        {
            wp_redirect( home_url() );
            die;
        }
    }
}

Este permite solo los autores (y administradores) ver entradas de el tipo especificado.

#1790159

SI eso funciona en el frontend, pero el problema que no se por que desde la ulltima actualizacion, si pongo el codigo en el backend para programar la estructura, el codigo se ejecuta, cuanto antes nunca lo ha hecho, y no pasa ni en los formularios, ni las vistas, ni en las paginas cuando programas. Solo en el layout si tu vas a crear un nuevo layout y escribes lo que yo he puesto. en el momento que le das a guardar se ejecuta el codigo por que si. Pero si eso lo haces en un form , en una vista o en una pagina no ocurre nada.

#1790197

Nigel
Supporter

Languages: English (English ) Spanish (Español )

Timezone: Europe/London (GMT+00:00)

Entiendo, y veo el mismo (pero es igual con versiones anteriores de los plugins en mi sitio de prueba), pero no importa, por que lo que haces no es válido, un tag meta solo se permite en el head, no en el body.

Hablé con los desarrolladores este mañana sobre este tema y dicen que tienen plan para facilitar este funcionalidad (permitir solo los autores ver sus propios entradas) en el futuro.

De momento debes usar código como ya te he demostrado...