最近、Lao Gao が typecho に関するプラグインを作成しています。typecho は wordpress とは異なるため、ドキュメントの参照が非常に多く、プラグインを作成しています。 -in はまだ多くの落とし穴に遭遇していますが、研究が深まるにつれ、Lao Gao は徐々に始め始めたので、この書き方のチュートリアルをまとめて皆さんと共有しました。
私はHelloWorldから始まります
基本情報
typecho を開発したいなら、公式サンプルプラグイン HelloWorld のソースコードを読んだことがあるはずですよね?
まず usr/plugins/HelloWorld/Plugin.php ファイルの最初の数行を見てみましょう
コードをコピーします コードは次のとおりです:
if (!define('__TYPECHO_ROOT_DIR__')) 終了;
/**
* ハローワールド
*
* @package HelloWorld
* @著者清寧
* @バージョン1.0.0
* @link http://typecho.org
*/
...
...
これらのコード行はプラグインの基本情報です。コードから、プラグインに関連する次の基本情報を取得できます。
プラグイン パッケージ名 ---> HelloWorld
プラグイン作者 --->
プラグインのバージョン ---> 1.0.0
プラグインリンク ---> http://typecho.org
同時に、この情報は以下に示すようにプラグインページに表示されます
プラグイン構造
引き続きコードの背後にあるものを見てみましょう。最も単純なプラグイン構造は次のとおりです (長さを短縮するために、Lao Gao は特定のメソッドの実装を削除しています)。
基本的にどのメソッドにもコメントがあるので、詳細は説明しません。シンプルに見えますよね?実は内部にはまだ落とし穴がたくさんあります。
コードをコピーします
コードは次のとおりです:
クラス HelloWorld_Plugin は Typecho_Plugin_Interface を実装します
{
/**
* プラグインメソッドをアクティブ化します。アクティブ化に失敗した場合は、直接例外がスローされます
*
* @アクセス公開
* @return void
* @throws Typecho_Plugin_Exception
*/
パブリック静的関数 activate(){}
/**
* プラグインメソッドを無効化します。無効化に失敗した場合は、直接例外がスローされます
* @静的
* @アクセス公開
* @return void
* @throws Typecho_Plugin_Exception
*/
パブリック静的関数 deactivate(){}
/**
* プラグイン構成パネルを入手します
* @アクセス公開
* @param Typecho_Widget_Helper_Form $form設定パネル
* @return void
*/
パブリック静的関数 config(Typecho_Widget_Helper_Form $form){}
/**
* 個人ユーザー向けの設定パネル
* @アクセス公開
* @param Typecho_Widget_Helper_Form $form
* @return void
*/
パブリック静的関数personalConfig(Typecho_Widget_Helper_Form $form){}
/**
※プラグイン実装方法
* @アクセス公開
* @return void
*/
パブリック静的関数 render(){}
}
プラグインプロセス
プラグインの基本的な処理は以下の通りです。
1. プラグインが作成されると、バックグラウンドに表示されます2.有効化ボタンをクリックすると、対応するプラグインクラスのactivateメソッドが実行されます
3. プラグインはターゲット プラグイン ポイントに関連付けられており、トリガーされるのを待っています
4. クリックして非アクティブ化するときに、非アクティブ化メソッドを呼び出します
このセクションは終了です。