通知管理员插件合并

时间:2020-09-16 作者:Rick Hellewell

我有两个类似的插件,我正在将它们合并到一个新插件中,以使插件更加高效,并在添加新功能时减少开发时间。这些插件有类似的用途。两者都使用短代码在页面上显示内容(媒体或帖子)。这些插件在多站点上特别有用,因为它们从部分或所有子站点收集内容。

新插件将结合现有插件的功能和选项,使新插件更加高效。部分原因是只需要一个插件而不是两个,并且需要一组通用的插件选项。

不会有旧插件的更新;所有新功能都将包含在新插件中。

因此,我想通知老插件用户,新插件可用(并得到改进)。我想我可以更改旧插件的描述,以便在插件屏幕上显示新插件的通知。并将旧插件描述中的链接添加到新插件信息中。

此外,如果安装了新插件,则应注意禁用/删除旧插件。因此,旧插件需要查看是否安装了新插件,如果是,则在插件屏幕上显示一个通知。

这样做的方法是什么?我可以很容易地更改插件的描述,以包含新插件的信息/链接,这样信息将显示在插件库页面以及插件管理页面上。对于如何“淘汰”已被新插件/不同插件替代的旧插件,是否有一些指导?

1 个回复
最合适的回答,由SO网友:Mayeenul Islam 整理而成

我认为这是一个非常有用的问题。有两个插件用于讨论,比如:

有很多方法,但我首先想到的是以下几点:

在升级ToBeUplifted插件的代码之前,应该确保从tobedepretected插件到ToBeUplifted插件的无缝迁移过程。如果两者之间有任何突破性的更改,任何升级脚本都可以。如果不能自动完成,最好准备一份现场指南,并提前通知用户。

通知用户保持领先,并通知用户即将发生重大变化。为此,您可以利用所有可能的渠道:

网站

如果您有一个或多个插件的网站,请使用该网站通知您的用户群即将发生的更改、可能受到的影响以及用户如何解决问题。您可以使用站点范围的通知和/或特定插件页面上的通知。您可以使用网站的新闻和;通知功能,用于向最终用户正式、大胆地发布通知。

电子邮件

如果您有用户群的电子邮件列表,请向他们发送电子邮件,告知事实。

插件频道

要使用插件频道,您需要提供TobedePrecasted插件的更新,并通知用户。

Dashboard在TobedePrecasted插件中,添加一个仪表板通知或小部件,说明即将发生的重大更改。

Admin Notice在TobedePrecasted插件中,添加一条管理通知,说明即将发生的重大更改。请不要发送垃圾管理通知,让用户在适当的确认后关闭通知,不要打扰他们一次又一次地显示相同的通知。但是,您可以在插件页面中添加不可撤销的通知,只是为了突出通知。Plugin MultilingualPress添加了站点范围的管理通知(可撤销),通知从下一个主要版本开始,该插件将成为高级插件。

Areas in Plugin page(s)如果您的TobedePrecasted插件有任何空闲区域,您可以利用该空间并以粗体通知用户。您也可以将弃用/迁移通知添加到插件的有用部分。MultilingualPress向翻译元框添加了一条通知,即插件元框与块编辑器不兼容。

Admin bar在TobedePrecasted插件中,可以使用管理栏显示通知图标,并可以将用户重定向到通知页面,也可以直接在那里显示通知。例如,Yoast在管理栏上有一个通知菜单;通过单击,他们将用户带到插件的仪表板,通知用户。

in_plugin_update_message-{$file} Hook由于WordPress 2.8.0,这个特定的钩子对于通知用户来说非常重要。WooCommerce很好地使用了这个钩子:WooCommerce Plugin Notice

在TobedePrecasted插件中,使用挂钩并显示丰富的通知,以便TobedePrecasted插件的用户可以得到通知,并在必要时采取行动。你可以看到WooCommerce\'s code 关于他们如何执行所展示的通知。(WordPress Documentation)

升级后,ToBeUplifted插件应该auto deactivate TobedePrecasted插件在激活后-正如您也在考虑的那样。停用时,通知用户,您停用了TobedePrecasted插件,以确保从现在起使用单个插件获得更好的体验。

通知用户

对于ToBeUplifted插件的前1个或2个版本,您可以显示一条通知,说明您的单个插件如何提供TobePrecasted插件的所有功能,这将建立用户关系中的信任。

归档Tobedeprecasted插件

如果您正在使用WordPress插件库,请通知插件团队归档/删除您的Tobedeprecasted插件。对于Github、Gitlab等,您可以归档TobedePrecasted插件以通知该插件已停止使用。

重定向您自己的内容中的内容,例如,网站内容,第301版重定向到与TobePrecared插件相关的所有内容,再重定向到与TobeUplifed插件相关的内容。此外,您可以传递URL参数来向用户显示一个通知,即TobedePrecasted插件已被弃用,取而代之的是ToBeUplifted插件。

这就是我现在能想到的。让其他人也说出他们的观点。