如果简码已经存在怎么办

What to do if a shortcode already exists

我正在编写一个定义简码的 Worpress 插件。 如果已经使用相同名称注册了另一个简码,在简码注册时会发生什么情况? 做法是什么?是否有可能找到冲突的插件以警告用户他应该停用它才能激活你的插件??

谢谢。

if ( !shortcode_exists( 'myshortcode' ) ) {
    add_shortcode('myshortcode','mycallback');
}
else ?????

仅仅因为您无法使用您想要的名称注册您的短代码就要求用户禁用另一个插件,出于各种原因可能不是最好的主意。

您可以尝试的其他事情:

  • 给你的短代码起一个独特的名字。例如,WooCommerce 的短代码都以 woocommerce_ 为前缀:[woocommerce_cart][woocommerce_checkout] 等。
  • 如果您要使用的名称已被占用,您可以注册一个替代简码。

如果你问我,我会选第一。

最佳做法是始终在短代码名称前加上前缀,以避免命名冲突。您可以使用与您的插件名称相关的特定前缀或 activity。您可以在此处的插件开发手册中查看一些指南:https://developer.wordpress.org/plugins/the-basics/best-practices/#prefix-everything

我个人的做法是用个人名字间距格式进行处理。它可以给出类似的东西:

add_shotcode('company_plugin_shorcode');

希望对您有所帮助