어제 관련 질문을 올렸는데 답변이 없어 다시 질문을 올립니다.
제가 이 질문을 하는 이유는 특정페이지(메인)에서 비로그인 대상자에게는 보여줄 필요가 없어 로그인 대상자에게만 보여주는 위젯 이 있습니다.
레이아웃에 넣지 않고 페이지에서 위젯을 직접 생성해서 넣다보니 로그인대상자에게 보여주는 조건을 걸 수가 없습니다.
그래서 이런 경우는 부득이하게 위젯스타일 쪽에 조건을 걸어서 비로그인 대상자에게는 보이지 않게 처리합니다.
궁금한건 이런 경우
위젯 스타일이 위젯 전체를 감싸게 되어 있고 위젯 스타일에 로그인 대상자에게만 허용한다는 조건으로 인해 안에 내용이 차단되는 형태인데 이때 순서가
1. 위젯실행 -> 스타일실행 -> 스타일에 따라 출력
2. 스타일실행 -> 스타일에 따라 출력 -> 위젯 실행되지 않음
전자의 경우인지 후자의 경우인지 궁금합니다.
전자의 경우라면 어차피 위젯은 모든 대상에게서 쿼리가 요청되므로 불편하더라도 레이아웃에 옮겨서 위젯코드 자체를 조건으로 차단해야 하는 것 같아서요. 조회가 굉장히 많은 페이지라면 불필요한 대상에게 실행을 줄여주면 좋을 것 같아서 입니다.
위젯.php->위젯실행->스킨 및 템플릿 컴파일->출력
여튼 이런구조로 동작합니다.
굳이 따지자면 전자의 경우 같아 보이네요.