Wie konfiguriere ich Wordpress, um das <script> -Tag in Posts verwenden zu können?

8

Ich suche nach einer Lösung, mit der ich Tags in Posts schreiben und sicherstellen kann, dass der visuelle Editor oder WordPress sie nicht ändert.

Das gleiche Problem kann für anderen spezifischen HTML-Code auftreten, den ich möglicherweise verwenden möchte.

Das Deaktivieren des visuellen Editors ist keine Option, da in die meisten Bearbeitungsvorgänge zu schwierig sind.

Sorin
quelle

Antworten:

6

Fügen Sie Ihrem Thema functions.php Folgendes hinzu:

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
quelle
3

Ich habe die oben akzeptierte Antwort ausprobiert und es hat bei WordPress 3.5.1 nicht funktioniert

Ich habe in wp-includes / kses.php nachgesehen und es wurde gesagt, dass der Filter 'wp_kses_allowed_html' verwendet werden soll. Das hat bei mir funktioniert. Sie können die Höhen- und Breitenattribute durch andere Skript-Tag-Attribute wie Typ, Sprache usw. ersetzen, je nachdem, welches Tag Sie einfügen möchten.

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.
quelle