1. 기본 리다이렉트 코드 (참조1)

if ( window.location == 'http://www.abc.com/' ) {
  window.location.href='http://www.codingfactory.net/';
}

2. 리스트 진입시 해당 url이 글쓰기 입력폼이 아닌 경우, 글쓰기 화면으로 이동하기

1의 코드를 참조하여,

<script cond="!$grant->manager">
   function decodeEntities(encodedString) {
      var textArea = document.createElement('textarea');
      textArea.innerHTML = encodedString;
      return textArea.value;
   }

   const url = "{getUrl('mid','notice2','act','dispBoardWrite')}";


   if ( window.location !== decodeEntities(url) ) {
      window.location.href=decodeEntities(url);
   }
   // alert(decodeEntities(url));
   // window.location.href = "{getUrl('mid','notice2','act','dispBoardWrite')}";
   // console.log("{getUrl('mid','notice2','act','dispBoardWrite')}")
   // https://posep.org/index.php?mid=notice2&act=dispBoardWrite
</script>

cond="!$grant->manager" 부분은 관리자가 아닌 경우

function decodeEntities 함수는 {getURL('mid','게시판명','act','dispBoardWrite'}로 자바스크립트에서 가져올 경우 &가 &amp; 엔코딩되어있으므로 이걸 다시 디코딩해줘야함. (참조2)


참조

1. https://www.codingfactory.net/10691

2. https://stackoverflow.com/questions/1147359/how-to-decode-html-entities-using-jquery


추천한 사람

 
댓글은 로그인 사용자만 작성 가능합니다. 로그인하기