Joomla 3.xをサポートするように拡張機能を更新する際に、関数のシグネチャが2.5以降に変更され、Strict standards
警告が表示されるいくつかのケースに遭遇しました。
たとえば、JTableクラスで_getAssetParentId()
は、
protected function _getAssetParentId($table = null, $id = null)
{
...
}
Joomla 3.xでこれを行うには:
protected function _getAssetParentId(JTable $table = null, $id = null)
{
...
}
それは小さな違いですが、警告をスローするのに十分です。
単一のクラスファイルを使用してJoomla 2.5および3.0をサポートする他の拡張機能を見ると、問題を無視しているように見えます。
明らかに、3.xの警告を修正すると、2.5がインストールされ、警告がスローされます…
私たちの選択肢ではない「ソリューション」には、次のものがあります。
- 2つの個別のバージョン固有のクラスファイルを使用する
- 警告をオフにする
この競合をどのように解決しますか?