질문/조언질답게시판
Extra Form
PHP PHP 7.3
CMS Rhymix

현재 반응형 레이아웃을 사용하여 모바일뷰 사용안함 체크와, m.layout에는 따로 레이아웃 업로드없이 사용중입니다.

 

허나 문제가 있습니다.

 

회원중 한분이 모바일 페이지가 좋아 PC에서도 모바일 페이지를 사용하고싶어 하시는데,

 

반응형 레이아웃을 사용하다보니 PC에서 도메인주소/?m=1로 들어가도 PC레이아웃이 나오는 문제가 있는데 PC에서도 모바일화면을 사용하려면 어떻게 해야할까요?

  • profile

    반응형 레이아웃이라면 모바일화면이라는 것이 따로 없고 화면 크기에 따라 자동으로 재구성되는 것 아닌가요? 그렇다면 주소에 뭘 붙여도 소용없고 그냥 PC 화면 크기를 줄여야 할 것 같은데요...

  • profile ?
    이게 골치군요.. 연배가 있으신 회원분들이 좀 있어서 모바일 화면을 선호하시는데 그분들께는 따로 PC에서 모바일 화면 보는방법을 안내드려야겠네요.ㅠ
  • ? profile

    PC 브라우저에서 줌 땡기는 법을 가르쳐 드리세요. 200%로 키워놓으면 쓸만합니다.

  • profile
    반응형이면.. 브라우저 크기를 줄이면 됩니다.
  • profile ?
    https://studio02.co.kr/cm_main1

    위 레이아웃을 사용중인데 화면을 줄인다고 모바일화면이 나오는레이아웃은 아닙니다 ..
  • ? profile
    화면 사이즈가 아닌 유저 에이전트 기반으로 변경하나보네요
    뭐 그 부분은 만들기 나름인가요.
    레이아웃 소스코드에서 유저에이전트에 따라 반응하는 부분에 어떤 변수를 넣었을때도 동작하게 바꿔보세요.
  • profile ?
    이방법대로 한번 해봐야겠네요 감사합니다
  • profile
    아니면 개발자 모드를 활용하거나요
  • profile
    모바일은 어떤 화면을 제공하시려는 거죠? 어차피 사용하시는 레이아웃을 모바일에 업로드해서 모바일뷰를 활성화해도 모바일화면으로 봐도 반응형이라 동일한 모습이 아닌가요?
  • profile ?
    해당방법대로 해봤는데 레이아웃에서는 그래도 PC로 인식하는지 PC화면에 게시판만 모바일입니다
  • ? profile

    아니요. pc, 모바일 모두 같은 레이아웃을 올릴거면 같은 화면일텐데 그게 무슨 의미가 있냐는 질문입니다.

     

    모바일에 최적화된 다른 모바일 레이아웃을 별도로 사용하고 싶으시다면,

    다르게 보일 수 있는 다른 모바일레이아웃을 업로드 하시고 모바일뷰를 켠다음 코어의 에이전트 부분을 수정하셔야 합니다.

    지금 관리자가 원하는 것은 대부분의 모바일에서도 pc보기를 제공하고 싶으신거고 특별한 경우 모바일보기 버튼을 통해 모바일레이아웃으로 보여지글 원하시는 듯 합니다.

    따라서 대부분의 모바일로 분류해주고 있는 에이전트를 pc로 분류해주셔야 합니다. 혹은 모든 기기를 PC로 선택되게 코어를 수정하시면 모바일에서도 모두 PC 레이아웃이 보입니다. 

    지금 아주 특수한 사례를 위해 고민을 하고 계신 듯 한데 이런 것을 수용할 필요가 있는지에 대한 원천적인 물음표가 저에게는 생기네요. 저라면 전혀 고려대상이 아니라서요.

  • ? profile
    레이아웃소스코드에서 어떻게 적용되는지를 모르니 구체적인 동작 방법은 모릅니다.
    예상만 할뿐입니다.
  • profile profile
    레이아웃 소스코드에는 별게 없습니다. 코어에서 모바일에이전트라면 모바일뷰를 보여주려고 하는데 모바일뷰를 선택하지 않은 사이트라면 PC의 레이아웃을 모바일에서도 보여줄 뿐입니다.
  • profile profile
    반응형 레이아웃이면 코어가 아닌 레이아웃에서 제어를 할꺼에요.
    그런데 css의 미디어쿼리를 이용한 반응형이 아닌 것처럼 보이더군요.
  • profile profile
    그건 모바일,PC를 제어한다기 보다는 화면폭으로 반응형으로 디자인을 제공할 뿐입니다. 질문자분께서 원천적으로 고민하는 부분은 코어에서 담당합니다. 에이전트를 XE에서 모바일로 분류한 기준이 있습니다.

    그것에 따라 모바일화면을 보여줄지, PC화면을 보여줄지 결정해서 출력해줍니다.

    지금 레이아웃을 아무리 모바일레이아웃 경로에 업로드해서 모바일뷰를 활성화 한다해도 모바일로 봐야 어차피 똑같습니다. 왜냐면 반응형으로 화면폭에 대응하게 css 처리가 되어 있는 레이아웃 이기 때문이죠.

    따라서 모바일에는 모바일에 최적화된 모습을 원하는 형태 그 레이아웃을 업로드해서 모바일뷰를 활성화해서 모든 대상이 모바일에서는 이 레이아웃이 보여지게 하면 되는데,

    질문자분께서는 독특하게 1분에게만 이것을 보여주 나머지분에게는 PC화면을 또 그대로 보여주고 싶어 하십니다.
    그래서 코어에서 모든 단말기를 PC로 분류해주는 수정을 해야 하는 상황이 벌어지는 것 입니다.
  • profile profile
    반쪽짜리 반응형이 많더라구요. studio02님 작품이라면 대부분 그럴 겁니다. CSS 미디어 쿼리만으로는 PC와 모바일 모두 완벽한 사용자 경험을 제공하기 어렵다는 현실적인 한계도 있지만...
  • profile profile
    저는 늘 이러한 반응형과 pc,모바일 각각 최적화된 모바일 두가지를 따로 사용하는 것에 대한 입장은 최적화해서 별도로 제공해야한다는 입장입니다.

    반응형은 관리자가 편한 것이지(설정이나 입력 등 그리고 수정 유지보수 시 한번만 해도 되는...) 방문자가 보기 좋거나 가독성이 PC,모바일 양쪽을 만족시키기 어려운 단점을 알면서도 쓰는 것이라 생각합니다.

    단점이 존재할 수 밖에 없는 것을 사용하는 것은 사용자가 감수할 수 밖에 없다고 생각하구요.

    저도 사실 모바일,PC 모두 개편때마다 뭐 해주는게 일이 * 2배로 늘어나지만 모바일에서 좁은 지면에 완전 다르게 최적화해 표현해 줄 수 있어 이 수고스러움이 수고로 느껴지지는 않고 있습니다.
  • profile profile
    제가 이해하는 개념에서는 반응형은 새로고침을 하지 않아도 사이즈에 따라서 저절로 최적화(?)가 되어야 합니다.
    하지만 질문하신 분의 사이트는 창크기가 줄어도 모바일이 나오지 않고, 작은 창에서 새로고침을 해도 모바일이 되지 않았습니다.

    이 말은 사이즈에 따라서 하나의 레이아웃에서 모바일뷰, pc뷰가 되는 것이 아닌 에이전트를 가지고 구별해준다는 것이 됩니다.
    그래서 레이아웃자체에 에이전트를 가지고 뭔가를 하는 코드가 있을 것이라고 유추한 것입니다.
    질문글에 모바일 뷰를 사용하지 않는다고 했으니까요.

    제 유추가 맞다면 레이아웃에 에이전트로 분기해주는 코드(html이나 스크립트가 아닌 php로)가 있을 것이고, 그 부분에 get방식으로 변수를 입력 받아서 강제로 모바일 뷰로 보여주게 하면 되는 것입니다.
    변수가 추가된 링크를 버튼을 추가할수도 있겠죠.
    get방식으로 받으면 페이지 이동하면 사라져버릴테니 그 변수값을 쿠키나 세션에 저장해서 그값을 이용하도록 해야 할 것입니다.
    코어 수정없이 레이아웃 수정만으로도 충분합니다.
  • profile profile
    새로고침을 하지 않아도 사이즈에 따라서 저절로 최적화(?)가 되어야 합니다.
    --> 네. 대부분 거의 100% 미디어쿼리를 이용해서 그렇게 합니다.

    이 말은 사이즈에 따라서 하나의 레이아웃에서 모바일뷰, pc뷰가 되는 것이 아닌 에이전트를 가지고 구별해준다는 것이 됩니다
    --> 네 코어에서 모바일뷰 제공은 에이전트로 작동하고 있습니다. 레이아웃에서 별도로 하지 않아요.

    저희는 코에서 유통되는 태블릿 에이전트가 PC보기 화면으로 제공되는 것이 저희 사이트에 적합하지 않아 이부분은 코어에서 태블릿이 모바일뷰가 제공되도록 수정했으며 코어에서 이부분 관리자가 선택할 수 있도록 해달라고 이슈로 요청 중입니다.

    구현이야 뭐 어떻게든 다 가능합니다. 하지만 현재 범용적으로 XE코어에서 제공하는 것을 그대로 받아 쓰는 판매용 레이아웃은 제가 설명한 것으로 동작하고 있습니다.

    지금레이아웃,스케치북레이아웃 등 반응형 모바일에 별도로 업로드해서 모바일뷰를 켜봐야 모습은 똑같습니다. 미디어쿼리로 모바일에서 처리가 잘 되어 있으니까요.
  • profile profile
    질문게시판이니 질문자님의 사이트에 맞는 처방(?)을 해야죠.
    소스코드와 관리자 페이지를 보지 못한 상태에서 알수 있는 정보는 아래와 같습니다.

    - 모바일뷰 사용 안함(질문글 내용)
    - 미디어쿼리를 사용하는 반응형은 아님(사이트에서 확인, 물론 레이아웃 제작한 곳의 예시이지만 그대로 적용했다고 가정)

    이 두가지로 예상하면 코어에서 가져온 에이전트값으로 레이아웃에서 다른 css(외 기타 등등이 있을수도)를 불러온다는 것입니다.
    그리고 실제로 모바일뷰와 pc뷰에서 다른 css파일을 불러옵니다.

    이렇게 한정된 정보를 가지고 pc에서 모바일 뷰를 어떻게 보여줄 것인가에 대한 답변입니다.
    모바일 레이아웃 폴더에 넣고, 모바일 뷰를 켜라고 말을 한적이 없습니다.

    pc레이아웃에서 수정하는 방법을 적은 것이죠.
  • profile profile

    코어에서 모바일뷰 사용하는 경우 모바일뷰,PC뷰 를 제공하는 것은 무조건 레이아웃 선택에 적용됩니다.
    반응형을 사용하고자 할 경우 모바일뷰를 꺼야 합니다.(키면 다른 모바일레아웃을 선택하던지 아니면 동일한 레이아웃을 모바일 경로에 업로드해서 선택해야 합니다.)

    반응형,모바일뷰 사용안함 의경우 코어에서 모든 화면에 PC의 레이아웃을 적용합니다.

    레이아웃 내에서 미디어쿼리로 화면폭 제어, 또는 추가적으로 에이전트로 제어하거나 별도 css를 불러오거나 할 수 있습니다.

    이건 모바일에 업로드해서 사용하던 PC에만 레이이아웃만 사용하던 동일한 결과가 나오기 때문에 제가 달아드린 답변은 아예 다른 모바일 레이아웃을 업로드해서 선택해서 제공해야 한다는 것입니다.

    그런데 안타깝게 질문자분은 단 1분께만 이런 모습을 원하신다고 하셨으니,

    1차적으로 코어에서 모바일뷰,PC뷰 제공의 기준인 에이전트로 모바일뷰를 제공하는 부분을 건드려야 한다는 답변이었습니다.

     

    위 레이아웃은 통상정인 미디어쿼리를 이용하고 하는 반응형 레이아웃입니다. 반응형 레이아웃에서 에이전트로 구분해서 별도처리하는 코드는 흔히 들어가있구요.(별도 css를 불러오게 하거 화면폭을 제한하거나 등등...)

  • profile ?
    더블블유님 말씀대로 모바일인지 체크해서 모바일이면 모바일용 css, html을 따로 불러옵니다
    아래 질문글과 응용해서 m.도메인.com일때 모바일용 화면을 보여주도록 하면 될거같은데.... 웹지기님 말씀들어보니 한분 편의를 위해서 다수로직을 바꾸는것도 아닌거같고...
  • ? profile
    get으로 변수값을 입력 받고 그것을 쿠키나 세션에 저장한 후 그 값을 이용하라는 것입니다.

    주소?mobileview=YES
    이런식으로 받고

    if($_get[mobileview]) {
    쿠키 또는 세션에 저장;
    }
    if(쿠키 또는 세션값 == "YES") {
    모바일 파일 불러오기
    }

    요렇게 하는 거죠.

    이렇게 하면 원하는 사람만 모바일 뷰로 보이게 할수 있죠.
  • ? profile
    네. 로직을 피해서 지금 원하는 분들께만 다른 레이아웃을 모바일뷰를 사용해서 제공하고 싶은 내용을 제가 질문에서 이미 충분히 파악했습니다. 저도 태블릿 자체를 PC보기로 픽스한 것이 맘에 들지 않아 코어에 개선을 요청해 놓은 거니까요.

    도메인 자체를 별도로 운영하는 것도 방법이긴 합니다만 사이트 자체가 틀리게 운영할건지 혹은 리디렉트를 이용해 서브도메인에서 넘어온 경우만 특별히 체크해서 모바일뷰를 활성화시키고 지정된 다른 레이아웃을 보여줄건지 하는게 보통 쉬운일 아닙니다.

    그래서 이렇게 아주 소수의 요청을 받아 사이트 전체 로직에 위험을 감수 할건지에 대한 제가 회의적인 답을 했던 것이구요.

    저라면 모바일뷰를 켜고 모바일에 만족할만한 별도 레이아웃을 전체회원에게 제공하는 정공법으로 갈 것 같습니다.
  • ?

    웨일에 모바일 창이 하나 있던데요..창 뛰워서 주소 입력하면 바로 모바일로 보여줍니다.... 연세 있으신 분들 이라면 이게 더 좋을지도 모르겠네요...팝업창 처럼 뜨더군요...