Wordpress:覆盖插件中的php文件包括文件夹

问题描述 投票:0回答:1

我正在尝试覆盖wp-content/plugins/salient-core/includes/nectar_maps/nectar_cta.php下的php文件,因为我需要自定义返回数组中的某些选项。

因此,我试图在wp-content/themes/salient-child/salient-core/includes/nectar_maps/nectar_cta.php下的子主题中放置一个php文件,该文件不起作用。

而且我还发现该文件在wp-content/plugins/salient-core/includes/nectar-addons.php中的使用情况如下:

class WPBakeryShortCode_Nectar_Cta extends WPBakeryShortCode {}
vc_lean_map('nectar_cta', null, SALIENT_CORE_ROOT_DIR_PATH . 'includes/nectar_maps/nectar_cta.php');

然后,我尝试将vc_lean_map与我在functions.php中的路径一起使用:

vc_lean_map('nectar_cta', null, 'mypath');

也失败了。

有什么方法可以在我的子主题中覆盖此文件?

wordpress plugins
1个回答
0
投票

不幸的是,以您想要的方式重写文件路径非常适合于以儿童为主题的操作,但是插件没有类似物。

但是-您正在吠叫正确的树!

从WPBakery的vc_lean_map()1文档:

vc_lean_map()

使用“惰性”方法将新的短代码映射到WPBakery Page Builder。这意味着仅当系统使用映射的短代码中的任何数据或在页面的内容中呈现了短代码(称为do_shortcode)时,才会构建短代码的属性。

这告诉我您可以指定一个新文件来覆盖插件文件,并且可能只是在vc_lean_map()文件中调用它太早了。

请尝试类似的操作,以确保在视觉合成器插件完成加载后将其覆盖,因此它不会覆盖您的工作。 (在示例中,functions.php的优先级较低,以明确表明其意图。)

100

1 WPBakery是Visual Composer背后的人们,它们以某种方式与您正在使用的这个显着主题相关。

© www.soinside.com 2019 - 2024. All rights reserved.