在外观之后立即开始行动>主题选项已保存

时间:2013-09-28 09:35:55

标签: wordpress wordpress-theming


我刚开始使用Wordpress(v.3.6.1) 我安装了OptionTree,因为它似乎处理了Theme Options页面。我想在用户保存此页面的更改后立即运行我的功能(在插件或其他任何地方)。

到目前为止,我发现 option-tree / includes / ot-settings-api.php 生成表单,并将表单操作设置为 options.php (这是一个wordpress核心文件)。我正在考虑将动作更改为我的自定义php文件并处理保存过程,最后运行我自己的功能。但这个解决方案看起来很丑陋 我想知道是否有另一种方法可以完成工作 感谢。

1 个答案:

答案 0 :(得分:1)

感谢@Sheikh Heera链接(tutsplus)我可以找到解决方案 我认为这是某种黑客攻击,我仍然不知道这是不是最好的方法。无论如何我这样做了:

  1. 在主题 lib 文件夹中创建 your-theme-settings.php 文件。
  2. 让Wordpress通过在主题 functions.php 中添加此代码来了解您的文件:

    include_once('lib/your-theme-settings.php');
    
  3. 将此代码添加到 your-theme-settings.php

    function your_theme_register_settings() {
        register_setting('option_tree', 'option_tree', 'your_theme_validate_options');
    }
    
    function your_theme_validate_options($input) {
        // do whatever you have to do with $input.
    }
    
    add_action('admin_init', 'your_theme_register_settings');
    
  4. 在第3步中,我将'option_tree'作为register_settings函数的第1和第2个参数,因为我注意到选项组选项名称 OptionTree插件的输入为option_tree

    我不确定这是否是最好的解决方案,所以如果你分享你的想法,我会很高兴。