default value 호출하기.. 라고 해야하나요?? 제목이 좀 이상하긴 하지만..

이 팁은 php문서를 수정하는 것이 아니라 /zbxe/modules/board/skins/ 경로안에 있는 모듈보드스킨의 글쓰기 창에서 간단히 수정할 수 있는 방법입니다. 아무래도 다른 문서를 만지는 것은 업데이트도 있고, 실력없는 저로서는 불안하기 때문에..
또, 제 홈페이지에서는 php문서를 수정하면 이상하게 에러가 출몰해서 아예 건들지 않습니다.
아무것도 건드리지 않고 드림위버로 저장만해서 올려도 에러가 뜨더군요.. 참 황당스러운.. -_-ㆀ 쓸데 없는 말은 집어치우고 본론으로 들어가도록 할께요.

write_form.html 문서에서 form 영역을 살펴보면 아래와 같은 부분이 있습니다.
<input type="hidden" name="content" value="{$oDocument->getContentText()}" />
바로 내용을 불러오는 인풋이죠.
type="hidden" 처리를 했기 때문에 글쓰기창에서는 에디터만 보인다는 것은 아실테죠?
이 것을 변경하여 에디터에 원하는 글을 넣는 방법입니다. 3가지 방법이 있으니 원하는 방법으로 테스트해보시면 됩니다.

1. 글쓰기창에 변수를 선언하여 문자호출하기 일단 아래의 코드창에 있는 내용을 살펴보세요. view plaincopy to clipboardprint? {@ $Content = "에디터에 미리 글을 넣어봅시다<br />태그를 이용할 수도 있군요!";} <input type="hidden" name="content" value="<!--@if($document_srl == $oDocument->document_srl)-->{$oDocument->getContentText()}<!--@else-->{$Content}<!--@end-->" /> {@ $Content = "에디터에 미리 글을 넣어봅시다<br />태그를 이용할 수도 있군요!";} <input type="hidden" name="content" value="<!--@if($document_srl == $oDocument->document_srl)-->{$oDocument->getContentText()}<!--@else-->{$Content}<!--@end-->" /> 왜 저렇게 했는지 아시는 분들은 이미 아실테죠?
첫번째 줄에서 $Content라는 변수를 선언하여 두번째줄의 내용에서 제목변수와 함께 호출을 했습니다. 내용이 들아가는 value에 아래와 같은 곳이 있는데요. view plaincopy to clipboardprint? <!--@if($document_srl == $oDocument->document_srl)-->{$oDocument->getContentText()}<!--@else-->{$Content}<!--@end--> <!--@if($document_srl == $oDocument->document_srl)-->{$oDocument->getContentText()}<!--@else-->{$Content}<!--@end--> 위에서도 말씀드렸듯이 {$Content} 이 부분은 선언한 내용을 호출한 부분이구요.
나머지부분또한 필요해서 넣은 것입니다.
새글로 작성할 때에는 상관이 없는데, {$Content}만 호출하여 글수정을 하면 이미 작성된 부분을 반영하지 못하더라구요.
그래서 저렇게 넣은 것입니다. 문서의 번호가 부여된 글.. 그러니까 이미 작성된 글에서는 {$Content}를 호출하지 않게요. 아래는 테스트 결과입니다.
((-------IMAGE-------))
2. 위의 경우로 예를 들면 $Content 변수를 선언하지 않고 value에 직접 내용을 입력하는 방법입니다. view plaincopy to clipboardprint? <input type="hidden" name="content" value="<!--@if($document_srl == $oDocument->document_srl)-->{$oDocument->getContentText()}<!--@else-->에디터에 미리 글을 넣어봅시다<br />태그를 이용할 수도 있군요!<!--@end-->" /> <input type="hidden" name="content" value="<!--@if($document_srl == $oDocument->document_srl)-->{$oDocument->getContentText()}<!--@else-->에디터에 미리 글을 넣어봅시다<br />태그를 이용할 수도 있군요!<!--@end-->" /> 에디터에 미리 글을 넣어봅시다<br />태그를 이용할 수도 있군요! 이 글귀가 있는 곳에 원하는 내용을 넣으시면 됩니다.

3. skin.xml을 이용하여 각 게시판마다 다른내용을 출력할 수 있습니다. skin.xml문서를 열어 변수를 추가합니다.
저는 editor_message로 추가했습니다.

((-------IMAGE-------))

그렇다면 이번에는 skin.xml 에 추가한 변수를 에디터에 불러와야겠죠?
어떻게 호출하는지 아시겠지만 처음사용하는 분들을 위해 설명을 해볼께요. write_form.html 문서를 열고 form영역안에 아래와 같이 추가하시면 됩니다. view plaincopy to clipboardprint? <input type="hidden" name="content" value="<!--@if($document_srl == $oDocument->document_srl)-->{$oDocument->getContentText()}<!--@else-->{$module_info->editor_message}<!--@end-->" /> <input type="hidden" name="content" value="<!--@if($document_srl == $oDocument->document_srl)-->{$oDocument->getContentText()}<!--@else-->{$module_info->editor_message}<!--@end-->" /> 내용을 불러오는 곳에 {$module_info->editor_message} 이 변수를 추가했습니다.
아시겠지만 skin.xml에 추가한 변수이름이 editor_message이고...
skin.xml에서 추가한 변수의 호출시작은 $module_info로 합니다. ... 글을 마치며 ...

확장변수를 이용하여 위와 같이 할 수도 있지만 많이 번거로울 것 같아서 생략합니다.

클릭하면 사라지는 자바가.. 저는 적용이 안되더군요. 음..

여러가지로 응용해보세요.
출석부를 만들다가 해보니 되길래 팁게시판에도 없는 것 같아서 올리는 팁입니다.
by Anna 안나 2008. 6. 1. 20:42