首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

tinymce.PluginManager.add在wordpress 4.7.2中不再有效

tinymce.PluginManager.add 在 WordPress 4.7.2 中不再有效的问题可能是由于 WordPress 对 TinyMCE 编辑器的内部实现进行了更改,导致旧版本的插件添加方式不再兼容。

基础概念

TinyMCE 是一个流行的富文本编辑器,广泛用于 WordPress 等内容管理系统(CMS)中。tinymce.PluginManager.add 是一个用于向 TinyMCE 添加自定义插件的方法。

相关优势

  • 灵活性:允许开发者根据需求定制编辑器的功能。
  • 扩展性:通过插件机制,可以轻松添加新功能而不影响核心编辑器。

类型与应用场景

  • 类型:自定义插件可以是简单的工具栏按钮,也可以是复杂的编辑器行为修改。
  • 应用场景:例如,添加自定义格式、集成第三方服务(如地图、社交媒体插件)、实现特定的编辑器行为等。

问题原因

WordPress 4.7.2 可能更新了 TinyMCE 的版本或改变了其初始化方式,导致旧的插件注册方法不再适用。

解决方法

以下是解决这个问题的步骤:

1. 更新 TinyMCE 插件

确保你使用的 TinyMCE 插件是最新的,并且与 WordPress 4.7.2 兼容。

2. 使用新的插件注册方式

WordPress 提供了一种新的方式来注册 TinyMCE 插件。你可以在主题的 functions.php 文件或自定义插件中使用以下代码:

代码语言:txt
复制
function my_custom_tinymce_plugins($init_array) {
    $init_array['plugins'][] = 'myplugin';
    return $init_array;
}
add_filter('tiny_mce_before_init', 'my_custom_tinymce_plugins');

function myplugin_register_buttons($buttons) {
    array_push($buttons, 'mybutton');
    return $buttons;
}
add_filter('mce_buttons', 'myplugin_register_buttons');

function myplugin_register_plugin($plugin_array) {
    $plugin_array['mybutton'] = get_template_directory_uri() . '/js/myplugin.js';
    return $plugin_array;
}
add_filter('mce_external_plugins', 'myplugin_register_plugin');

3. 创建插件脚本

在你的主题目录下创建一个 js 文件夹,并在其中创建 myplugin.js 文件,内容如下:

代码语言:txt
复制
tinymce.PluginManager.add('myplugin', function(editor, url) {
    editor.addButton('mybutton', {
        text: 'My Button',
        onclick: function() {
            alert('Hello, World!');
        }
    });
});

4. 清除缓存

确保清除浏览器缓存和 WordPress 缓存,以便更改生效。

示例代码

以下是一个完整的示例,展示了如何在 WordPress 中注册和使用自定义 TinyMCE 插件:

代码语言:txt
复制
// functions.php
function my_custom_tinymce_plugins($init_array) {
    $init_array['plugins'][] = 'myplugin';
    return $init_array;
}
add_filter('tiny_mce_before_init', 'my_custom_tinymce_plugins');

function myplugin_register_buttons($buttons) {
    array_push($buttons, 'mybutton');
    return $buttons;
}
add_filter('mce_buttons', 'myplugin_register_buttons');

function myplugin_register_plugin($plugin_array) {
    $plugin_array['mybutton'] = get_template_directory_uri() . '/js/myplugin.js';
    return $plugin_array;
}
add_filter('mce_external_plugins', 'myplugin_register_plugin');
代码语言:txt
复制
// js/myplugin.js
tinymce.PluginManager.add('myplugin', function(editor, url) {
    editor.addButton('mybutton', {
        text: 'My Button',
        onclick: function() {
            alert('Hello, World!');
        }
    });
});

通过以上步骤,你应该能够在 WordPress 4.7.2 中成功注册和使用自定义 TinyMCE 插件。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

WordPress 3.9+的 TinyMCE 4 编辑器增强开发

从WordPress 3.9版本后,WordPress 默认的编辑器 TinyMCE 随之升级到了版本4,带来的问题以前在默认编辑器上的增强开发的效果可能失效。...'tiny_mce_before_init', 'wpex_mce_text_sizes' ); 自定义字体 除了默认的字体,根据个人需求你可能需要添加其他字体,比如说Google font(不过在天朝嘛目前貌似有点难连接这个...) ); } } add_action( 'init', 'wpex_mce_google_fonts_styles' ); 增加编辑器的下拉菜单功能 先看图,就知道实现的效果是什么了,这个的话在...array_push( $buttons, 'my_mce_button' ); return $buttons; } 其中mce-button.js 的代码如下: (function() { tinymce.PluginManager.add...js的代码如下: (function() { tinymce.PluginManager.add('my_mce_button', function( editor, url ) { editor.addButton

1K60

Serverless Wordpress 系列建站教程(四)

除了使用成本外,网站性能也是我们在部署个人网站时考虑的另一个重要因素。当用户不再维护服务器层,我们的网站性能又能否可以有效保证?...性能压测 我们通过 Serverless WordPress 部署了一个个人网站,同时在一个普通 1 核 1 GB 的服务器里也部署了一个相同的站点,接下来,我们通过 Apache 自带的工具来进行压测...因为测试场景为个人博客,因此设置了 100 并发,1000 次请求,在相同网络环境下测试,测试结果如图: 传统部署方案压测结果: ? Serverless WordPress 压测结果: ?...性能提升 当然,WordPress 本身也提供了多种方案帮助您持续提升网站性能,您可以采用以下几个方案,进一步提升您的网站速度: 有效使用缓存 作为一个动态网站,每个请求 WordPress 都会将所有内容重新进行加载并生成...,每次请求时直接访问,无需重复计算,有效减轻服务器压力。

1K10
  • 微慕 rest api 缓存插件

    对于缓存优化,目前大部分都是针对WordPress 的web网站页面数据缓存,对于通过WordPress rest api获取的数据(json数据)缓存并没有效果。...如果把rest api 的数据缓存起来,不再每次都去访问数据库获取,做到 “0 sql ”,就可以加快了 rest api 的访问速度,间接加快了小程序的响应速度。...在这个思路下,微慕团队开发了微慕REST API 缓存插件,同时在微慕小程序的插件里做了适配,全面支持开源版、增强版、专业版的插件和小程序。...我选择了微慕小程序访问频率最高的一个api:https://blog.minapper.com/wp-json/minapper/v1/posts,在chrome浏览器下进行测试,使用了api缓存的加载时间是...特别对于文章数量很多的WordPress网站,api加载提速更加明显;同时对于服务器性能不是很高的WordPress站,api访问提速效果也会比较明显。

    71220

    为啥过时的 jQuery 仍然是市场占有率最高的 JS 库?

    那是因为它被嵌入在了许多大型开源项目里面 —— 其中最著名的就是 WordPress。 很多 WordPress 的主题和插件都依赖于 jQuery。...其实大多数网站都不需要复杂的开发框架,它们大多是具有一些动态行为的静态网站(这种网站通常都会用 WordPress 编写),jQuery 在这个场景下仍然很流行,因为它既简单又有效。...而且,在未来的很长一段时间,jQuery 还继续会是 WordPress 的一部分,因为它很难在不破坏向后兼容性的情况下将它删除。...但是, WordPress 的社区里已经出现了一些反对的声音, 在 WordPress 主题中使用 jQuery 的性能影响 就是一个比较热门的话题。 GMO还表示:jQuery死了吗?...最后 很明显,jQuery 不再是开发者将 JavaScript 功能添加到他们的网站或应用程序的最佳方式,尤其是在需要扩展的情况下。

    1.7K30

    站点选项 WordPress 插件:管理和删除无用的站点选项

    管理站点选项 安装好之后,在 WPJAM 菜单下会多出一个「站点选项」的子菜单,点击进去,即可查看你站点所有非 WordPress 系统自动生成的选项: 如果选项存储为字符串或者非序列化存储,则直接显示...如果存储为序列化数据,则显示为 SERIALIZED DATA ,点击查看则会把该序列化数据打印出来: 对于这些数据,如果你觉得没有任何用了,都可以删除,不过这些选项可能是你的主题或者其他插件生成,删除前请确保不再使用...---- 「WordPress果酱」知识星球福利插件基于 WPJAM Basic 开发,加入「WordPress果酱」知识星球,即可下载: 插件 简介 抓取公众号图文 一键抓取公众号文章到 WordPress...格式文章 在 WordPress 实现真正的文章格式 草稿分享 一键生成草稿临时分享链接 并可设置分享链接的有效期 文章专题 设置文章专题,并在文章末尾显示一个文章专题列表。...文章隐藏 设置文章在列表⻚不显示,并且可以根据不同平台进行设置 Meta Data 可视化管理 WordPress Meta 数据,支持所有内置的 Meta 数据: Post Meta,Term Meta

    1K30

    WPJAM MetaData:可视化管理 WordPress Meta 数据

    汇总模式 在汇总模式下,我们可以很快看到两个信息: 系统用了哪些 meta_key,分别是什么。 每个 meta_key 使用的数量。...这样我们就能对自己系统的情况了然于胸了,并结合目前系统的状态,如果哪个 meta_key 已经不再使用,就可以点击删除,就可以把使用该 meta_key 的所有 Meta 数据都删除。...而对于序列化的数据,这里支持查看,替换和删除操作,删除操作和前面一样,也不再重复了。...格式文章 在 WordPress 实现真正的文章格式 草稿分享 一键生成草稿临时分享链接 并可设置分享链接的有效期 文章专题 设置文章专题,并在文章末尾显示一个文章专题列表。...文章隐藏 设置文章在列表⻚不显示,并且可以根据不同平台进行设置 Meta Data 可视化管理 WordPress Meta 数据,支持所有内置的 Meta 数据: Post Meta,Term Meta

    82840

    加速 WordPress 站点的五个基本技巧

    使用 CDN:假如你的服务器在北京,北京本地访问起来就会超快,但是广东地区的访问者可能会由于距离和线路问题感觉很慢。...对于普通站长,了解这些就可以了,下面来谈谈 WordPress 站点上的优化。 为 WordPress 安装缓存插件 缓存是提升速度非常重要的东西。...当你下一次访问的时候,浏览器发现缓存中的这些文件没有过期,就立刻从缓存中调用出来,就不再从你服务器上下载了。这样,就只需要下载 几KB 你写的文字就Ok了,当然打开速度就飞快了。...将下面代码按照你的需求修改,放在你 WordPress 站点根目录下面的 .htaccess 文件中即可: # 缓存有效时间 1 年 WordPress 建立了多少查询,你可以把它复制到主题目录下面的 functions.php 文件中,就可以在底部看到相关信息: add_action( 'wp_footer

    47460

    WordPress 4.6正式版“Pepper”上线发布

    WordPress是一种使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站,也可以把 WordPress当作一个内容管理系统(CMS)来使用。...—— 编辑器改进 在输入文章内容的时候,WordPress可以自动保存文档。...WordPress 4.6的恢复模式使得恢复内容更加方便: 同时,WordPress 4.6 还可以在输入链接的时候检测链接是否有效: —— Emoji表情支持 对于emoji表情的支持,已经更新,可以支持...不再使用WordPress专用的HTTP库,改用开源的Requests库。 —— 语言包 通过 translate.wordpress.org 管理语言翻译拥有较高的权限,可以及时加载。...下载与安装WordPress 4.6: ——已经安装WordPress的用户,你可以通过WordPress的管理后台,直接一键升级到WordPress 4.6最新版本。在升级之前,请务必做好备份。

    1K10

    5个使你 WordPress 网站更安全的好习惯

    本文介绍五个运营 WordPress 需要具备的好习惯,形成习惯之后,可以提高你的 WordPress 站点的安全性。 1....最简单有效的方法当然就是备份数据了。但是备份数据也是需要有一定的规划,不能说想备份的时候就备份,忙的时候就算了。当然,也有一些比较懒的备份方法,那就是使用 WordPress 数据备份插件。...所以不仅仅是在自己的网站,在其他网站注册账号,也都要尽量使用一个复杂的密码,这样可以减少被猜出的几率。...WordPress 在安全更新日志中,都会提示修改了哪些 Bug ,如果你不升级的话被黑客得知你的 WordPress 版本,可能会通过相关的 Bug 攻击你的站点。...大家可以自行下载研究,本文不再赘述。 ----

    26620

    wordpress网站打开速度慢要怎么解决?

    wordpress网站很多人反应说打开速度慢,访问慢等问题突出,其实很多程度上是不懂得优化导致的问题,今天就来总结一些关于提速wordpress网站的方法和技巧。...在 秒钟有 次查询。...对于服务器带宽很有限的情况下,这种加速方式还是很有效果的,一如服务器带宽1Mbps,单位转换后速度其实仅仅只有128kb/s的速度,会严重限制页面的加载和访问速度的,所以建议这个时候安装配置CDN效果会非常明显...一张图好几兆的大小,完全不压缩处理就直接上传,尺寸也不正确,甚至还变形的情况出现,这都是非常低级的错误,图片用途规范化就是需要多大尺寸的图需要按需裁剪,并且适当压缩图片的质量度了,质量度的高低一般建议在75%...5、删除没用的插件和更新正在使用的插件 删除你的wordpress后台不再使用的插件,并从服务器上删除它们,这样会明显加速 WordPress 速度,因为 WordPress 运行的时候会检查每个插件是否被启用

    5.8K30

    wordpress被挂码的四个主要原因

    wordpress被挂码的四个主要原因,一种,可能是wordpress主题问题,另一种,可能是wordpress插件问题,第三中,可能是wordpress使用的主机问题,第四种,是wordpress程序本身的问题...一般来说,wordpress网站最容易出问题的是第二种,即wordpress插件问题,wordpress网站出现安全问题99%的原因是wordpress插件问题带来的。...例如,某些插件可能因为开发者不再维护而变得容易受到攻击。3....插件与WordPress核心或主题不兼容插件与WordPress核心或主题之间的兼容性问题也可能引发安全问题:插件可能与WordPress核心版本不兼容,导致网站功能异常甚至崩溃。...通过以上措施,可以有效减少因插件问题导致的安全隐患。原文https://www.seomoban.com/jianzhan/192.html

    5510

    WordPress 教程:如何正确引用 JavaScript 和 CSS 文件

    在开发 WordPress 插件或者是制作 WordPress 主题的时候,都会引用一些 JavaScript 和 CSS 脚本资源。...这里不再赘述。 第二种就是使用 wp_head 函数。wp_head 函数用来输出一些自定义或者系统定义的内容,我们有时候会使用下面代码引用文件: WordPress 的排队引用(Enqueue Scripts)资源机制 在 WordPress 中引用资源,应该使用 wp_enqueue_script 这个函数,函数名中有个单词 enqueue 是排队或者排序的意思...虽然函数名中是 script,但是跟资源文件的类型没有关系,对 CSS 和 JS 都有效。...> 在 WordPress 主题开发中使用 wp_enqueue_script 引入资源 上面的例子都是以插件开发引用资源为例,在主题中引用的方法相似,主要的区别就在于使用对应的函数获取主题目录从而得到主题下面的资源文件地址

    1.3K40

    使WordPress达到最佳运行状态的13个技巧

    定位你的WordPress数据库表,在复选框中选中所有表,选择“优化数据库表”选项进行修复。 你可以看到这个方法是多么的有效,它节约了现有数据库至少10%的空间。 处理好你的图片 5....这款插件可以为动态的WordPress博客生成静态html文件。 生成html文件后,web服务器只要负责html文件而不再需要处理PHP脚本,PHP脚本负荷沉重且消耗较大。...这个方法对减少HTTP请求数量非常有效。 更重要的是,它可以兼容IE浏览器,即使浏览器并不支持数据URI。...你可以在CSS文件中安心地使用@import,从此不必再为客户端操心。 插件还可以检查style.css文件并放入@import文件。 你还可以设置缓存过期时间。...你也可以告诉我对它的使用心得,这样我在文章中就可以提供更为准确的信息。

    1K30

    jQuery已“死”?为清除技术债,我们删掉了前端所有jQuery依赖

    我想在这之后会重新评估,看看还有什么是不再需要的。” Matt 表示。...“现在,大多数事情都不再需要 jQuery 了。”有网友评论道,“我个人发现普通的 JS API 和 fetch 甚至比 jQuery 的东西更干净。...今天的开发人员可能没有意识到在使用 jQuery,因为它被嵌入在了许多大型开源项目里面,其中最著名的就是 WordPress。...jQuery 在这个场景下仍然很流行,因为它既简单又有效,人们觉得没必要停止使用它。”jQuery 开发者 Micha Gobiowski-Owczarek 在接受外媒采访时说道。...未来的很长一段时间里,jQuery 还继续会是 WordPress 的一部分,因为它很难在不破坏向后兼容性的情况下将它删除。

    79330

    强化 WordPress 的 11 种有效方法

    虽然没有万无一失的方法,但你仍然可以让自己熟悉 WordPress 强化方法,因为不使用它们的后果可能是有害的。 简单来说,强化 WordPress 网站可以定义为应用高效且有效的安全措施。...因此,你必须首先制定有效的 WordPress 数据库备份计划。...阻止从未知文件夹执行 PHP 函数是防止此类黑客攻击的有效方法之一。 4.禁用文件编辑器 一旦黑客成功访问了 WordPress 管理员帐户,他就会接管你的网站。...回到仪表板,在这里你会看到你不再有编辑器的选项。 5. 更改 WordPress 安全密钥 WordPress 倾向于存储你的所有凭据,这样你就不必在每次登录时都输入它们。...这就是为什么有必要遵循一些有效的方法来加强 WordPress 安全性。 但是你不必担心生病,请按照上面讨论的网站加固措施来保护你的网站免受黑客攻击。

    1.2K40

    13 个 WordPress 提速技巧

    WordPress 的开放性造就 WordPress 有着成千上万的插件,使得 WordPress 比以其他 CMS 程序更受欢迎,但是开放也在一定程度上使得 WordPress 的性能不是很好,所以当你发现你的...删除没用的插件和更新正在使用的插件 删除任何你不再使用的插件,并从服务器上删除它们,这样会明显加速 WordPress 速度,因为 WordPress 运行的时候会检查每个插件是否被启用,并且导入激活的插件...另外最好把现在使用的插件更新到最新版本,因为插件的开发者发布新版本一般来说他们应该是在某种程度上优化了插件工作效率。 3....静态化缓存插件,它能够产生静态的 HTML 文件,这些 HTML 文件产生之后,你的服务器就不用再去运行 PHP 脚本和数据库查询,所以它能够有效降低你服务器负荷,明显的提高你的博客速度。...在   秒钟有 次查询。 13.

    1.2K20

    使用Redis和opcache扩展为网站加速教程

    Redis或Memcached缓存功能,不会有任何负面影响 后台优化:推荐使用opcache进行PHP加速优化 Redis缓存教程 php在执行函数最消耗时间的就是查询SQL数据库了,一般来讲一个页面的数据库查询大概在...120到260次左右,使用Redis或者Memcached缓存,原理就是将php查询过的数据库缓存下来,下一次相同内容就不再查询数据库了,直接从缓存获取,极大的提高php执行效率。...WordPress官方采用 Object Cache对象缓存,同时主题的也遵循此机制,配合Redis或者Memcached缓存,能将数据库查询降低80%,有效的提高了渲染速度!...安装WP插件 最后一步就是在Wordpress安装 Redis 缓存插件了,支持 Redis 缓存 的插件有很多,我这里以 Redis Object Cache 这款插件为例进行安装 直接在插件中心搜索...根据测试,能有效的提高2到5倍左右的执行效率。 安装Opcache就十分简单了,直接安装 Opcache 扩展,再重启PHP服务即可!

    60430

    OpenNJet评测,探寻云原生之美

    在NGINX中,日志记录往往是以文件的形式存储在本地磁盘上,而在高负载的情况下,频繁的磁盘写入操作可能导致磁盘 I/O 负载过高,从而降低系统的整体性能。...这意味着在云原生环境中,系统配置的更新和调整不再需要重新加载服务器,业务中断的问题得到了有效缓解,从而保障了业务的稳定性和连续性。其次,OpenNJet针对日志处理问题进行了优化。...OpenNJet内置了对云原生环境的监控与调度支持,不再依赖于第三方工具或插件。...然后需要配置njet.conf,通过软件包安装OpenNJet的njet.conf一般在/usr/local/njet/conf目录下,通过编辑该配置文件,wordpress目录及PHP环境以及监听端口等内容配置到该文件中...我对OpenNJet充满期待,希望它能够在未来的发展中不断完善和壮大,为广大开发者提供更多更好的功能和服务。相信在OpenNJet的引领下,我们将迎来更加美好、智能的云原生时代!

    16110
    领券