今回は管理画面の新着に項目を追加する拡張ポイントのsoyshop.admin.top.phpを紹介します。

SOY Shopプラグインの拡張ポイントについて


はじめにインターフェースを確認してみる。

/soyshop/webapp/src/logic/plugin/extensions/soyshop.admin.top.php

class SOYShopAdminTopBase implements SOY2PluginAction{

	/**
	 * @return boolen
	 * ログインしているアカウントの権限によって表示するかどうか?
	 */
	function allowDisplay(){
		return true;
	}

	/**
	 * @return string
	 * 新着に項目を追加する際のタイトル部分
	 */
	function getTitle(){
		return "";
	}

	/**
	 * @return string
	 * 新着に項目を追加する際のコンテンツ部分
	 */
	function getContent(){
		return "";
	}

	/**
	 * @return string
	 * タイトル横に表示されるリンクのURL
	 */
	function getLink(){
		return "";
	}

	/**
	 * @return string
	 * タイトル横に表示されるリンクURLのテキスト部分
	 */
	function getLinkTitle(){
		return "";
	}
}

各メソッドがどこに対応しているかを実際の画面で追ってみることにする。

例として、ショップ情報表示プラグイン(ID:arrival_shop_info)から出力される画面を見てみると、


※空白部分は除いて、横幅を縮めています。


はじめにallowDisplayはSOY Shopの管理画面のトップである新着画面に上の画像のようなコンテンツを表示するかどうかを決めるメソッドになっていて、特に指定がなければtrueを返します。

ログインした権限等で表示するかどうか?を決める事を想定して用意したメソッドになります。


他のメソッドの出力の範囲は上の画像になります。

各メソッドで文字列を返すと上の画像に記載した箇所に文字列が出力されます。


上の画像で触れていないgetLinkメソッドは、

URLを返すと、getLinkTitleで出力された文字列がアンカータグで囲まれ、href属性の値として出力されます。


これを踏まえた上で、

ショップ情報表示プラグイン(ID:arrival_shop_info)のsoyshop.admin.top.phpのソースコードを読んでみると良いです。