0

테스트 페이지에 Facebook Checkbox Plugin을 구현하고 있습니다 (per their documentation). 그러나 확인란은 렌더링되지 않습니다. 그것은 숨겨진 채로 남아 있습니다.Facebook Checkbox 플러그인이 숨겨져 있습니다.

You can test my page here.

같은 문제가있는 다른 몇 가지 질문을 발견했지만 그 중 누구도 내 문제를 해결하지 못했습니다. 내가 확인했습니다 :

  • 내 FB 앱에 내 도메인이 허용 목록에 포함되어 있습니다.
  • user_ref은 항상 고유합니다.
  • 저는 개발 모드에서 테스트 할 수 있도록 앱의 소유자입니다.
  • FB 계정에 로그인했습니다. 나는이 문제를 해결하기 위해 무엇을해야하는지 확신 해요

    <?php $random_val=rand(100000,999999).rand(100000,999999).rand(100000,999999);?> 
    
    <html> 
    <head> 
    <script> 
        window.fbAsyncInit = function() { 
         FB.init({ 
          appId  : '472807186447994', 
          xfbml  : true, 
          cookie  : true, 
          version : 'v2.6' 
         }); 
    
         FB.Event.subscribe('messenger_checkbox', function(e) { 
          console.log(e); 
    
          if (e.event == 'rendered') { 
           console.log("Plugin was rendered"); 
          } else if (e.event == 'checkbox') { 
           var checkboxState = e.state; 
           console.log("Checkbox state: " + checkboxState); 
          } else if (e.event == 'not_you') { 
           console.log("User clicked 'not you'"); 
          } else if (e.event == 'hidden') { 
           console.log("Plugin was hidden"); 
          } 
         }); 
        }; 
    
        (function(d, s, id){ 
         var js, fjs = d.getElementsByTagName(s)[0]; 
         if (d.getElementById(id)) {return;} 
         js = d.createElement(s); js.id = id; 
         js.src = "//connect.facebook.net/en_US/sdk.js"; 
         fjs.parentNode.insertBefore(js, fjs); 
        }(document, 'script', 'facebook-jssdk') 
        ); 
    
        function confirmOptIn() { 
         FB.AppEvents.logEvent('MessengerCheckboxUserConfirmation', null, { 
          'app_id':'472807186447994', 
          'page_id':'408145106012959', 
          'ref':'some-ref-here', 
          'user_ref':'<?php echo $random_val; ?>' 
         }); 
        } 
    </script>  
    
    <div class="col-md-7"> 
        <div class="fb-messenger-checkbox" 
         origin="https://maartenbelmans.com/fbtest" 
         page_id="408145106012959" 
         messenger_app_id="472807186447994" 
         user_ref="<?php echo $random_val; ?>" 
         prechecked="false" 
         allow_login="true" 
         size="large"> 
        </div> 
    </div> 
    
    <body> 
        <input type="button" onclick="confirmOptIn()" value="Confirm Opt-in"/> 
    </body> 
    

    :

다음은 내 코드입니다. 아이디어가 있으십니까?

+0

Messenger 프로필에서 도메인을 허용 목록에 포함 시켰습니까? https://developers.facebook.com/docs/messenger-platform/reference/messenger-profile-api/domain-whitelisting – amuramoto

+0

@amuramoto 예, 했었습니다. 내 목록에서 포인트 1 참조 :-) – PoeHaH

답변

0

div에 origin = "maartenbelmans.com/"설정을 시도 했습니까? Origin은 도메인 일 뿐이므로 현재 플러그인이 허용 목록과의 원산지를 확인할 때 일치하는 항목이 없습니다.

0

한번이 문제 하나 건너 온 당신은, 그래서 2.8도 밖으로으로 선택해야합니다 버전을하시기 바랍니다 내가 버전 wirh 주위를 연주했다 때

다른 원래 일을 도메인 하나 된 화이트리스트되었다 2.6이 실제로 해당되지 않을 수도 있습니다. 현재 작업중인 해당 버전을 찾으십시오.