相关文章推荐
犯傻的水龙头  ·  wordpress_entrypoint.s ...·  2 周前    · 
含蓄的消防车  ·  Contact Form ...·  6 月前    · 
忧郁的海龟  ·  WordPress ...·  6 月前    · 
好帅的领带  ·  第6章 ...·  1 年前    · 
刀枪不入的感冒药  ·  孙鑫 ...·  1 年前    · 
悲伤的茄子  ·  android - Make ...·  1 年前    · 

Wordpress管理面板上的jQuery错误(tinyMCE未定义)。

4 人关注

在将Wordpress从3.2升级到3.5之后,我在管理方面出现了jQuery错误。 以下是这个错误。

Error: ReferenceError: tinyMCE is not defined
Source File: http://domainname.com/wp-includes/js/tinymce/langs/wp-langs-en.js?ver=345-20111127

有没有人可以帮助我?谢谢

2 个评论
似乎你安装的一些插件不支持WordPress 3.5
jquery
wordpress
seniel441
seniel441
发布于 2013-01-16
4 个回答
killer77
killer77
发布于 2019-01-19
0 人赞同

最好是使用声明。

define('CONCATENATE_SCRIPTS', false); 

wp-config.php中。

Mar
Mar
发布于 2019-01-19
0 人赞同

在读了一百万个关于关闭所有东西、重新安装所有东西、在键盘上挥舞鸡骨头和在肩膀上撒盐的帖子后,我决定认真起来。

tinyMCE未被定义正是这个意思。 假设:它从未被加载。 检查页面源码中的 http://yourdomain.com/wp-includes/js/tinymce/tiny_mce.js?ver=359-20131026'> 或其他一些 tiny_mce.js 的脚本标签。 我打赌你没有这个标签。 如果你有,这就不是你的解决方案了。 如果你没有,请继续阅读。

我找到了应该在你的页面中放置js标签的代码,在...\wp-includes\class-wp-editor.php。

有一个if块 "if ( $compressed ) {...",当$compressed = 1时,它将加载 ...\wp-includes\js\tinymce\wp-tinymce.php到js标签(不工作),或者当$compressed = 0时,加载 ...\wp-includes\js\tinymce\tiny_mce.js. 所以我在if块之前设置$compressed = 0来强制调用else。 这就解决了我的问题。

这是一个简单的修复,如果它不能解决你的问题,也很容易被逆转,而不会有破坏WP生态圈中其他东西的风险。

3Dom
唯一有效的解决方案。当我们需要编辑核心文件时,一定要喜欢它。伟大的工作,Wordpress!
dale3h
dale3h
发布于 2019-01-19
0 人赞同

在我的情况下,禁用我在 functions.php 中做的defer javascript增强功能,导致加载编辑页面时这个错误消失。

James Cushing
James Cushing
发布于 2019-01-19
0 人赞同

对于任何其他遇到这种情况并有点拔苗助长的人,@dale3h的回答是我的解决办法。

如果你在 functions.php 中有一个函数与 script_loader_tag 过滤器挂钩,并且不总是返回原始标签标记的适当部分,或者有某种错误,就会使一些脚本无法加载,因为要输出到页面的脚本要先经过这个过滤器。

为了避免这种情况,我做了一些事情,就是根据我想赋予它们的额外属性,将脚本处理列入白名单,这样就可以有条件地完成工作(让所有其他的脚本保持完整)。

// Manage extra attibutes for enqueued scripts
function foo_script_extras( $tag, $handle, $src ){
    $whitelist = array(
        'js-font-awesome-core'  => array(
            'sri'   => 'sha384-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
            'defer' => true
        'js-font-awesome-light' => array(
            'sri'   => 'sha384-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
            'defer' => true
        'js-popper'             => array(
            'sri'   => 'sha384-cs/chFZiN24E4KMATLdqdvsezGxaGsi4hLGOzlXwp5UZB1LY//20VyM2taTB4QvJ'
        'js-bootstrap'          => array(
            'sri'   => 'sha384-uefMccjFJAIv6A+rW+L4AHf99KvxDjWSu1z9VI8SKNVmz4sk7buKt/6v9KI65qnm'
        'js-gtag'               => array(
            'async' => true
    // Construct the script if we want to give it extra attributes
if( array_key_exists( $handle, $whitelist ) ){
        // Extra markup
        $extra  = '';
        $mods   = $whitelist[$handle];
        // Check for SRI
if( array_key_exists( 'sri', $mods ) ){
            $extra .= ' integrity="' . $mods['sri'] . '" crossorigin="anonymous"';
        // Check for deferral
if( array_key_exists( 'defer', $mods ) ){
            $extra .= ' defer';
        // Check for async
if( array_key_exists( 'async', $mods ) ){
            $extra .= ' async';
        // Reutrn full script tag
return '<script src="' . $src . '"' . $extra . '"></script>';
    }else{
        // Return the tag as-is otherwise to avoid breaking it
return $tag;