2011-01-31 5 views
8

그래서 나는 facebook으로 버튼을 가지고 놀았지만 문제가 생겼습니다. 나는 여기에서하고있는 자선 사업에 대한 페이스 북 페이지를 가지고있다 :외부에서 페이스 북 콘텐트를 좋아하는 방법

http://www.facebook.com/Adam.Holmes.Climbs.Kilimanjaro.

나는 또한 거의 동일한 정보를 가진 웹 페이지가 있습니다. 이 웹 페이지에는 버튼과 같은 페이스 북이 있으므로 여기에 표시된 페이지를 좋아할 수 있습니다 :

http://developers.facebook.com/docs/reference/plugins/like/.

이제 내 문제는 별도의 버튼입니다. 페이 스북 페이지 내에서 일부 사용자가 "좋아"하고 댓글을 달았습니다. 이제는 내 웹 페이지에 동일한 이미지를 배치하여 각 이미지에 대한 버튼과 같은 페이스 북을 추가하여 모든 좋아하는 것을 표시하고 싶습니다. 그 이미지는 페이스 북에있다. 나 같은 버튼으로 많은 다른 링크를 연결했지만 그들 중 누구도 작동하지 않는 것. 나는 a) 페이지의 URL을 시도했다. b) 이미지의 URL c) 다른 URL을 조작하는 임의의 비트와 박쥐.

자바 스크립트 소스 코드를 살펴 보았지만 이해가 너무 복잡합니다. 나는 함수 fc_click()이 다른 함수를 호출하는 버튼에서 호출된다는 것을 알고 있으며 길지 않아 길을 잃지 않고 url이 사용 된 것을 발견하지 못했다.

내 질문에, 내가 좋아하는 페이 스 북 (Facebook)에 외부 버튼을 사용할 수 있도록 "좋아하는"스크립트에 삽입 할 URL은 무엇일까요?

더 이상 정보가 필요하면 알려주세요.

은 대단히 감사합니다 :)


업데이트 : 시도하고있다 모든 다른 조합의 또는 URL의 여전히 운이없는. '좋아요'버튼 중 하나의 개체는 그래프의 개체, 즉 Here is the object I want to like.이지만이 링크 중 아무 것도 작동하지 않습니다. 어쩌면 페이 스북은 페이지의 URL을 사용하기가 쉽기 때문에 이것을 제한하고 있으며, 개별 항목이 아닌 잘 작동합니다.

태그에 삽입해야 할 링크가 필요하다는 점을 다시 한 번 덧붙여서 좋아요 및 댓글 등의 개수를 검색 할 수있을뿐만 아니라 페이스 북 개발자 포럼 here에서도 주제를 시작했습니다. 아무도 해결책으로 대답하지 못했습니다.

다시 한번 감사드립니다.


업데이트 2 : 방법이 있는지 잘 모르겠어요

: 으로 코드가 실제로 같은 HTML 렌더링됩니다 "마일스 그레이"지적 외부 페이지에서 양식을 액세스하려면 올바른 this 참조가 없으므로 아무도이 일을 할 수 있는지 여부를 밝힐 수 있습니까? 그렇다면 어떻게 할 수 있습니까? 확실히 이것을 할 수 있다면 this에 대한 올바른 참조를 사용하면 외부에서 콘텐츠를 좋아하게 될 것입니다.

+0

OpenGraph를 사용하고 있습니까? –

+0

아니요, 전 단지 태그를 사용하고 있습니다. –

+0

두 번째 업데이트에 대해서'this'는'window' 객체입니다. 관련 윈도우 객체를 잡을 수 있다면 잘됩니다. – Raynos

답변

1

수 없습니다. 이것은 잘 작동 것

<script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script> 
<fb:like href="http://www.facebook.com/platform" show_faces="true" width="450"></fb:like> 

있지만 그래프 API 해석 사용 : A "증거을"빠른

<script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script> 
<fb:like href="https://graph.facebook.com/19292868552" show_faces="true" width="450"></fb:like> 

이 작동하지 않습니다를!

난 당신이 "/ 해결 해킹"는 검색 귀찮게하거나 검사하려고 노력하고 페이스 북에 사진 페이지를 디버깅한다고 생각하지 않습니다

, 당신이 사용 자신의 방법을 찾아 한 경우에 에도 때문에 같은 기능을 외부에서 나는 당신이 페이스 북과 법적 문제로 당신을 얻을 것이라고 확신 해요!

이제는 "명이 좋아요."웹 사이트의 사진을 모니터링하고 '좋아요'버튼 아래에 팝업 또는 DIV가 있으면 페이스 북에서 사진 페이지로 이동하도록 권장합니다. 그것 (그것 같이) 거기 역시! 여기

또한

실제로 "객체"페이스 북과 같은 외부 응용 프로그램을 필요로하고 무언가를 jQuery를 사용하고 있습니다 :

FB.Event.subscribe('edge.create', function(response) { 
    // Encourage the user to support your cause in Facebook too! 
    $("div_with_a_link_to_the_photo_page_on_facebook").show(); 

    // or using a dialog or whatever effect you like 
    $("#facebook_support").dialog(); 
}); 

PS :

edge.create 이벤트를 사용하여 수행 할 수 있습니다 내 대답 here처럼,하지만 당신이 그렇게하고 싶지는 않을 것 같습니다.

<div class="fb-like" data-href="**http://graph.facebook.com/[object_id]**" data-send="false" data-width="270" data-show-faces="false" data-colorscheme="dark" data-font="arial"></div> 

(그냥 자신의 개체 ID에 넣어) :

1

저는 이것이 매우 복잡하고 매끄러운 아이디어라고 지적하고 싶습니다. 완벽한 해결책이 아닙니다.나는 앉아서 잠시 머리를 여는 것이 좋습니다. Facebook Docs.

here을 참조하십시오. 보시다시피, 페이스 북의 모든 객체는 그래프 API의 일부입니다. 따라서 고유 한 ID로 속성을 갖게됩니다. 사진 당, 당신은 here를 볼 수 있고 각 사진은 자신의 독특한 ID를 가지고 볼 수 있습니다.

그래서 - 당신이해야 할, 특정 페이지 웹 페이지가로드 될 때마다에서 특정 앨범에서 특정 사진를 호출하고, 같은 모든 당겨 할 수있을 것입니다 이 사진이 Facebook에서받은 댓글 및 좋아요.

내가 가장 좋은 방법은 initialize the JavaScript SDK이고, perform an FQL query은 특정 picture이고 데이터를 가져 오는 것입니다.

표시 중 : 페이스 북 에는에 외부 웹 페이지의 사진을 표시하는 특수 플러그인이 없으므로 표시 부분은 까다로운 부분입니다. 모든 정보는 JSON 개체로 수신되며 원하는 방식으로 표시 할 수 있습니다. 경험을 더 사교적으로 만들기 위해 Graph API에서 사진의 ID를 가진 각 사진에 대해 같은 버튼을 만드는 것이 좋습니다. Docs are here.

+0

그래프 API를 사용하는 데 문제가 없으므로 그 사실을 완전히 이해하고 있습니다. 내가 페이스 북에서 이미지를 검색하지 않을거야, 그냥 같은 이미지가 발생합니다. 그래프 api를 사용하면 사용자가 내 목표가 아닌 "Connect with facebook"을 강요 할 것이고, 페이스 북에서 다른 "like"페이지와 함께 할 수 있기 때문에, 좋아하는 수를 원할 것입니다. –

+0

@ Adam - 이것은 사실이 아닙니다. 이미지에 대한 데이터를 쿼리하는 데는 사용자가 아무것도 필요하지 않습니다. – t0mgs

+0

그러나 그래프의 api에서 좋아하는 수 또는 실제로 어떤 데이터를 검색해도 내 ""스크립트에 어떤 링크를 배치해야하는지 알 수 없습니다.이미지에 사용할 수있는 모든 링크를 시도했으며 모두 실패했습니다. –

1

AFAIK 페이스 북은 어떻게 든 사진 ID와 앨범 ID로 photo.php에 연결되는 내부 스탯 카운터 ... 당신이 볼 수있는 소스 코드를 보면

(그것을 좋아하기)를 사용합니다 :

<label onclick="this.form.like.click();"><i class="img sp_29yryj sx_182771" title="Like this item"></i></label> 

그리고 더 함께합니다 (그것을 좋아 사람들이 볼 수) : 당신은 어떻게 든 URL은 당신이 분류되어야하는 이미지 ID를 기반으로 무엇을 작동 할 수있는 경우

<a href="/browse/?type=likes&amp;id=1516817795900" rel="dialog" ajaxify="/ajax/browser/dialog/?type=likes&amp;id=1516817795900" title="See people who like this item">16 people</a> 

을, TMK 그것은 보인다 s FB가 이미지 라이브러리의 ID를 좋아하기 위해 사용자 지정 라이브러리를 사용하고 있습니다.

+0

2

<fb:like>으로 페이지가 아닌 콘텐츠의 버튼에 Facebook 버튼을 표시하는 것이 가능하지 않다고 생각합니다. 이것을 시험하기 위해, 나는 내 자신의 벽에 게시 한 사진에 몇 가지 시도를했다. 당신이 알아 냈으므로 아무 URL도 작동하지 않습니다.

그렇다면 자신 만의 버튼을 만들 수 있습니다. 그래프 API를 사용하면 /me/feed으로 자신의 피드에서 객체를 가져올 수 있습니다. 가장 쉬운 방법은 아마도 피드의 이미지를 사용하는 것입니다. 이미지를 호스팅 한 경우 피드의 개체에 다시 매핑 표가 필요합니다. 피드의 각 개체에는 Like 카운터가 있습니다.

업데이트 다시 읽기 포스트와 사용자가 로그인 할 수 있습니다. 그래프 API는 서버 측에서 호출 할 수 싶지 않은 것 같습니다. 당신이 당신의 자신의 피드를 액세스하는 것처럼, 당신은 당신의 자신의 피드에 앱 오프라인 권한을 부여해야하고, 현재 사용자가 로그인 할 필요가 없습니다.

업데이트 2

그것은 /POST_ID/likes 나타납니다 게시물에서만 작동합니다. - 다른 앱에서는 '앱이 허용 목록에 있어야합니다'라는 메시지가 표시됩니다.난 당신이 원하는 게 무엇을 두려워

0

등의 플러그인을 사용. 내 문제는 사용자가 앱에 로그인하지 않고 객체를 이미 좋아하는지 감지하는 방법을 알아낼 수 없다는 것입니다 (일반적으로 fb에 로그인 한 것이 아닙니다).

앱을 사용하려면 extended_permissions가 필요합니다 (예 :이 경우에는 read_stream 권한이 필요합니다). 일단 fql을 사용하여 같은 테이블을 쿼리 할 수있다.

관련 문제