안녕하세요. 소셜 공유 버튼에서 아무리 고치려고 해도 고쳐지질 않는 문제점이 있어서 이렇게 문의드립니다.
소셜 공유 플러그인 코드는 만지지 않았고 코드를 손본게 있다면 본문 작성 시 첨부파일이 이미지 형식일 경우 글 내용 출력전
프린트 되게끔 <img src="<?php echo $url->getDownloadURLWithAttach($content->uid, 'file1')?>" alt="<?php echo $content->attach->file1[1]?>"/> 이런 식으로 넣었습니다.
그럼 밑에 보이는것 같이 이미지 파일을 첨부한 게시물에서 공유하기 버튼을 누르면 아무런 문제 없이 잘 나옵니다.
하지만 공유를 하고나서 페이스북에서 링크를 확인해보면 이미지가 아예 없거나 아니면 대부분 아래와 같이 이미지가 픽셀이 확대된 제 홈페이지 로고와 바뀌어 있습니다..
페이스북 오픈 그래프 디버깅을 해보면 아래와 같이 나오는데 혹시 무슨 문제가 있는건가요?
해결책 꼭 좀 부탁 드리겠습니다. 제 홈페이지 특성상 소셜 공유 기능이 굉장히 중요합니다. 모든게 다 잘되는데 이것만 말썽이네요 ㅠㅠ
감사합니다.
소셜 플러그인 코드 변경한 곳이 있었네요. 본문에 출력한 첨부파일을 meta로 보내기위해 kboard_share_footer에서 아래 라인으로 변경 하였습니다.
echo 'var facebookImageUrl = "'.($content->attach->file1?$url->getDownloadURLWithAttach($content->uid, 'file1'):'').'";'."n";
이 코드 변경으로 인해서 공유를 누를때는 본문 설명처럼 이미지가 잘 나오는데 페이스북에 들어가서 확인하면 이상한걸로 바뀌어있으니 도대체 원인을 모르겠습니다. ㅠㅠ
이 문제는 KBoard 문제일 수도 있지만 사이트 전체에서 문제를 찾아보셔야 할 수도 있습니다.
페이스북은 http://ogp.me/ 이 Open Graph protocol 을 우선적으로 인식합니다.
디버그에도 나와있지만 og:image 부분에 여러 이미지가 있습니다. 그중 첫 번째 이미지가 공유된 이미지 같습니다.
다른 SEO 플러그인을 사용중이라면 그쪽에서 설정된 내용일 수 있습니다.
/kboard/class/KBSeo.class.php 클래스를 살펴보면 ogp() 메소드가 있습니다.
public function ogp(){
echo '<meta property="og:title" content="'.kboard_htmlclear($this->content->title).'">';
echo "n";
echo '<meta property="og:description" content="'.kboard_htmlclear($this->content->content).'">';
echo "n";
}
og:title, og:description 이건 있지만 og:image 이건 없습니다.
og:image 부분을 추가 해주시면 문제 해결에 도움이 될 듯 합니다.
아무튼 Open Graph protocol 을 잘 사용하시면 원하시는 내용을 정확히 공유하실 수 있을겁니다^^
답변 감사합니다. 많은 도움 되었습니다. ^^