Wordpress extended_valid_elements для тега script?

Кто-то может сказать мне, как сказать tinymce редактору Wordpress НЕ разделять теги script? Я заглянул wp-admin/includes/post.php и добавил

'extended_valid_elements'=>'script[charset|defer|language|src|type]',

к $initArray.

Когда я делаю источник представления на редакторе сообщения CMS, я вижу, что он действительно обнаруживается как так:

<script type="text/javascript">
/* <![CDATA[ */
tinyMCEPreInit = {
    base : "http://dev.esolar.ca/wp-includes/js/tinymce",
    suffix : "",
    query : "ver=327-1235",
    mceInit : {
        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,|,charmap,|,outdent,indent,|,undo,redo,wp_help", 
        theme_advanced_buttons3:"", 
        theme_advanced_buttons4:"", 
        language:"en",
        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:"1", 
        theme_advanced_resize_horizontal:"", 
        dialog_type:"modal", 
        relative_urls:"", 
        remove_script_host:"", 
        convert_urls:"", 
        apply_source_formatting:"", 
        remove_linebreaks:"1", 
        gecko_spellcheck:"1", 
        entities:"38,amp,60,lt,62,gt", 
        accessibility_focus:"1", 
        tabfocus_elements:"major-publishing-actions", 
        media_strict:"", 
        paste_remove_styles:"1", 
        paste_remove_spans:"1", 
        paste_strip_class_attributes:"all", 
        wpeditimage_disable_captions:"", 
        plugins:"safari,inlinepopups,spellchecker,paste,wordpress,media,fullscreen,wpeditimage,wpgallery,tabfocus"
    },
    load_ext : function(url,lang){
        var sl=tinymce.ScriptLoader;
        sl.markDone(url+'/langs/'+lang+'.js');
        sl.markDone(url+'/langs/'+lang+'_dlg.js');
    }
};
/* ]]> */
</script>

Но по некоторым причинам, мой редактор все еще не сохраняет <script> теги. Что я делаю неправильно?

5
задан brasofilo 31 March 2014 в 10:30
поделиться

2 ответа

У меня была аналогичная проблема с фреймами iframe. Я думаю, что вместо <атрибутов сценария> это может быть [атрибуты сценария] . Вам нужно будет найти синтаксис

0
ответ дан 14 December 2019 в 18:59
поделиться

Это связано с KSES фильтрацией перед сохранением вашего сообщения в БД.

В файле functions.php вашей темы глобализируйте переменную $allowedpostags, затем добавьте теги, которые вы хотите разрешить, следующим образом;

 global $allowedposttags;
 $allowedposttags['script'] = array(
     'type' => array(),
     'src' => array()
 );

Обратите внимание на структуру массива и тот факт, что вы должны указать разрешенные атрибуты.

5
ответ дан 14 December 2019 в 18:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: