質問: 任意のタイプの拡張idを取得する方法 コンポーネントおよびモジュールの場合、jcomponenthelper :: getcomponent( "com _")およびjmodulehelper :: getmodule( "mod _")を使用して、拡張のアクティブidを取得できることを知っています。ただし、パッケージタイプなどの拡張機能idを取得できるようにしたい。現在のcmsライブラリ(3.3と2.5の両方で機能することが望ましい)に、この結果を得る関数はありますか? jinstallerおよびjinstalladapterクラスを予備的に検索した後、すぐに役立つものは見つかりませんでした。それ以外の場合、オプション2は手動のdbクエリを実行して目的のidを取得することであると考えています。joomlaがすでにそのような機能を提供している場合は、可能であれば回避します。
回答: 私はこれが可能であるとは信じていません。主な理由は、パッケージがxmlファイルで拡張子のタイプとして定義されている場合でも、実際にはそうではないためです。あなたがおそらくすでに知っているパッケージは、複数の拡張機能をパッケージ化しています。新しいメニューアイテムを作成するとき、typeをpackageに設定することはできません。パッケージに属するどの拡張機能を呼び出して表示するのかわからないためです。したがって、取得する現在のパッケージidはありません。パッケージidを取得するには、小さなデータベースクエリを作成する必要があります