이 게시물을 발견하고 위에서 언급 한 단계를 구현하려고했습니다. 몇 시간을 낭비하고 나서 위의 @SMT로부터의 코멘트를 보았습니다 ...
더 이상 v2.10에서 작동하지 않습니다.
고객이 이미이 기능을 기다리고 있으므로 해결 방법을 찾아야했습니다. 참고 : WordPress 용으로이 솔루션을 작성 했으므로 몇 줄을 변경하여 사이트에서 작동하게 할 수 있습니다. 나는 URL에 매개 변수로 이미지 URL을 추가 내 JS 코드에서
<div class="my-image-container">
<img src="http://example.com/image.jpg">
<a href="#" class="fb-share-image">Share</a>');
</div>
내가 공유하려는 :
의 내 HTML 코드 이미지와 버튼을 포함하는 래퍼 시작하자 :
는
window.fbAsyncInit = function() {
FB.init({
appId : 'YOUR APP ID',
status : true,
cookie : true,
version : 'v2.10'
});
$('.fb-share-image').click(function(e){
e.preventDefault();
var image = $(this).siblings('img').attr('src');
FB.ui(
{
method: 'share',
href: $(location).attr('href') + '?og_img=' + image,
},
function (response) {
}
);
})
};
(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'));
다음 단계는 URL 매개 변수를 처리하는 것입니다. 이 코드는 YOAST의 WordPress 및 WordPress SEO 용이지만 단순히 CMS로 작동하도록 변경할 수 있습니다. 당신의 functions.php이 추가 :
add_filter('wpseo_opengraph_image',function($img){
if(array_key_exists('og_img', $_GET))
return $_GET['og_img'];
return $img;
});
add_filter('wpseo_opengraph_url',function($url){
if(array_key_exists('og_img', $_GET))
return $url . '?og_img=' . $_GET['og_img'];
return $url;
});
일반적인 아이디어는 페이스 북이 개별적으로 각을 긁어있다, 그래서 오직 OG 매개 변수를 변경 각 이미지에 대한 개별 URL을 생성하는 것입니다. SEO 문제를 피하려면 헤더에 원본 URL을 가리키는 정식 태그가 있어야합니다. 여기에 complete article이 있습니다.
그 캐시 디버그 도구가 그것을 정렬, 감사합니다 :) –