Typechoプラグイン作成チュートリアル(4):プラグインのマウント、typechoのマウント_PHPチュートリアル

WBOY
リリース: 2016-07-13 09:52:25
オリジナル
911 人が閲覧しました

Typechoプラグイン作成チュートリアル(4): プラグインのマウント、typechoのマウント

最後に、設定情報を保存できたら、プラグインのマウント関数の記述を開始できます。

まず、システムがさまざまなキー リンクでプラグイン ポイントを予約していることを知る必要があります。システムがプラグイン ポイントまで実行すると、このポイントにプラグインがハングしているかどうかが検出されます。をクリックして、プラグイン ロジックを実行します。

プラグインの仕事は、適切なプラグイン ポイントを見つけてハングアップし、独自のロジックを実行することです。

プラグインポイント、プラグインフック、プラグインインターフェース。 。 。それがここLao Gaoのコンセプトです

公式プラグインインターフェースと機能リスト

プラグインが実行する必要があるロジックは、Widget_Contents_Post_Edit クラスのfinishPublish メソッドです

ファイル パスは var/Widget/Contents/Post/Edit.php:736 です。インターフェイスが 2 つのパラメーターを渡していることがわかります。1 つは公開されたコンテンツで、もう 1 つはクラス自体です。クラス自体を使用すると、プラグイン内でそのパブリック メソッドを自由に呼び出すことができます。
コードをコピーします コードは次のとおりです:
// 記事が公開され、プラグインインターフェースがリリースされました
$this->pluginHandle()->finishPublish($contents, $this);

ページ公開インターフェイスもあります。これについては、以下のコードで説明します。

取り付け方法

コードは以下の通り、一部省略しています。
コードをコピーします コードは次のとおりです:

クラス BaiduSubmitTest_Plugin は Typecho_Plugin_Interface を実装します
{

パブリック静的関数 activate(){
//記事とページを公開するためのインターフェースをマウントします
Typecho_Plugin::factory('Widget_Contents_Post_Edit')->finishPublish = array('BaiduSubmitTest_Plugin', 'send');
Typecho_Plugin::factory('Widget_Contents_Page_Edit')->finishPublish = array('BaiduSubmitTest_Plugin', 'send');
return 'プラグインは正常にインストールされました。設定を入力してアクセス キーを入力してください';
}
...
...
パブリック静的関数 render($contents, $class){
//何かする
}
}

コードから、プラグインがアクティブ化されると、システムはプラグイン クラス BaiduSubmitTest_Plugin の render メソッドをfinishPublish インターフェイスにバインドすることがわかります。 finishPublish は 2 つのパラメータを渡すため、render メソッドも 2 つのパラメータを受け入れる必要があります。

この時点で、プラグインが正常に有効になっている限り、記事の公開後にシステムが自動的に BaiduSubmitTest_Plugin:render() メソッドを呼び出します。

ソース コードをよく見てください。このインターフェイスには戻り値がないことがわかります。戻り値がある場合はどうなるでしょうか。

この状況はさらに複雑で、Lao Gaoが最初に穴を空けます。

なぜこれが render メソッドと呼ばれるのですか?

Lao Gao は hello world からコピーして貼り付けました。名前は変更されていません。

次に何をするか

マウント ポイントが完了したので、次のステップはコア ロジック コードを実行することです。

ラオガオ、それは次の記事に任せましょう!

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/1008006.html技術記事 Typecho プラグイン作成チュートリアル (4): プラグインのマウント、typecho のマウント 最後に、設定情報を保存できたら、プラグインのマウント関数の記述を開始します。 まず知っておく必要があります...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート