2016-12-14 8 views
0

drupal에 게이팅 된 컨텐츠 모듈이 있다는 것을 아는 사람이 있습니까? PDF를 다운로드하기 전에 양식을 추가하고 싶습니다. 예 : https://www.hds.com/en-us/pdf/ebook/cio-guide-to-digital-transformation.pdfdrupal에있는 임의의 게이트 된 컨텐츠 모듈

사이트 방문자가 특정 유형의 콘텐츠에 액세스하기 전에 어떤 종류의 동의 또는 거래를 수락해야하는 콘텐츠.

+0

어떤 아이디어도 도움이됩니다. –

답변

0

당신은 자바 스크립트에서 링크 클릭을 가로 챌 수 있습니다

<a href="..document path" class="confirmation">Download document</a> 
... 
<script type="text/javascript"> 
    var elems = document.getElementsByClassName('confirmation'); 
    var confirmIt = function (e) { 
     if (!confirm('Do you agree...?')) e.preventDefault(); 
    }; 
    for (var i = 0, l = elems.length; i < l; i++) { 
     elems[i].addEventListener('click', confirmIt, false); 
    } 
</script> 

을 당신이 AJAX 호출을 사용하여 서버에 뭔가를 확인하려면 ...

물론

이 양식에서이 방법은 피할 수있다 브라우저에 문서의 직접 경로를 입력하십시오.

더 안전한 방법은 .htaccess를 사용하여 문서 파일에 대한 HTTP 요청을 가로 채고 php를 호출하는 것입니다. PHP는 사용자가 확인했는지 여부와 그가 문서를 제공했는지 그리고 메시지를 던지지 않았는지 확인해야합니다.

+0

양식을 추가하고 싶습니다. –

0

또 다른 posibillity는 Drupal Commerce 모듈 제품군에 Commerce File을 사용하는 것입니다. 이를 통해 파일에 대한 액세스를 판매 할 수 있습니다.