동일한 문제로 문제가 있습니다. 나는 그것에 대한 버그 보고서를 제출하려고합니다. 나는 JComponentHelper::isEnabled()
과 JComponentHelper::getParams()
방법을 시도했다. 두 경우 모두 구성 요소가 12.1에 대한 설명서에 따라 설치되어 있지 않은 경우, 메소드가 false를 반환해야합니다
JComponentHelper::isEnabled('com_name', true);
같은 사실에 대한 엄격한 매개 변수 (두 번째 파라미터)를 설정합니다. getParams
메서드가 빈 배열을 반환하는 것을 발견했습니다. 여기서 isEnabled
메서드는 true를 반환합니다. 예를 들어 나는 내가 예외 중 하나 방법에서 예외를 잡으려고 노력 테스트를 잡을 수있을 것 같지 않기 때문에 데이터베이스 솔루션을 시도 하겠어이
JComponentHelper::isEnabled('com_hfdyugagfeoyuag', true); //totally bogus component name
returns true.
을 테스트했다. try catch를 무시하고 isEnabled 메소드에서 오류를 설정한다는 오류를 표시합니다.
I tried this solution as well
오류를 억제하기 위해 작동하지 않았다.
나는 위의 해결책에 따라 자기 자신을 쓰는 것 같습니다. Extension 테이블은 설치된 모든 Extension에 대한 레코드를 가져야하므로 건전한 방법처럼 보이지만 위의 함수에 대한 반환 값은 문서화 된 API를 반영하지 못합니다.
레거시 Joomla 1.5.x의 경우 쿼리는'SELECT'enabled' FROM #__components WHERE'name' = 'COM_NAME'' –