묻고답하기
로그인 스킨 제작할려는 것을 배울려고 하는데...
2014.10.11 06:07
이제 겨우 리눅스 웹서버 구축하는 것과 xe레이아웃 제작하는 방법을 조금 익힌 것같습니다. (웹서버 구축보다 xe가 더 어렵네요)
이제 스킨을 제작 하는 것 (먼저 로그인 위젯 스킨)을 시작할려고 하는데
몇 가지 질문이 있습니다.
위젯 폴더에 스킨 이미지를 보니 이것도 레이아웃과 비슷하게 html과 css,js,xml로 구성되어 있는 것 같습니다.
그런데 레이아웃은 드림위버로 제작해서 body부분만 잘라내서 제 xe로 올리면 바로 적용이 되었습니다.
그런데 스킨은 그런 것 같지가 않습니다. 제 생각엔 xe에 쓰는 문법때문에 드림위버에서 인식을 잘 못하네요.
그래서 레이아웃은 드림위버에서 바로바로 디자인을 확인하면서 제작이 가능했는데
로그인 스킨도 레이아웃처럼 바로바로 디자인을 확인하면 제작할 수 있는 방법이 있을까요???
답변 기다리겠습니다.
댓글 3
-
mindpainter
2014.10.13 11:15
-
고코루리
2014.10.13 11:42
가장 좋은 방법은 하드코딩이겠지만...
드림위버로 해야한다면 우선 스킨을 생각하지 마시고 제작을 합니다.
그리고 완성이 된다면 body 이후에 내용을
기존 위젯을 참고하여 xe 로그인 위젯 스킨에 맞게 변환작업을 해주시면 됩니다.
js와 css는
<load target="자바나css상대경로"/>
를 최상단에 삽입해주시면 되고
로그인 상황에 따른 규칙은
$is_logged로 구분하게 되는데
<!--@(!$is_logged)-->
로그인 화면
<!--@else-->
로그인 후 화면
<!--@end-->
이런식으로 구현 가능하며
mindpainter님께서 말씀하신 것처럼 cond=""라는 값을 사용하셔서 표현도 가능합니다.
cond는 그냥 if문이라고 생각하시면 됩니다.
-
대한민국대표찌질이
2014.10.13 23:04
답변감사합니다.
로그인 위젯을 처음부터 만드는 것은 초짜인 저한테 무리가 있는 것 같습니다.
하지만 xe공식 로그인위젯의 css를 수정하고 xe\addons\member_communication의 member_communication.addon.php과 xe\modules\member의 member.controller.php의 수정으로 로그인 정보 리스트를 수정합으로써 디자인을 어느 정도 할 수 있을 것 같습니다. 두분의 관심 고맙습니다.
레이아웃 스킨 만드는것과 동일하게 로컬에서 다 만드시고 난 후 해당 코드들을 입히시면 됩니다. 그렇다고 해서 디자인이 변형되진 않습니다. 코드를 입히고 나면 최신버전 1.7.7.2의 widgets/login_info/skins/default을 예로하면 login_form.html(로그인전 모습), login_info.html(로그인 후 모습)으로 저장하시면 됩니다.
또한 로그인 스킨만을 따로 타인과 공유하실 목적이 아니고 현재 레이아웃에서만 사용하실 목적이면 그냥 레이아웃 스킨에 포함시키시는게 더 간단할 수도 있습니다.
로그인 스킨 안에 filter폴더를 통째로 레이아웃스킨 폴더에 복사한 후 layout.html 상단에
<load target="filter/login.xml" />
<load target="filter/logout.xml" />
<load target="filter/openid_login.xml" />
넣어주시고 로그인 창이 들어갈 자리에는
<div cond="!$is_logged">
로그인 전 모습
</div>
<div cond="$is_logged">
로그인 후 모습
</div>
넣어주시면 됩니다.