질문/조언질답게시판

예를들어 게시판 광고영역이 있는데

url이 aaa.com/board 에서만 광고가 노출되고

aaa.com/board/1

aaa.com/board/2

이런식으로 도메인이 바뀌면 광고노출이 안되게 하고싶은데

광고 스크립트를 넣을수 있는 부분에

<!--@if (window.location.href == aaa.com/board) -->
광고스크립트
<!--@end-->

이런식으로 넣어봤는데 동작은 안하네요 ㅜㅜ 지식이 많이 부족합니다 도움주시면 감사하겠습니다

 

  • profile

    광고 넣는 곳이라고 하는 것이 명확한 설명이 없어 난해하지만 추론을 하게 됩니다.
    - 아마 게시판 스킨 설정 등에 광고 입력란이 있는 듯 합니다.

    xe에서 사용되는 함수 등 여러 조건을 걸어주려면 지금 추측되는 광고입력란에 입력하면 안되는게 일반적입니다.

    스킨에서 직접 해당 광고를 불러오는 부분을 조건으로 감싸거나 혹은 광고입력란을 이용하지 않고 직접 스킨에 조건+광고코드 까지 넣으셔야 합니다.

    <block cond="$mid=='board' && !$document_srl">
    광고코드 또는 광고코드를 불러오는 코드
    </block>

    엘리먼트는 block이 아닌 div 등 다른 것을 사용하셔도 됩니다.

    해석을 해드리면 모듈명(게시판명)이 board 이고 문서읽기가 아닌 경우에 출력이 되는 조건 입니다.
    즉 말씀 하신 게시판 첫화면 목록에서만 출력됩니다.

     

    게시판 목록에 관련된 부분인 것으로 추측되니 list.html 등과 유사한 이름의 파일에서 찾아 추가 또는 수정하셔야 할 것 같습니다.


    사용하는 게시판 스킨에 따라 모두 다른 상황이고 질문 자체가 구체적이지 못하면 답변을 얻지 못할 확율이 높습니다. 왜냐면 답변을 하려면 질문자분께 또다른 질문을 던지고 다시 답을 얻고 그 답을 가지고 다시 문제를 확인하는 과정이 길어지기 때문입니다.

  • profile ?

    웹지기님 답변 감사합니다!

    전후 설명이 부족했군요 죄송합니다 ㅜㅜ

     

    글에서는 a게시판에서만 광고 노출이라고 했지만

    실제로 구현하고싶은건 현재 게시판을 메인화면으로 사용하고있어 도메인으로 접속시(aaa.com) 첫 화면(게시판)에서만 특정위젯과, 광고를 노출하고 다음페이지, 다른게시글에서는 해당 위젯,광고 노출을 막고싶어서 글 올렸습니다 제가 사용하는 스킨에 아래와 같이 스크립트 부분이 나눠있어서

    게시판스킨.PNG

    짧은 지식으로 해당 부분에 제가 생각했던 소스를 넣으면 동작하겠거니 했지만 동작을 하지 않더군요

     

    제가 써놓고도 무슨말 하는지 모르겠네요..

     

  • ? profile

    저기의 광고코드에 제가 설명드린 조건을 걸어도 아마 조건이 걸리지 않을 겁니다. 해보시고 안되신다면
    스킨 파일을 직접 수정해서 저부분을 불러오는 곳을 조건으로 감싸거나 혹은 조건+광고,위젯 을 넣으셔야 합니다.

  • ? profile

    이해가 가지 않는점

    지금 게시판마다 설정이 다 따로 있을텐데 다른 게시판에서는 동작이 안되게 해야 한다는 점이 모순이 발생합니다.
    게시판 스킨 설정 아닌가요?

     

    만약 단순히 목록에서만 보이고 게시글 열람시에는 안보여야 한다면

     

    <block cond="!$document_srl">
    광고코드 또는 광고코드를 불러오는 코드
    </block>

     

    mid 조건을 빼시면 됩니다.

  • profile ?
    게시판 구성이 a게시판 /b게시판 /c게시판이 으로 되어있다면
    a게시판이 현재 사이트 메인화면으로 설정한 상태입니다 특정광고와 위젯을 메인화면 "도메인.com" (a게시판) 일때만 노출하고 싶은겁니다
    특정 url일경우에만 노출하는 방법은 없을까요?
  • ? profile
    특정 mid값에서만 불러오는 if구문을 사용하시면 됩니다.
  • ? profile
    아니면 cond= 써서..
    뭐 예를 들어서
    <block cond="$mid=='게시판mid명'">
    광고 중얼중얼
    </block>
  • ? profile
    혹은
    <!--@if(Context::get('mid')=='게시판mid명')-->
    출력할광고
    <!--@end-->
  • profile ?
    답변 감사합니다 특정게시판 mid가 aa이고 메인화면 으로 설정되어있는데 메인화면으로 접속시 광고가 표시되고 aa게시판으로 접속시 광고표시가 안되게하려면 방법있을까요?
  • ? profile
    예...? aa가 메인화면 겸 게시판이라는건가요?
    그럼 사용하시는 게시판 스킨 list.html 상단에 마개조해보세요.
  • profile ?
    네! 맞습니다 제가 말을 힘들게했네요ㅜㅜ 마개조가 뭔가요?
  • ? profile
    마음대로 개조요 ㅋㅋㅋㅋ..
    지금 작업하고 있어서..자세한 코드는 힘들것 같지만 일단 제 생각으로는 @웹지기님이 말씀해주신

    <block cond="!$document_srl">
    광고코드 또는 광고코드를 불러오는 코드
    </block>

    이걸 list.html 상단에 넣으면 될것 같은데요?
  • ? profile

    게시판 스킨 설정에 넣으면 안된다는 거 확인하셨나요? 그럼 이제 어디다 광고나 위젯을 넣을 지 결정하셨는지 알려주세요.

    - 게시판 스킨 설정에 넣을때는 각 게시판마다 광고를 직접 넣을 수 있지만 여기가 아닌 다른 곳에 넣을때는 모듈명 조건이 포함되어야 해서 이부분이 필요합니다.

  • profile ?
    네! 안되는거 확인 했습니다 게시판 스킨 자체를 수정하려고 합니다!
    아직 메인화면겸 게시판인 aa게시판에 도메인 aaa.com일때만 광고가 상단에 뜨게하려면 조건을 어떻게 주어야할지 감이 안잡히네요ㅜㅜ
  • ? profile
    솔직히 이렇게 설명하시면 굉장히 답변하기 어렵습니다. 그래서 다른 분들도 답변하기 꺼려 하실 겁니다.

    결론적으로 대화를 통해 제가 내린 결론은

    board 게시판에서 목록 그것도 목록의 첫페이지 에서만 광고나 위젯이 나오고 싶다는 것으로 판단했습니다.
    (첫화면, 첫페이지와 게시판의 목록의 1페이지는 다른부분이라..... )

    사용하시는 스킨의 목록을 담당하는 파일이 list.html 이라고 가정을 하겠습니다. 물론 지금 게시판 스킨 설정에서 광고를 입력하면 출력해주는 코드가 이 파일에 없을 수 있습니다. _header , _footer.html 또는 다른 파일에 있을 수 있습니다.

    무시하고 위젯,광고스크립트를 지금 지정한 스킨 파일에 넣고자 한다고 결정하셨다면.

    list.html 과 같은 파일을 열어보시고 원하는 광고위치를 파악해 보신 후

    <block cond="$mid=='board' && !$document_srl && Context::get('page')==1">
    광고코드
    </block>

    이렇게 추가해 보시기 바랍니다.
    board 라는 mid 를 가진 곳에서 글 읽기가 아닌 목록인데 그것도 목록의 1페이지에서만 한정해서 광고를 보여주는 조건입니다.
  • profile ?

    정말 감사합니다 ㅠㅠ 집에 도착하자마자 해봤더니 정상작동합니다ㅠㅠ 다만 아쉬운것이 메인화면에서만 동작하게 하고싶습니다 물론 메인화면이 aa게시판이지만 aaa.com/board 일때는 안보이고 메인화면에서 "aaa.com"일때만 보이게 하는건 욕심일까요ㅜ

  • ? profile
    무슨 말씀 이신지 도통 모르겠습니다.
    메인으로 지정한 게시판 mid 'board' 라고 가정하고 작성해 드렸습니다. 다른 곳에서는 광고가 보일 수가 없습니다.
  • ? profile

    혹시 같은 메인인데 도메인 주소만으로 접근했을때만 광고를 보여주고 싶으신건가요?  과연 이렇게 까지 필요한 경우가 있는지 의아하네요. 이해하는데 굉장히 오래걸렸습니다.

    같은 페이지를 결국 주소에 따라서 안보였으면 하는 것인데... 이게 왜 필요하신지..

    <block cond="$current_url=='https://abc.com/'">
    광고코드
    </block>

    해보지는 않았습니다. 만약 안된다면....

  • profile ?
    설명 해주시고도 답답하시게 해서 죄송합니다..

    예를들어 board 게시판이 메인화면이고 메인화면에서만 출석위젯이 필요한데
    <block cond="$mid=='board' && !$document_srl && Context::get('page')==1">
    출석위젯
    </block>
    을 적용하면 최초 홈페이지 aaa.com 접속시 출석위젯이 보이지만(mid가 board이기 때문에)
    aaa.com/board 링크를 들어가도 보이는데
    aaa.com/board 접속시에는 위젯이 안보이고 aaa.com 에 접속했을시에만 위젯이 보이게 하고싶습니다
  • ? profile

    aaa.com 으로 접속해도 aaa.com/baord 로 접속한 것과 같은 것입니다. 단순히 주소를 어떻게 타이핑 또는 어떤 링크를 클릭했냐의 차이인데 이것 까지 구분하려고 했던 의도라면 처음부터 자세히 설명을 해주셨어야 할 것 같습니다. 일단 위에 댓글에 달아드린 것으로 해보세요.

     

    처음에 달아드렸을때 ' 따옴표가 하나 빠졌었네요.

  • profile ?
    동작하지 않는군요ㅜㅜ
  • ? profile
    뭐가 안된다는 건지 자세히 적어주시면 다른 분들도 추가적인 답변을 드릴 수 있을 겁니다.
    위 코드 바로 위에 {$current_url} 라고 넣어보시고 어떻게 출력되는지 적어줘보세요
  • ? profile
    답변이 없으셔서 제가 직접 테스트 해보니 이상없이 동작 합니다.

    제가 위에 말씀 드린대로 적당한 곳에 {$current_url} 를 입력해서 업로드 한 후
    위젯코드가 동작되었으면 하는 곳에 접속하신 다음 {$current_url} 부분이 어떻게 출력이 되는지 확인해 보시고
    제가 알려드린 코드의 주소형태와 다르다면 고쳐서 사용하시면 됩니다.

    개인적으로 테스트 했는데 도메인주소 외 다른 게시판 주소나 모듈명이 붙은 경우 출력이 안됩니다.
  • profile ?
    웹지기님 정말 감사합니다 current_url, current_url(), url, url 불러오는건 다해봤는데 안되서 list 소스를 다시보니 cond="$mi->p_ad_top" 부분이........ 해당스킨설정을 공백으로두니 동작을 안했었던거 같습니다... 해당부분 지우니 동작하네요..... 뺏은거같아 죄송하고 정말 감사합니다

서버에 요청 중입니다. 잠시만 기다려 주십시오...