it-swarm.com.de

Beschränkung erlaubter HTML-Elemente/Entfernen schädlicher Skripte aus dem Editor

Wie kann ich die im Tinymce-Editor in Wordpress 3.1 zulässigen HTML-Elemente einschränken und sicherstellen, dass schädliche Skripte entfernt wurden (Skript-/Einbettungs-Tags usw.)?

1
EddyR

HTML-Filter anpassen:

<?php
function fb_change_mce_options($initArray) {
    // Comma separated string od extendes tags
    // Command separated string of extended elements
    $ext = 'pre[id|name|class|style],iframe[align|longdesc|name|width|height|frameborder|scrolling|marginheight|marginwidth|src]';
    if ( isset( $initArray['extended_valid_elements'] ) ) {
        $initArray['extended_valid_elements'] .= ',' . $ext;
    } else {
        $initArray['extended_valid_elements'] = $ext;
    }
    // maybe; set tiny paramter verify_html
    //$initArray['verify_html'] = false;
    return $initArray;
}
add_filter('tiny_mce_before_init', 'fb_change_mce_options');
?>

Anpassen der Funktion der Schaltflächen in Ihrem Editor:

<?php
function fb_change_mce_buttons( $initArray ) {
    //@see http://wiki.moxiecode.com/index.php/TinyMCE:Control_reference
    $initArray['theme_advanced_blockformats'] = 'p,address,pre,code,h3,h4,h5,h6';
    $initArray['theme_advanced_disable'] = 'forecolor';
    return $initArray;
}
add_filter('tiny_mce_before_init', 'fb_change_mce_buttons');
?>

Sprache der Rechtschreibung ändern:

<?php
function fb_mce_external_languages($initArray){
    $initArray['spellchecker_languages'] = '+German=de, English=en';
    return $initArray;
}
add_filter('tiny_mce_before_init', 'fb_mce_external_languages');
?>

Die Standardwerte von WordPress:

'mode' => 'specific_textareas'
'editor_selector' => 'theEditor'
'width' => '100%'
'theme' => 'advanced'
'skin' => 'wp_theme'
'theme_advanced_buttons1' => 'bold,italic,strikethrough,|,bullist,numlist,blockquote,|,justifyleft,justifycenter,justifyright,|,link,unlink,wp_more,|,spellchecker,fullscreen,wp_adv'
'theme_advanced_buttons2' => 'formatselect,underline,justifyfull,forecolor,|,pastetext,pasteword,removeformat,|,media,charmap,|,outdent,indent,|,undo,redo,wp_help'
'theme_advanced_buttons3' => ''
'theme_advanced_buttons4' => ''
'language' => 'de'
'spellchecker_languages' => 'English=en,Danish=da,Dutch=nl,Finnish=fi,French=fr,+German=de,Italian=it,Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv'
'theme_advanced_toolbar_location' => 'top'
'theme_advanced_toolbar_align' => 'left'
'theme_advanced_statusbar_location' => 'bottom'
'theme_advanced_resizing' => true
'theme_advanced_resize_horizontal' => false
'dialog_type' => 'modal'
'relative_urls' => false
'remove_script_Host' => false
'convert_urls' => false
'apply_source_formatting' => false
'remove_linebreaks' => true
'gecko_spellcheck' => true
'entities' => '38,amp,60,lt,62,gt'
'accessibility_focus' => true
'tabfocus_elements' => 'major-publishing-actions'
'media_strict' => false
'paste_remove_styles' => true
'paste_remove_spans' => true
'paste_strip_class_attributes' => 'all'
'wpeditimage_disable_captions' => false
'plugins' => 'safari,inlinepopups,spellchecker,paste,wordpress,media,fullscreen,wpeditimage,wpgallery,tabfocus'

Ich hoffe das hilft dir. Sie sollten in der Lage sein, so gut wie alles zu ändern, was Sie möchten.

3
Will Ashworth