0


Wordpress (v. 3.6.1) を使い始めたばかりです。
OptionTree をインストールしましたが、テーマ オプション ページを処理しているようです。ユーザーがこのページの変更を保存した直後に、(プラグインまたはその他の場所で) 自分の関数を実行したいと考えています。

これまでのところ、option-tree/includes/ot-settings-api.phpがフォームを生成し、フォーム アクションをoptions.php (ワードプレスのコア ファイル) に設定することがわかりました。アクションをカスタムphpファイルに変更し、保存手順を処理して、最終的に独自の関数を実行することを考えていました。しかし、この解決策はかなり醜く見えます。
仕事を終わらせる別の方法があるのだろうか。
ありがとう。

4

1 に答える 1

1

@Sheikh Heera リンク ( tutsplus ) のおかげで、解決策を見つけることができました。
これはある種のハックだと思いますが、それが最善の方法であるかどうかはまだわかりません。とにかく私はこれをしました:

  1. テーマlibフォルダーにファイルyour-theme-settings.phpを作成します。
  2. テーマのfunctions.phpに次のコードを追加して、Wordpress にファイルを認識させます。

    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');
    

ステップ 3 で、OptionTree プラグインのオプション グループオプション名がであることに気付いたので、関数'option_tree'の第 1 引数と第 2 引数として配置しました。 これが最善の解決策かどうかはわかりませんので、アイデアを共有していただければ幸いです。register_settingsoption_tree

于 2013-09-28T12:28:39.750 に答える