¿Cómo configurar Wordpress para poder usar la etiqueta <script> dentro de las publicaciones?

8

Estoy buscando una solución que me permita escribir etiquetas dentro de las publicaciones y asegurarme de que el editor visual o wordpress no las altere.

El mismo problema puede aplicarse a otro código HTML específico que quiera usar.

Deshabilitar el editor visual no es una opción, ya que en la mayoría de las operaciones de edición será demasiado difícil de usar.

Sorin
fuente

Respuestas:

6

Agregue lo siguiente a su tema functions.php:

function fb_change_mce_options($initArray) {
    $ext = 'script[charset|defer|language|src|type]';

    if ( isset( $initArray['extended_valid_elements'] ) ) {
        $initArray['extended_valid_elements'] .= ',' . $ext;
    } else {
        $initArray['extended_valid_elements'] = $ext;
    }

    return $initArray;
}
add_filter('tiny_mce_before_init', 'fb_change_mce_options');
sorich87
fuente
3

Intenté la respuesta aceptada arriba y no me funcionó en WordPress 3.5.1

Miré dentro de wp-includes / kses.php y me dijo que usara el filtro 'wp_kses_allowed_html'. Esto terminó trabajando para mí. Puede reemplazar los atributos de alto y ancho con cualquier otro atributo de etiqueta de script, como tipo, idioma, etc., dependiendo de la etiqueta que esté intentando insertar.

function allow_script_tags( $allowedposttags ){
  $allowedposttags['script'] = array(
      'src' => true,
      'height' => true,
      'width' => true,
    );
  return $allowedposttags;
}

add_filter('wp_kses_allowed_html','allow_script_tags', 1);
Anthony R.
fuente