묻고답하기
애드온 개발 중 $addon_info 값이 템플릿 파일로 넘어오지 않는 문제-[해결]
2012.08.24 11:17
이제 막 xe 손대기 시작한 일인입니다..^^
공부겸해서 애드온을 개발하고 있는데요,
이 애드온은 회원가입 눌렀을 때, 후킹해서 약관 동의 페이지를 먼저 표시하도록 하는 애드온입니다.
약관 동의 페이지를 위해 tpl 디렉토리안에 html 파일을 만들어 두었습니다.
처음 회원가입 클릭하면 약관 동의 페이지가 잘 뜹니다.
그러나!!! 이 템플릿 파일 안에서 {$addon_info->agreement} 가 아무런 동작을 하지 않습니다.
agreement는 conf/info.xml 에 extra_vars 에 선언해둔 var 입니다.
애드온 메인 php 파일 안에서는 echo 로 찍어보면 정상적으로 나옵니다.
왜? 템플릿 파일인 html 파일 내에서 템플릿 문법대로 출력을 시키면 아무런 값도 찍히지 않을까요??
{$lang->agreement_page_title} 은 잘 찍힙니다..
제가 뭐를 놓치고 있는 걸까요??
도움말씀 좀 부탁드립니다..^^
XE core 1.5.3 사용중입니다.
-해결-
misol 님의 빠르고 정확한 답변으로 문제 해결했습니다.
myaddon.addon.php 파일 내에서 아래와 같이 작성을 해줘야 $lang, $addon_info 변수를 사용할 수 있네요..
Context::loadLang(_XE_PATH_.'addons/myaddon/lang');
Context::set('addon_info',$addon_info);
감사합니다.
갈길이 머네요..ㅎㅎ
- [2015/09/07] 묻고답하기 misol's mobile board skin에서 이미지 확대
- [2015/03/23] 포럼 이메일 주소 제공자를 제한하는 모듈 1개, 랜덤 게시글 애드온 1개 *4
- [2014/05/23] 묻고답하기 1.7.4 부터 트랙백 엮인글 차단 애드온이 필요없다고 되어 있던데... *2
-
[2014/04/15]
묻고답하기
애드온 설정파일을 작성할 때
*2 - [2014/04/06] 묻고답하기 XE홈페이지 처럼 댓글을 받으면 화면위에 뜨게끔 어떻게 하나요? *4
댓글 1
-
misol
2012.08.24 11:39
애드온 PHP 파일에 Context::set('addon_info',$addon_info); 라고 써주시고 템플릿 파일 읽어오게 해보세요.. -
앱스빱
2012.08.24 11:48
우왕~! 빠르고 정확한 답변 정말 감사합니다!!! loadLang() 함수처럼 변수 사용을 위해 세팅을 해줘야 하는 거였군요...정말 감사합니다.^^