그누보드 자동링크, url link 자동 인식(autoLink) 게시판에 적용하는 방법?

페이지 정보

작성자 관리자 (49.♡.11.159) 조회 2,761회 작성일 22-08-20 22:33(마지막 글 수정: 2022년 08월 20일)

본문

그누보드 게시판에 링크를 남기면 대부분 자동으로 링크가 생성되는데 안되는 경우 아래와 같은 방법으로 해결 하세요.


1. 특정한 곳에 적용하고 싶을때

출처: https://sir.kr/qa/430230

실제로 url.kr 게시판에 아래와 같이 적용해 봤습니다.

저는 여분필드 7을 이용하는 것이라 wr_7 인데 글 컨텐츠에 적용할땐 wr_7  대신 wr_content 입력 하면 됩니다.

* 3번 방법은 wr_content 에 적용하는 것이라 저 처럼 wr_content 아닌 곳에 적용할때 유용한 것 같습니다.

물론 3번 수정 파일에 wr_7 도 추가 하면 되겠지만 좀 오바인것 같아서...전 특별한 곳에만 적용할때 이방법이 더 적합하다고 생각합니다.


[code]

<div class="tip">

<ul>

<li>

<?php 

$view['wr_7'] = preg_replace('/https?:\/\/[\w\-\.!~#?&=+\*'"(),\/]+/','<a href="$0">$0</a>', $view['wr_7']);

echo get_view_thumbnail(($view['wr_7'])); // 글내용 출력 

?>

</li>

</ul>

</div>

[/code]



2. 게시판 스킨 파일(view.skin.php) 수정

출처: https://sir.kr/g5_tip/18969

view.skin.php 의 가장 하단부에 아래의 스크립트를 입력합니다.


[code]

<script>

function autoLink() {

    for (beforeLink of arguments[0].getElementsByTagName("a")) beforeLink.innerHTML = beforeLink.innerHTML.replaceAll('htt', 'htt*');

    keepProtocol = arguments[0].innerHTML.replaceAll('href="htt', 'href="htt*').replaceAll('src="htt', 'src="htt*').replaceAll('title="htt', 'title="htt*').replaceAll('background="htt', 'background="htt*').replaceAll('url(htt', 'url(htt*').replaceAll("url('htt", "url('htt*").replaceAll('alt="htt', 'alt="htt*');

    arguments[0].innerHTML = keepProtocol.replace(new RegExp("(http|https)://([-/.a-zA-Z0-9_~#%$?&=:200-377()]+)", "gi"), "<a href='$1://$2' target='_blank'>$1://$2</a>").replaceAll('href="htt*', 'href="htt').replaceAll('src="htt*', 'src="htt').replaceAll('title="htt*', 'title="htt').replaceAll('background="htt*', 'background="htt').replaceAll('url(htt*', 'url(htt').replaceAll("url('htt*", "url('htt").replaceAll('alt="htt*', 'alt="htt');

    for (afterLink of arguments[0].getElementsByTagName("a")) afterLink.innerHTML = afterLink.innerHTML.replaceAll('htt*', 'htt');

}

autoLink(bo_v_con);

</script>

[/code]



3. 그누보드 원본파일 수정

원본파일 수정이지만 가장 간단합니다. ^^

출처: https://sir.kr/g5_tip/18969  의 댓글


수정파일: lib/common.lib.php

552 바로 밑에 $content = url_auto_link($content);

넣으시면 자동 링크됩니다.


[code]

 if($filter)

            $content = html_purifier($content);

            $content = url_auto_link($content);

        }

[/code]




그누보드 관련된 게시글 보기

댓글목록

등록된 댓글이 없습니다.