묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
CSS나 PHP에 이런기능을 하려면....?
2008.06.03 19:51
이미지링크나 그냥 링크이 앞부분 링크를 한 페이지에서만 정하고 나머지 부분에 자동으로 그 앞부분이 붙여지게 할수 있는지가 궁금합니다.
예를 들면,
<img src="./images/blank.gif" alt="" class="mask" />
이런 태그가 있는데 src부분 앞에 들어갈 주소를 한곳에서 지정하면 자동으로 저 이미지가 거기로 링크되게 말입니다.
만약에 실제 이미지 주소가 "http://abc.com/images/blank.gif" 인데 태그에는 "./images/blank.gif" 만 적어놓고 다른곳에서 설정을 하면 실제론 "http://abc.com/images/blank.gif" 에서 이미지를 가져오게 말입니다.
모든 이미지를 찾아가면서 앞에 "http://abc.com/" 를 붙일수도 있겠지만 너무 번거러워서요. 제발 방법이 있으면 좀 가르쳐주세요.
예를 들면,
<img src="./images/blank.gif" alt="" class="mask" />
이런 태그가 있는데 src부분 앞에 들어갈 주소를 한곳에서 지정하면 자동으로 저 이미지가 거기로 링크되게 말입니다.
만약에 실제 이미지 주소가 "http://abc.com/images/blank.gif" 인데 태그에는 "./images/blank.gif" 만 적어놓고 다른곳에서 설정을 하면 실제론 "http://abc.com/images/blank.gif" 에서 이미지를 가져오게 말입니다.
모든 이미지를 찾아가면서 앞에 "http://abc.com/" 를 붙일수도 있겠지만 너무 번거러워서요. 제발 방법이 있으면 좀 가르쳐주세요.
댓글 6
-
55555
2008.06.03 20:41
-
울랄라끼이잉
2008.06.03 20:57
아~ 답변 너무 감사합니다. 그런데 XE에서 저 변수는 무슨 파일에서 설정해야하나요? -
magici
2008.06.04 03:37
classes/display/DispalyHandler.class.php 파일에서 설정하시면됩니다.
전소스를좀수정했지만 아마도 40번째 줄근처에..
Context::set('content', $content); 있습니다..메인컨텐츠 설정하는부분
에 추가해주시면됩니다.
아래는 모듈의 이름을 받아와서 그이름에따라 그림을 출력하는 예제입니다.
$imagename = $oModule->mid;
Context::set('topimage',$imagename); // (다른곳에서 사용할 변수명 , 내용)
사용하고 싶은곳 (layout skin)
<img src = images/{$topimage}.gif>
이런식으로 응용해서 사용하고있습니다
를 사용하시면 미리 선언된 내용을 불러옵니다...
% 오타 수정하였습니다 .. -
울랄라끼이잉
2008.06.04 06:17
magici님이 말씀하신대로 했는데 안돼네요. 제가 제대로 한건지 확인 좀 부탁드립니다.
일단 classes/display/DispalyHandler.class.php 에서
Context::set('content', $content); 바로 밑에
$imagepath = 'http://localhost/zbxe/tempimage';
Context::set('imagepath', $imagepath); 이렇게 두줄 추가했습니다.
그리고 선택한 레이아웃 스킨폴더에
<img src="{imagepath}/home/logo.gif" /> 이렇게 넣어서 링크를 걸었습니다.
logo.gif파일의 풀경로는 http://localhost/zbxe/tempimage/home/logo.gif 입니다. 링크주소는 맞게 설정한거 같은데 {imagepath} 이게 제가 지정해준 값으로 바뀌질않고 그냥 imagepath/home/logo.gif 로 링크되게 나옵니다.
제가 뭘 잘못한것인지 ㅜㅜ
그리고 classes/display/DispalyHandler.class.php 에 저걸 추가하면 {content} 부분안에서만 {imagepath}가 유효하나요? {content}는 제로보드가 디스플레이되는 부분 아닌가요? 전 웹사이트 전체에 저 변수가 적용되게 해야하는데....이것도 혹시 아시면 좀 가르쳐주세요. -
울랄라끼이잉
2008.06.04 06:56
근데 저렇게 복잡하게 안하고 55555님이 말씀하신것처럼 php 변수로 했으면 하는데 global 변수를 등록하는법을 몰라서요. 각 파일마다 변수를 등록하긴 싫은데.... -
magici
2008.06.04 10:26
읔..오타가있었네요 ..ㅠ.ㅠ
호출시에는 {$변수명}이죠 ....XE기본문법 ;;;$표시 빠져서 안되는거니 다시확인해보세요
<img src="{imagepath}/home/logo.gif" />
아니고..
<img src="{$imagepath}/home/logo.gif" />
입니다...
{@
$test = "http://www.xxx.com/";
}
변수선언 해두시구요
쓸떄는
<img src="{$test}images/xxx.gif" alt="" />
이런식으로 쓰시면 됩니다
아무것도 없는데 ./ 를쓰면 자동으로 홈경로가 붙어
원하는 결과를 못가져올수도 있죠