0

ワードプレス バージョン 3.4.2

以下は、フックが 2 つだけの最も単純な形式のプラグインです。

register_activation_hook(__FILE__, sbv_activate());
register_deactivation_hook(__FILE__, sbv_deactivate());

function sbv_activate() {
  add_option('sbv_opt1', 'test');
}

function sbv_deactivate() {
  delete_option('sbv_opt1');
}

このプラグインをアクティブ化した後、オプション テーブルを確認しましたが、オプションが存在しないようです。非アクティブ化関数から delete_option() 行を削除すると機能します。間違っている場合は修正してください。wordpress が sbv_activate() を呼び出してから sbv_deactivate() を呼び出しているように見えるため、アクティベーションで行ったことを元に戻します。このように動作する必要はないと思います。私はこれで夢中になります。

4

1 に答える 1

3

関数自体ではなく、関数の名前のみを使用する必要があります。

register_activation_hook(__FILE__, 'sbv_activate');
register_deactivation_hook(__FILE__, 'sbv_deactivate');

WPコーデックスリファレンス: http ://codex.wordpress.org/Function_Reference/register_activation_hook

于 2012-11-15T09:22:08.897 に答える