2

좋아요. 온라인 주문이 있으니 'olo'라고 부르는 모듈을 사용하십시오. 내가 지금 필요로하는 것은 완전히 다른 레이아웃과 디자인의 모바일 버전 웹 사이트를 구축하는 것입니다.젠드 프레임 워크 : 모바일 웹 사이트에 MVC를 활용하려면 어떻게해야합니까?

이제 MVC의 힘을 어떻게 사용할 수 있습니까? 시작한 후에 판매 되었습니까?

나는 이미 OLO 모듈에서 만든 모든 다른 컨트롤러 클래스를 사용하고 싶습니다.

지금은 모바일 웹 사이트 개발을 시작했으며 '모바일'이라는 또 다른 모듈로 배치되었습니다. jQuery Mobile을 사용하여 빌드되었으므로 이미 완료되었습니다. 정보 페이지, 문의 양식 등

모든 모바일 장치는 현재 .htacces mobile dectection으로 domain.tld/m으로 리디렉션됩니다. 이것은 모바일 버전에서 링크 된 경우 전체 웹 사이트보기를 지원하기 위해 수행됩니다.

답변

4

을해야 Zend_Http_UserAgent을 기반으로 wurfl adapter을 소개했다.

모바일 장치를 감지하고 다양한 레이아웃을 부트 스트랩 할 수 있습니다. 2010 년 12 월 젠드 뉴스 레터와 함께 제공되는 YouTube의 하우투가 있습니다 : http://www.youtube.com/watch?v=_A8yg73tqOY

다른 모듈을 사용할 필요는 없습니다! 그냥 다른 레이아웃 파일!

+0

내가 당신의 방식을 이해할 수있는 것은 갈 사람입니다. 모바일 사용자에게 비 모바일 웹 사이트에 대한 링크를 제공하려는 경우 wurfl 설정으로이 작업을 수행 할 수 있습니까? – Phliplip

+0

예, 바닥 글의 어딘가에 간단한 링크를 제공하여 zend 레지스트리를 사용하여 플래그를 설정하고 모바일 장치를 확인하는 곳에서이 플래그를 확인할 수 있습니다. http://www.dotkernel.com/dotkernel/disable-automatic-wurfl- redirect/ –

+0

니스, 이것은 매우 흥미 롭습니다. 지금 당장 사용할지 모르겠다. 기존 코드를 다시 작성하는 데 조금 시간이 걸릴 것이라고 생각한다. 그리고 저는 지금이 일을해야합니다, CEO는 항상 어제 일을해야합니다 - 당신은 알고 있습니다 :) – Phliplip

3

개인적으로 저는 프론트 컨트롤러 플러그인을 사용합니다. 부트 스트랩 내부에서이 작업을 수행하는 것은 내 관심사가되는 과정에서 너무 일찍 시작되었습니다.

preDispatch()를 후크하고 Zend_Http_UserAgent를 사용하여 응용 프로그램이 모바일 장치를 통해 액세스되는지 확인하는 플러그인을 작성하십시오. 그런 다음 set view script path을 다른 디렉토리에 추가 할 수 있습니다. 예를 들어, 기본값 인이 현재보기 디렉토리라면 모바일이 새로운보기 디렉토리입니다. 당신은 구조를 복제 파일을 수정하고는 젠드 프레임 워크 1.11 젠드와 트릭 :

application/ 
    modules/ 
    olo/ 
     controllers/ 
     modules/ 
     views/ 
     scripts/ 
      default/ 
      mobile/ 
+0

좋아, 아마 언급 했어야하지만, 나는 모바일 장치를'domaintld/m'으로 리다이렉트하는 [.htaccess mobile detection] (http://detectmobilebrowser.com/)과 routes.ini-/m 및 모든 하위 경로를 처리하는 파일. 그러나 scripts 디렉토리에있는 다른 dir에 대한 귀하의 의견은 아마 유용 할 것입니다. – Phliplip

+0

라우터를 사용하여 일치시킬 수도 있습니다 (정확한 방법을 기억하지 말고 내일 답변을 업데이트합니다). 그런 식으로 모든 컨트롤러와 모델은 동일하게 유지되고 ArtWorkAD에서 설명한 것처럼 레이아웃 만 변경됩니다. 또한 그의 조언을 살펴보십시오. wurfl을 사용하면 나쁘지 않을 것입니다. 논리가 똑같이 유지되기 때문에 일반 버전과 모바일 버전에 대해 두 번 업그레이드를 작성할 필요가 없으므로 이후에는 문제가 줄어들 것입니다. – usoban

+0

@ArtWorkAD의 대답을 수락했으나 매우 도움이되었습니다. Have som rep :) – Phliplip

3

마찬가지로 ArtWorkAD는 Zend Framework 1.11에서 사용자 에이전트를 감지하고 레이아웃을 전환 할 수있는 wurfl 어댑터를 사용할 수 있다고 말했지만 각각의 사용자가 "보편적"이어야한다는 것을 의미합니다. 나는 지금까지 "보편적"관점을 결코 보지 못했습니다.

은 당신이 사용할 수있는 것은보기 그것은, 일반적으로 CSV/XML 파일을 만드는 데 사용되는 서로 다른 컨텍스트를 만들 수 있습니다 http://framework.zend.com/manual/en/zend.controller.actionhelpers.html#zend.controller.actionhelpers.contextswitch

의 ContextSwitch입니다. FooAction()이라는 액션이있는 Index라는 컨트롤러가 있다고 가정 해 보겠습니다. 이미 스크립트/index/foo.phtml이있는 것으로 가정합니다.

"모바일"이라는 컨텍스트를 만들 수 있습니다. script/index/foo.mobile.phtml과 같은 해당 컨텍스트에 대한보기를 작성하십시오. 레이아웃을 변경하는 것과 비슷하지만보기의 경우 이전 wurfl 어댑터를 사용하면 레이아웃을 변경하여 자동으로 컨텍스트를 전환 할 수 있습니다.

+0

@ArtWorkAD의 답변을 수락했으나 매우 도움이되었습니다. – Phliplip