갤러리게시판에서 제목에 엔터기능 혹은 <br>태그를 사용하고 싶습니다. 채택완료
안녕하세요. 갤러리게시판에서 제목에 <br> 태그를 사용하고 싶습니다
해당 게시글을 참고해서 태그를 수정해보았습니다만, 적용이 되지 않습니다.
제목에서 엔터를 치면 바로 게시글 등록이 되며, <br>태그는 일반 텍스트로 인식이 됩니다.
어떻게 해야 엔터 기능을 사용할 수 있을까요?
답변 3개
list.skin.php에 제목 대신 내용 출력 + html 체크를 디폴트로 설정+본문출력p태그 속성 변경해서 작업 완료했습니다.
1. list에서 제목 대신 내용 출력
www/theme/basic/skin/board/스킨명/list.skin.php
-> gall_text_href(제목이 표기되는 부분의 class명이나 id명) 검색
<a href="<?php echo $list[$i]['href'] ?>">
<?php echo $list[$i]['wr_subject'] ?>
<?php if ($list[$i]['comment_cnt']) { ?><span class="sound_only">댓글</span><?php echo $list[$i]['comment_cnt']; ?><span class="sound_only">개</span><?php } ?>
</a>
이 부분의 wr_subject를 wr_content로 변경
<a href="<?php echo $list[$i]['href'] ?>">
<?php echo $list[$i]['wr_content'] ?>
<?php if ($list[$i]['comment_cnt']) { ?><span class="sound_only">댓글</span><?php echo $list[$i]['comment_cnt']; ?><span class="sound_only">개</span><?php } ?>
</a>
2. 옵션 html 체크를 기본으로 사용
www/bbs/write.php
-> 303번째 라인
$html_checked = "";
"" 안에 checked 입력
$html_checked = "checked";
3. 본문 출력 p태그에 display 속성 변경
/www/theme/basic/skin/board/스킨폴더/style.css
td.wr_content > p { display: block; }
태그 추가
4. 관리자 페이지 > 게시판 관리 > DHTML 에디터 사용 체크
댓글을 작성하려면 로그인이 필요합니다.
/lib/common.lib.php 파일을 열어보시면요.
get_list <-- 이 해당함수에서요..
$list['content'] = conv_content($list['wr_content'], $html);
요렇게 된 내용을 확인해 보실수 있습니다. 요기서 $html값에 따라 엔터값을 <br>로 자동으로 바꿔줍니다.
$html = 0 <-- text로 바꿔줌
$html = 1 <-- 필터링
$html = 2 <--- 필터링 및 엔터값을 <br>로 바꿔줌
view에서 참고 해서 요렇게 옵션을 넣어주시면되니다.
해당 참고 함수는 conv_content 요함수를 한번 참고 해보시기 바랍니다.
답변에 대한 댓글 3개
어떻게 더 자세한 설명을 드렸으면 좋을까요?
다시한번 시도 해보시고 안되시면 쪽지 주세요.!
그리고 제목도 마찬가지입니다.
$list['subject'] = conv_subject($list['wr_subject'], $board['bo_subject_len'], '…');
요렇게 되어 있을겁니다.
함수를 따라가보시면 get_text 함수를 사용합니다. 여기에도 $html 옵션이 있습니다.
이부분을 자세히 보시면 됩니다.
// 제목을 변환
function conv_subject($subject, $len, $suffix='')
{
return get_text(cut_str($subject, $len, $suffix));
}
이 부분 수정해봐도 적용이 되지 않아서 계속 헤매게 되네요.
조언해주신 부분은 나중에 더 공부해보겠습니다. 감사합니다.
list.skin.php에 제목 대신 내용 출력 + html 체크를 디폴트로 설정해서 해결했습니다 !
댓글을 작성하려면 로그인이 필요합니다.
제목을 input 말고 textarea 로 바꾸시든가
아니면
제목하고 서브제목을 두개로 나눠서 저장을하셔요
그럼 두줄인거처럼 보일수도.ㅋ
답변에 대한 댓글 1개
<tr>
<th scope="row"><label for="wr_subject">제목<strong class="sound_only">필수</strong></label></th>
<td>
<div id="autosave_wrapper">
<input type="text" name="wr_subject" value="<?php echo $subject ?>" id="wr_subject" required class="frm_input required" size="50" maxlength="255">
<?php if ($is_member) { // 임시 저장된 글 기능 ?>
<script src="<?php echo G5_JS_URL; ?>/autosave.js"></script>
<?php if($editor_content_js) echo $editor_content_js; ?>
<button type="button" id="btn_autosave" class="btn_frmline">임시 저장된 글 (<span id="autosave_count"><?php echo $autosave_count; ?></span>)</button>
<div id="autosave_pop">
<strong>임시 저장된 글 목록</strong>
<div><button type="button" class="autosave_close"><img src="<?php echo $board_skin_url; ?>/img/btn_close.gif" alt="닫기"></button></div>
<ul></ul>
<div><button type="button" class="autosave_close"><img src="<?php echo $board_skin_url; ?>/img/btn_close.gif" alt="닫기"></button></div>
</div>
<?php } ?>
</div>
</td>
</tr>
여기에서
<input type="text" name="wr_subject" value="<?php echo $subject ?>" id="wr_subject" required class="frm_input required" size="50" maxlength="255">
이 부분을
<textarea type="text" name="wr_subject" value="<?php echo $subject ?>" id="wr_subject" required class="frm_input required" size="50" maxlength="255"></textarea>
이렇게 수정하라는 말씀이신가요?
이렇게 수정해도 엔터/br태그는 먹히지 않습니다.
좀 더 상세한 조언 부탁드려도 될까요?
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
$list['content'] = conv_content($list['wr_content'], $html);
이 함수의 wr_content 부분을 wr_subject로 변경한 코드를 추가해도 변화가 없습니다.
좀 더 상세한 조언 부탁드려도 될까요?