大多数时候,主题或插件的选项将通过选项面板设置。但是如果你需要在别的地方更新一个选项呢?也许一个选项需要在幕后改变,基于某些条件,它能做到吗?
你最好相信!
把一切都安排好
Redux核心包括函数名为集,它允许一个动态更改任何选项。但访问此功能需要您的配置文件做一个小小的改变(sample-config.php默认情况下,我们会用这个例子)。
在sample-config.php文件,向底部线的新redux_framework_sample_config();。这是样例配置创建对象本身的地方。我们需要将这个对象分配给全局变量。
替换此行:
你最好相信!
把一切都安排好
Redux核心包括函数名为集,它允许一个动态更改任何选项。但访问此功能需要您的配置文件做一个小小的改变(sample-config.php默认情况下,我们会用这个例子)。
在sample-config.php文件,向底部线的新redux_framework_sample_config();。这是样例配置创建对象本身的地方。我们需要将这个对象分配给全局变量。
替换此行:
new Redux_Framework_sample_config();
为
global $sampleReduxFramework;
$sampleReduxFramework = new Redux_Framework_sample_config();
准备,出发,去!
通过对示例配置进行的更改,以便在全局变量中保存自己的实例,我们现在可以在项目的任何地方调用set,特别是更新以前设置/保存的选项。集函数有两个参数。首先是opt_name美元,接受代表选项名称的字符串值,通过设置的选项字段数组参数id。第二参数接受混合格式的新值(String,int,bool,等)。在使用set函数之前,必须声明表示配置类的全局变量。在上面的例子中,这将是samplereduxframework美元。然后,使用reduxframework对象调用,如下图所示:
global $sampleReduxFramework
$sampleReduxFramework->ReduxFramework->set('my_option', 'its_value');
这就是它的全部。
原文:https://docs.reduxframework.com/core/advanced/update-an-option-outside-the-options-panel/