2012-12-05 4 views
5

Liferay CMS에는 여러 가지 javascript 기능 (드래그 가능, 정렬 가능 등)을 수행 할 수있는 합금 UI가 있습니다. jQuery UI를 사용하는 여러 jQuery 플러그인을 사용하고 있습니다. 합금 UI 또한 느리게로드되고 웹 페이지가 대량으로 지연되는 큰 오버 헤드가 있으므로 jQuery UI로 제거하고 jQuery UI로 처리하고 싶습니다.Liferay에서 Alloy UI 제거

Liferay는 기본적으로 DOM에 Alloy UI 파일을로드합니다. 서버/포틀릿 파일에서 제거 (선언 등)해야 할 것이 있습니까?

답변

4

짧은 대답은 노력하지 않을 것입니다! 이것은 Alloy UI가 Liferay UI에 너무 통합되어 있기 때문에 jQuery 대체품으로 교체하지 않아도되기 때문입니다.

합금 UI는 드래그 가능한 포틀릿 및 정렬 이상의 기능을 제공합니다. 또한 팝업, AJAX 호출 및 내가 아직 만나지 않은 다른 많은 것들을 제어합니다.

HOWEVER 내가 처음부터 사용자 지정 테마를 만들고 테마에서 Alloy UI에 대한 참조를 제거하고 jQuery를로드하는 것이 좋습니다.

그런 다음 고리 UI를 참조하는 모든 JSP 파일을 jQuery를 사용하여 같은 기능을 수행하는 복사본으로 바꾸려면 후크 또는 후크 (및 가능하면 EXT 플러그인 사용)도 만들어야합니다.

또는 또 다른 방법은 GitHub의 Liferay 소스 코드를 사용하고 Alloy UI를 제거하는 소스에서 나만의 버전을 만드는 것입니다.

BUT 나는 여전히 시간 낭비하지 않으려 고합니다. 그것을 좋아하거나 싫어하면 Alloy UI가 Liferay로 베이킹됩니다. 당신이 나의 제안을 따르는다면 당신은 미래에 Liferay를 업그레이드하는 것을 효과적으로 막을 수 있습니다.

Alloy UI를 Liferay로 개선하거나 Alloy UI repository on GitHub에 기여하고 커뮤니티를 개선하는 방법을 제안하는 것이 좋습니다.

~ 수정 ~

, 그냥 인증되지 않은 사용자를위한 합금 UI를 사용하지 않으려면 아마도 포털 웹에있는 파일을 변형 한 후크 \ docroot를 \ HTML \ 공통 \ 테마 \ 트릭을 할 것입니다. 특히 top_js.jspf를보십시오. 수표를 넣으면 로그인 한 경우에만 합금 UI를로드한다고 말하면 사용자의 답변 일 수 있습니다.

+1

통찰력에 감사드립니다. 내가 본 바로는 Alloy UI가 실제로 Liferay에 하드 코딩되었지만 사이트 방문자 만 사용할 수 있는지 여부를 묻고 싶습니다. 실제 Liferay CMS에 있어도 상관 없지만 프론트 엔드 사용자를 위해 사용하지 않을 경우 오버 헤드를 원하지 않습니다. – user780756

+0

나는 지금 어디에서 왔는지 알 겠어.Liferay에서 사용하는 JavaScript를로드하는 JSP/JSPF 파일을 수정하기 위해 후크를 사용하여 추가 답변을 작성하여 답변을 편집했습니다. – Jonny

0
그것은이 베어/everything.js 구성을 사용하여 수행해야

는, 참조 : 기본 논리가 인증되지 않은 사용자가 같은 방식으로 com.liferay.portal.events.ServicePreAction에 코딩 http://www.liferay.com/documentation/liferay-portal/6.1/user-guide/-/ai/javascri-3

barebone JavaScript 파일의 목록을 얻는 반면 인증 된 사용자는 barebone JavaScript 파일 목록과 모든 JavaScript 파일 목록을 얻습니다.

나는 그것이 당신이 원하는 것이라고 생각합니다. 후크가 없거나 다른 것이 필요합니다.

관련 문제