아이프레임에 포함되어있으면 if문 같은게 있을까요?
CMS/프레임워크 | Rhymix 2.1 |
---|---|
개발 언어 | PHP 7.4 |
안녕하세요.
일부 모듈 기능의 스티커, 회원가입 안내 가 뜨는 애드온이 아이프레임에서도 작동해서
if문으로 작동하지 않도록 하려고합니다.
act 명으로 구분 할 수는 있지만
범용으로 쓰이는 애드온에서는 아무래도 아이프레임인경우 미작동 되게 하면좋을것 같아서요
if($called_position != "before_display_content" || Context::get('act') == 'dispMemberSignUpForm' || 여기 조건문에 추가해주려고 합니다. ){
return;
}
없을것 같긴하지만 혹시 아이프레임에서 호출된것을 구분하는 방법이 있을까요?
그냥 해당 모듈에서 속편하게 해당 div를 display:none 하는게 좋을까요?

톰캣
Lv. 11
시대의 흐름에 뒤떨어지지 않도록 아주 천천히지만 노력하고 있습니다.
댓글 5
페이지가 불러와진후 자바스크립트 변수를 체크해 알아낼수는 있는데 php에서 바로 체크는 힘들겁니다.
대신 페이지 주소에 주소?is_frame=true 처럼 값을 넘겨서 프레임일때 미동작하게 할순 있겠습니다.(물론 페이지를 프레임에 넣을때 해당값 넘겨주는걸 까먹으면 안되겠죠)
아마 거의 필수적으로 layout=none이 들어갈 테니, 그것을 기준으로 판단한다면 좀더 범용성을 띨 수 있겠네요.
1.
<!--@if($_SERVER['HTTP_SEC_FETCH_DEST']=='document')-->
///여기내용
<!--@end-->
2.
$(function() {
if (window.self != window.top) {
///여기내용
}
});
아이프레임이 아닐때만 작동합니다.
둘중에 상황에 맞춰 쓰시면 될듯합니다.
저는 이걸로 해결 하긴 했는데 도움이 되면 좋겠네요.