웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
위의 내용만 아래로 교체합니다.
링크새창띄우기(target=_blank) - str_replace이용법
2011.09.03 10:44
링크를 새창으로 띄우는 소스를 팁에서 보았지만,
에디터를 수정하고 복잡한 방법을 사용하시길래,
제가 사용하는 방법을 소개합니다.
DB에 기록될때와는 상관없이 표현만 바꾸어주면 간단한데요.
아래 소스 보시면 아실테지만,
'<a ' 혹은 '<A ' 를 '<a target=_blank '+
' 로 'str_replace해주는 방식입니다.
모듈을 수정한는 것이 아니라,
스킨에서 조정하는 것이라, 업데이트에 따른 부담도 없지요.
간단설명
<게시물>
리플은 새창으로 잘 되길래, 본문만 수정합니다.
스킨의 view_document.html
<!--@if($module_info->active_optional_button == 'Y')--> {$oDocument->getContent(false)} <!--@else--> {$oDocument->getContent()} <!--@end-->
위의 내용만 아래로 교체합니다.
<!--@if($module_info->active_optional_button == 'Y')--> {@ $interDocument=str_replace('<a ','<a target=_blank ',$oDocument->getContent(false)); } {@ $interDocument=str_replace('<A ','<a target=_blank ',$interDocument); } {$interDocument} <!--@else--> {@ $interDocument=str_replace('<a ','<a target=_blank ',$oDocument->getContent()); } {@ $interDocument=str_replace('<A ','<a target=_blank ',$interDocument); } {$interDocument} <!--@end-->
<쪽지>
modules/communication/skins/default
내의 수정파일 2가지
messages.html
new_message.html
{$message->content}
위의 부분을 아래와 같이 수정합니다.
{@ $interMessage=str_replace('<a ','<a target=_blank ',$message->content); } {@ $interMessage=str_replace('<A ','<a target=_blank ',$interMessage); } {$interMessage}
끝~