Programing

Facebook의 sharer.php를 어떻게 사용자 정의합니까?

crosscheck 2020. 10. 26. 07:43
반응형

Facebook의 sharer.php를 어떻게 사용자 정의합니까?


http://www.facebook.com/sharer/sharer.php?u=http%3A%2F%2Fwww.google.com

텍스트와 이미지를 어떻게 사용자 정의 할 수 있습니까? Facebook이 문서를 가져온 것 같습니다.


당신이 말하는 것은 당신이 링크를 공유 할 때 페이스 북이 추출하는 미리보기 이미지와 텍스트입니다. Facebook은 Open Graph Protocol사용 하여이 데이터를 얻습니다.

기본적 og:meta으로 공유하려는 URL에 이러한 태그를 배치하기 만하면됩니다.

<meta property="og:title" content="The Rock"/>
<meta property="og:type" content="movie"/>
<meta property="og:url" content="http://www.imdb.com/title/tt0117500/"/>
<meta property="og:image" content="http://ia.media-imdb.com/rock.jpg"/>
<meta property="og:site_name" content="IMDb"/>
<meta property="fb:admins" content="USER_ID"/>
<meta property="og:description"
      content="A group of U.S. Marines, under command of
               a renegade general, take over Alcatraz and
               threaten San Francisco Bay with biological
               weapons."/>

보시다시피 이미지 속성과 설명이 모두 있습니다. 페이지 og:meta태그를 변경할 때 Facebook 디버거를 사용하여 이러한 변경 사항을 테스트 할 수 있습니다 . 실수를했는지 (그리고이를 고치는 방법!)


최신 정보:

이 답변은 구식입니다.

@ jack-marchetti가 그의 의견에 언급하고 링크가있는 @devantoine처럼 : https://developers.facebook.com/x/bugs/357750474364812/

Ibrahim Faour가 Facebook에 제출 된 버그에 대한 답변으로 Facebook은 sharer.php의 작동 방식을 변경했습니다.

공유자는 더 이상 맞춤 매개 변수를 허용하지 않으며 facebook은 url OG 메타 태그에서 Facebook에 게시물로 표시되는 것과 동일한 방식으로 미리보기에 표시되는 정보를 가져옵니다.


이것을 시도하십시오 (이 예에서는 Javascript를 통해) :

'http://www.facebook.com/sharer.php?s=100&p[title]='+encodeURIComponent('this is a title') + '&p[summary]=' + encodeURIComponent('description here') + '&p[url]=' + encodeURIComponent('http://www.nufc.com') + '&p[images][0]=' + encodeURIComponent('http://www.somedomain.com/image.jpg')

나는 이미지 부분없이 이것을 빨리 시도했고 sharer.php 창이 미리 채워진 것처럼 보이므로 해결책처럼 보입니다.

이 SO 기사를 통해 이것을 발견했습니다.

플래시 앱의 페이스 북 공유 링크에서 사용자 지정 제목 / 이미지 / 설명을 원함

이 링크는 Lelis718의 답변에 포함되어 있습니다.

http://www.daddydesign.com/wordpress/how-to-create-a-custom-facebook-share-button-for-your-iframe-tab/

이 답변에 대해 Lelis718에게 모든 크레딧을 제공합니다.

[2013 년 5 월 3 일 편집]-쿼리 문자열에 "s = 100"을 포함하지 않으면 내가 여기에 있던 원래 URL이 더 이상 작동하지 않는 것 같습니다. 이유를 모르지만 그에 따라 업데이트되었습니다.


다음 답변이 더 이상 작동하지 않는 것으로 보이며 Facebook은 더 이상 피드 대화 링크의 매개 변수를 허용하지 않습니다.

URL을 통해 피드 대화 상자를 사용하여 Sharer.php의 동작을 에뮬레이션 할 수 있지만 조금 더 복잡합니다. 공유하려는 URL의 기본 URL이 구성된 Facebook 앱 설정이 필요합니다. 그런 다음 다음을 수행 할 수 있습니다.

1) 다음과 같은 링크를 만듭니다.

   http://www.facebook.com/dialog/feed?app_id=[FACEBOOK_APP_ID]' +
        '&link=[FULLY_QUALIFIED_LINK_TO_SHARE_CONTENT]' +
        '&picture=[LINK_TO_IMAGE]' +
        '&name=' + encodeURIComponent('[CONTENT_TITLE]') +
        '&caption=' + encodeURIComponent('[CONTENT_CAPTION]) +
        '&description=' + encodeURIComponent('[CONTENT_DESCRIPTION]') +
        '&redirect_uri=' + FBVars.baseURL + '[URL_TO_REDIRECT_TO_AFTER_SHARE]' +
        '&display=popup';

(분명히 [CONTENT]를 적절한 내용으로 바꾸십시오. 여기에 문서화 : https://developers.facebook.com/docs/reference/dialogs/feed )

2) 공유 링크를 클릭하면 JavaScript가있는 팝업 창에서 해당 링크를 엽니 다.

3) 사용자가 공유를 마치면 다시 리디렉션하는 파일 (예 : popupclose.html)을 만들고 싶습니다.이 파일에는 <script>window.close();</script>팝업 창을 닫을 수있는 내용 이 포함 됩니다.

피드 대화 상자 (설정 외에)를 사용할 때의 유일한 단점은 페이지도 관리하는 경우 페이지를 통해 공유하도록 선택할 수 없으며 일반 사용자 계정 만 공유 할 수 있다는 것입니다. 그리고 그것은 당신에게 정말 모호한 오류 메시지를 줄 수 있으며, 대부분은 Facebook 앱의 설정 또는 공유하는 콘텐츠 또는 URL의 문제와 관련이 있습니다.


Sharer.php no longer allows you to customize. The page you share will be scraped for OG Tags and that data will be shared.

To properly customize, use FB.UI which comes with the JS-SDK.


Facebook sharer.php parameters for sharing posts.

<a href="javascript: void(0);"
   data-layout="button"
   onclick="window.open('https://www.facebook.com/sharer.php?u=MyPageUrl&summary=MySummary&title=MyTitle&description=MyDescription&picture=MyYmageUrl', 'ventanacompartir', 'toolbar=0, status=0, width=650, height=450');"> Share </a>

Don't use spaces, use &nbsp.

참고URL : https://stackoverflow.com/questions/12547088/how-do-i-customize-facebooks-sharer-php

반응형