我的wordpress文本编辑器上的文字在白色背景上是白色的,因此对大多数人来说都是看不见的。
我搜索了它,我找到的解决方案是将以下代码添加到wp-config.php
define('CONCATENATE_SCRIPTS', false );
它工作正常,但我无法找到它的功能或原因。
我只发现了一个问题here,但它没有得到答案。
有人可以解释上面代码的作用及其原理吗?
答案 0 :(得分:24)
首先,好问题。
CONCATENATE_SCRIPTS
是告诉wordpress的常量,好吧..将所有依赖关系连接到一个URL并加载到一起(以保存http请求)。
据我所知,它仅适用于管理区域(后端)。 结果是像
这样的网址<script src="http://somewordpress.site/wp-admin/load-scripts.php?c=1&load=jquery-ui-core,jquery-ui-widget,jquery-ui-mouse,jquery-ui-sortable,hoverIntent,common,jquery-color,wp-ajax-response,wp-lists,jquery-ui-resizable,quicktags,jquery-query,admin-comments,postbox,dashboard,thickbox,plugin-install,media-upload&ver=e0f647a6df61adcc7200ce17a647db7f" type="text/javascript">
这是正常的默认行为,如果您遇到问题,可能是因为主题或插件中存在一些javascript
冲突。
另一种可能(尽管不那么频繁)是由于TinyMCE缓存导致的浏览器问题。清除浏览器缓存。
如果你真的想知道它的定义或做了什么,你可以look here。
无论如何,通过将常量定义为false
,您实际上迫使WordPress加载管理页面上的每个脚本单独 rater而不是集体。
因此,在这种情况下 - 如果一个脚本无法加载并正常工作,其他脚本仍可继续正常运行。
这是debugging
和本地开发的推荐设置。
但是,在您的情况下,它是问题的症状,而不是问题本身。你应该隔离问题并修复它(可能是一个像之前说过的插件)
答案 1 :(得分:3)
为了扩展Obmerk的答案,在我的情况下将CONCATENATE_SCRIPTS
设置为false只是让我在浏览器控制台中看到个别故障,因为它显示了用于tinymce的javascript未正确加载。然后查看服务器日志显示wp-tinymce.php
未正确执行。最后,我需要修复{sitepath}/wp-includes/js/tinymce/wp-tinymce.php
的权限,以便我所使用的服务器的安全设置允许它运行。
在我的情况下,服务器不允许它是可写组的,因此chmod 755
负责处理它。实际解决方案将根据您的服务器配置而有所不同。