web-dev-qa-db-ja.com

カスタムコンポーネントでのSEF URLのサポート

Joomlaで!ドキュメンテーションはそれが述べられている:

Joomla 3.3以降、JComponentRouterInterfaceインターフェースを実装し、以下のようにルーティングと解析を処理する必要がありますが、このインターフェースのメソッドを使用します。

しかし、上記のインターフェイスのサンプル実装は見つかりません。誰かが例を提供できますか?

https://docs.joomla.org/Supporting_SEF_URLs_in_your_component

2
Mindaugas

昔は、router.phpファイルには関数BuildRouteParseRouteが含まれていました。今日、たとえばbanners拡張のrouter.phpを見ると、BannersRouterから拡張されたJComponentRouterBaseというクラスがあり、そのクラス内にbuild関数とparse関数が表示されます。さらに、クラスの直後に、bannersBuildRoute関数とbannersParseRoute関数も表示されます(これらの2つの関数は必要であり、buildparseメソッド)。

したがって、router.phpでは、JComponentRouterBaseBuildRouteを使用するだけでなく、ParseRouteから拡張されたクラス(バナーコンポーネントなど)を使用すると、コンポーネントに自動的にJComponentRouterInterfaceを実装しています。

お役に立てれば!

3
itoctopus