질문/조언질답게시판

레이아웃 에서 현재 주소의 mid 를 가져오는 코드가 있어야 하나요? 기존에 사용하던 레이웃에서는 이상없이 잘 되었는데 오늘 처음 써본 레이아웃 에서는 저 조건이 먹지 않아서요.


어떤 것으로 먼저 불러와야 하는건가요? 기존 레이아웃 얼핏 보앗을대는 특별한 코드를 발견하지 못해서 질문을 남겨봅니다. 

  • profile
    $mid 상단에
    {@
    $mid = Context::get('mid');
    }
  • profile profile
    제가 관련 지식이 없는 사람이라 이해가 안가는게 지금 사용하는 레이아웃에 관련 단어로 검색을 해보고 찾아봐도 위와 같은 조회 과정이 없어서 지금 ...
  • profile

    php 파일에서는 context 변수에 접근하려면 Context::get('mid') 함수를 사용해야 하구요.

    템플릿 파일에서는 그냥 변수 형태로 사용해도 됩니다. php 파일처럼 Context::get('mid') 함수를 써도 상관없구요.
    (나중에 컴파일시 일반 변수가 context 변수로 변환 되기 때문이죠.)

    제가 봤을 땐 위에서 변수를 덮어쓴 것 같네요.

  • profile profile
    네. 저도 뭔가 현재 위치하고 있는 곳을 알아내는 과정이 필요할 건데 지금 사용하는 레이아웃에서는 제가 확인 할 수 있는 에디터에서는 보이지 않아서 궁금하네요.
  • profile profile
    지금 안되는 곳이 새로운 호스팅환경인데요. php7.0 환경입니다. 그냥 변수형태로 사용이 가능해야 하는데 안되는게 비정상은 아닐까요??
  • profile profile
    php 7에서도 변수형태로 사용 가능하구요. 안되는 게 비정상이구요. 안 될리는 없는 것 같은데... 이상하네요.
  • profile profile
    일단 mid 구분해서 하는 작업은 가능한데 질문의 제목처럼 안되는건 문제이긴 하네요. 제가 늘 사용하던 방법이라 저도 안되는게 이상하기만 합니다.
  • profile
    일부 php7 웹호스팅 환경에서 pcre 값이 낮으면 본문과 같은 현상이 생길수 있습니다.
    레이아웃 코드가 길거나해서 해당 cond를 php 구문으로 해석을 못해 발생되는 문제이죠.
    그래서 어떤 레이아웃에서는 문제가 발생되거나 안되는 문제가 생기기도 해요.
    https://xetown.com/qna/368866
    링크 참조하셔서 한번 확인해 보시길...
  • profile profile
    링크를 보니 더 머리아프네요. ㅋ 가비아 뭐 해달라면 함께 사용하는 서버라 거절! 이 뻔해서요....
    답변 감사합니다. 말씀해주신 것이 원인 이군요...
  • profile profile
    링크안에 링크까지 읽어보니 호스팅에서 변경하지 않고도 가능 할 수도 있고 레이아웃에 불필요한 부분을 걸어내는 것도 해결법이 될 수고 있어 보이네요. 사실 지금 문제가 되는 레이아웃이 옵션이 굉장히 많고 엄청난 길이의 레이아웃이긴 합니다. 나중에 레이웃에서는 불필요한 부분을 덜어내던지 해봐겠네요.


    위 내용은 별로 도움이 안되는 문제군요. cond 절 안에 내용을 줄여야.....
  • profile profile
    cond 문법 안에 글자수 를 줄여야 하는거군요.. 이런.. 이것 때문에 출력되는 실제 코드를 별도 파일에 담아 불러오는 해결법을 사용하신듯 하네요...
  • profile profile
    모듈을 배포하고 있어서 어떻게든 작동을 되게해야되어서요.
    사실 해결법은 다른 웹호스팅을 이용하는것입니다.
    다른 애드온 모듈 사용이 추가 되면 xe 템플릿이 작동 안될수 있습니다.
  • profile profile
    네. 원인을 알았으니 대응이 가능해졋네요. 굉장히 간단한 구성의 홈페이지라 그냥 적당히 대응해서 쓰면 될거 같습니다. 홈페이지자랑에 최근 올린 사이트인데요. 회원가입도 필요없는 사이트라서요. 나중에 다른 사이트 개설할 때는 이부분 검토하고 호스팅 선정해야겠네요.