게시판 본문에 강제로 새창 링크 주기 : 스마트 에디터 > 그누보드5 팁자료실

그누보드5 팁자료실

게시판 본문에 강제로 새창 링크 주기 : 스마트 에디터 정보

게시판 본문에 강제로 새창 링크 주기 : 스마트 에디터

본문

 

 

요즘 가끔 스마트 에디터에 글쓰기를 하다 보니...

자동 링크가 생겨나기는 한데 a태그에서 현재창 링크가 일어나더군요.

이건 별로 원하는 것이 아니어서 잠시 대갈빡을 굴려 보았습니다.

아래 코드를 view.skin.php 의 가장 하단부 또는 view.tail.skin.php 파일 안에 붙여 넣으면 본문 내의 모든 링크가 새창 링크로 전환됩니다.

 


<script>
for (va = 0; va < bo_v_con.getElementsByTagName("a").length; va++) bo_v_con.getElementsByTagName("a")[va].target = "_blank"; 
</script>

 

또는 좀 더 엄밀성을 기하여

 


<script>
if (typeof document.querySelectorAll("#bo_v_con a")[0] == "object") for (view_link of document.querySelectorAll("#bo_v_con a")) view_link.target = "_blank";
</script>

 

 

추천
7

댓글 19개

좋은 소스 공개 해 주셔서 감사합니다. 유용할 듯 합니다.

게시판 관리자 설정에서 링크 어떻게 열게 할건지 옵션으로 넣어 주면 좋겠네요.^^
예를 들어 $board['bo_1'] 에서 _self 와 _blank 를 직접 입력이나 체크박스 또는 라디오 버튼 등으로 선택하게 만들고...
소스 중에서 ...target = "_blank"; 이 부분을
...target = "<?php echo $board['bo_1']; ?>"; 로 바꾸면 되겠지요.
그누 순정 기본이 self로 되어 있다고 했으니 필요한 _blank를 여분필드를 이용해 추가 후 변경 하고 싶은 사람은 체크나 라디오버튼을 누르면 되겠네요. 그런 뜻인거죠? 제가 이해한것이 맞나요?
그누 순정 기본 링크는 타겟을 주지 않으면 관리자 설정에서 정한대로지만 스마트에디터를 걸치면 무조건 현재창으로 바뀌지요.
그걸 이 팁으로 조절하려면 여분필드 조립이 필요하다는 얘기지요.
게시판을 만들때 라디오버튼을 이용해서 타겟을 원하는 대로 정할 수있게 하는 것은 아직 제능력 밖이지만, 게시판아래에 공개해주신 코드를 입력해서 게시판 마다 타켓을 원하는 데로 정할 수있어서 좋습니다.
고맙습니다.
안녕하세요.
요즘 글을 읽다보니 보안상 타겟을 _blank 준곳에  아래와 같이 rel 을 붙여주면 좋다고 합니다. 이것을 추가하고 싶은데요. 어떻게 넣어야 할지 몰라서요. 혹시 조언 부탁드려도 될까요?
예) target='_blank' rel='noopener noreferrer'


<script>
for (va = 0; va < bo_v_con.getElementsByTagName("a").length; va++) {
    bo_v_con.getElementsByTagName("a")[va].target = "_blank";
    bo_v_con.getElementsByTagName("a")[va].rel = "noopener noreferrer";
}
</script>
감사 합니다.
퇴근후 적용해 보겠습니다

update)
잘 됩니다. 그누보드에서 자동으로 nofollow가 붙나보네요.
소스보기를 하니 아래와 같이 3개 들어가네요. 확실히 막아주는것 같아요. 감사합니다.
<a href="https://87mania.co.kr" target="_blank" rel="nofollow noreferrer noopener">
전체 2,427 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT