如何在子主题中使用钩子覆盖插件?

时间:2019-03-27 01:53:51

标签: php wordpress

我想在插件中添加一些HTML代码,但我想在子主题中进行此操作,我想覆盖它的功能在一个名为的文件中作为admin-functions.php

我想向 booked_render_custom_fields 函数

添加额外的按钮

admin-functions.php:

 function booked_render_custom_fields($calendar = false) { ?>
    <button class="button">Text</button>;
<?php }
有什么建议吗?谢谢

1 个答案:

答案 0 :(得分:0)

您不能真正覆盖这样的功能。您只能使用插件实现的过滤器和挂钩。但是您有一些选择:

a)复制该插件,更改其名称,然后进行所需的更改。在那之后,它将不再获得更新。您将不得不手动实现它们。

b)您可以仅向原始插件添加一行,并定义一个您要在functions.php中订阅的过滤器或钩子。因此您只需在更新插件后修复这一行。

c)由于wordpress的更新版本,您有可能在任何简码后运行自己的代码。因此您可以在简码的输出中添加或注入自己的html。 https://developer.wordpress.org/reference/hooks/do_shortcode_tag/