2013-08-08 4 views
4

AddThis에서 공유 할 URL에 일부 URL 매개 변수를 추가하고 사용자가 공유를 클릭 할 때만이 매개 변수를 알 수 있습니다. (일부 이미지가 슬라이더에 표시되고 사용자가 공유를 클릭하면 이미지 번호가 URL에 추가되므로 URL에서 사용자가 공유 한 실제 이미지로 이동합니다.)사용자가 공유 할 때 AddThis URL 설정하기

AddThis 이벤트 API를 사용하려고했는데 사용자가 공유 할 이벤트가있을 때 알림을받습니다. 그 시점에서 URL을 변경하려고 시도하지만 URL을 업데이트하지는 않습니다. (다시 공유하면 이전에 설정했던 설정으로 변경됩니다. 그러나 다시이 설정은 구식이 될 것입니다.)

이것을 달성하는 가장 좋은 방법은 무엇입니까? AddThis를 통해서가 아니라면 이것을 허용하고 일반적인 소셜 미디어 플랫폼 (Facebook, Twitter, Pinterest, Email 등)을 지원하는 것이 더 좋을 것입니다.

** UPDATE

**

그냥 내가 지금까지 밖으로 시도 것을 명확히하기 :

function updateAddThisUrl() 
    { 
     //slide_no is the variable I am adding as a URL parameter 
     var location = window.location; 
     var theUrl = location.protocol + '//' + location.host + location.pathname + "?image=" + slide_no; 

     addthis_share = {url : theUrl}; 
     addthis.update('share', 'url', theUrl); 
     addthis.url = theUrl; 
     addthis.ready();   
    } 

    function eventHandler(evt) 
    { 
     updateAddThisUrl(); 
    } 

    addthis.addEventListener('addthis.menu.share', eventHandler); 

위의 업데이트에만 이후의 공유에 대한 URL을, 그래서에만 적용 할 때 소요 사용자는 공유를 다시 클릭합니다 (새 이미지가 생겨서 새 URL 매개 변수가 있기 때문에 다시 시점이됩니다). 나는 또한 addthis.menu.open을 사용하려고 시도했지만 동일한 효과를 얻었으므로 그 전에 URL을 사용하고 있다고 생각합니다. 또한 추가 팝업 메뉴에서 이메일을 선택하면 addthis.menu.share 이벤트가 실행되지 않는다고 나타났습니다.

답변

4

당신은 기능을 addthis.update를 호출하여 addthis URL을 업데이트 할 수 있습니다

내가 이벤트를 얻을 때 나는 이미 일을하고 무엇을
// only have to change the window.location.href bit 
addthis.update('share', 'url', window.location.href); 
addthis.ready(); // This will re-render the box. 
+0

. 현재 공유 URL이 업데이트되지 않습니다. – jbx

+0

같은 생각으로, 나는 OT 메타 태그 (즉석에서)를 추가하여 컨테이너에 추가하고 각 공유 링크에 addthis : url을 추가하여 호출 해 보았습니다. 여전히 공유하려고 할 때 원본 URL을 항상 가져옵니다. 어떤 아이디어? – Guy

+0

addthis.toolbox (". addthis_toolbox");도 호출 해 보았습니다. 그들의 설명서 (http://support.addthis.com/customer/portal/articles/1365325-rendering-tools-with-javascript)에 명시된 바와 같이 – Guy