개발 Q&A

제목 페이스북 공유 api mvc 관련
카테고리 PHP
글쓴이 라산 작성시각 2021/04/30 09:23:59
댓글 : 5 추천 : 0 스크랩 : 1 조회수 : 8320   RSS

안녕하세요,

다름이 아니라 제가 페이스북 공유하기 api를 사용하고자 하는데,

header 파일에 meta태그를 이용해서 설정하고있습니다

제가 하고자 하는건 공유하기 버튼을 눌렀을때 해당 게시물의 이미지가 

<meta id="fbImg" property="og:image" content="이미지의 링크"> 이곳에 들어가게 하고싶은데,

잘 되지 않더라구요..

이미지 링크를 고정url로 해놓으면 정상적으로 동작하는데,

문제는 그렇게 하면 게시물마다 이미지 변경을 못해서요..

스크립트를 이용해서

$('meta[property=og\\:image]').attr('content', "게시물의 이미지 url");

페이지가 로딩될때 meta 태그의 값을 변경해보았으나 그래도 이미지가 딸려오지 않네요..

혹시 다른 방법이 있을까요?

 

 

 다음글 리눅스의 크론탭 주기 설정에 대해서 (2)
 이전글 주식앱 종목정보 연동 및 api 관련 질문입니다. (1)

댓글

변종원(웅파) / 2021/04/30 10:31:56 / 추천 0

정확하게 뭘하고 싶은건지 감이 안옵니다.

게시물마다 다른 메타태그를 설정하고 싶은건가요? (포럼이 그렇게 되어 있습니다. 현재 게시물 소스보기 한번 해보세요)

라산 / 2021/04/30 11:14:14 / 추천 0

네, 맞습니다 게시물마다 메타태그값을 다르게 설정하고 싶은데,

헤더.php 파일을 공통으로 사용하고있는 상황입니다.

<head></head> 태그가 공통으로 사용하는 헤더.php안에서 끝나구요.. 이러한 상황에서 게시물 마다 메타태그값을 다르게 설정할 수 있나요??

 

엽토군 / 2021/04/30 12:32:18 / 추천 0

게시물을 보여주기 위해 헤더.php를 include하는 코드구간이 있을 겁니다. (아니면 CI 표준대로 $this->load->view() 하고있든지...)

그 앞에서 $ogimage = '어쩌구저쩌구'; 변수 만들어주신 다음 그 변수를 헤더.php에 전달하시면 되지요.

한가지 확실한 건, JS로 해당 태그 값 바꾸는 지금 같은 방식은 소용 없습니다. 서버측 데이터로 이미 만들어져서 내려가야 합니다.

변종원(웅파) / 2021/04/30 17:18:35 / 추천 0
라산/ 포럼 소스 받아서 분석해보세요. ^^
라산 / 2021/05/06 11:16:19 / 추천 0

@변종원(웅파) 

감사합니다. CI가 동작하는 방식에 대해서 조금 더 이해할 수 있게되었습니다. 정말 감사합니다.

@엽토군 

마찬가지로 감사합니다. 도움 주신 덕분에 문제를 해결 했습니다.

 

해결방법 : remap함수에서 변수를 선언하고 해당 변수에 데이터를 가져온 다음에 header 부분이 인클루드 될때 전달해서 처리했습니다 정말 감사합니다!!