네이버 (블로그) 공유하기
본문
그누보드와는 별개로 작업중입니다.
네이버 공유하기 개발가이드 - NAVER Developers
위 api 문서중에 버튼유형으로 개발중에 있습니다.
<?
$url = 'http://' . $http_host . $request_uri;
$url_share = urlencode($url);
$title = "메인테스트";
$title =$title;
$title_share = urlencode($title);
?>
<input type="hidden" name="url" id="url" value="https://share.naver.com/web/shareView?url=<?=$url_share?>&title=<?=$title_share?>">
<input type="hidden" name="title" id="title" value="<?=$title?>">
<span>
<script type="text/javascript" src="https://ssl.pstatic.net/share/js/naver_sharebutton.js"></script>
<script type="text/javascript">
new ShareNaver.makeButton({"type": "f"});
</script>
</span>
어떤 코드를 더 추가해야하는지요?
아래 주소로 적용했는데 title값이 빠진상태로 전달됩니다.
!-->
답변 4
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Naver Share Button Example</title>
</head>
<body>
<button id="naverShareButton">네이버 공유하기</button>
<script type="text/javascript">
// 네이버 공유하기 버튼을 생성하는 함수
function createNaverShareButton() {
var url = window.location.href; // 현재 페이지 URL
var title = "공유할 제목"; // 원하는 제목
var naverShareUrl = "https://share.naver.com/web/shareView?url=" + encodeURIComponent(url) + "&title=" + encodeURIComponent(title);
var shareButton = document.createElement("a");
shareButton.href = naverShareUrl;
shareButton.target = "_blank"; // 새 창에서 열도록 설정
shareButton.innerText = "네이버 공유하기";
document.getElementById("naverShareButton").appendChild(shareButton);
}
// 페이지 로드 시 네이버 공유하기 버튼 생성
window.onload = function () {
createNaverShareButton();
};
</script>
</body>
</html>
<code>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Naver Share Button Example</title>
</head>
<body>
<button id="naverShareButton">네이버 공유하기</button>
<script type="text/javascript">
// 네이버 공유하기 버튼을 생성하는 함수
function createNaverShareButton() {
var url = window.location.href; // 현재 페이지 URL
var title = "공유할 제목"; // 원하는 제목
var naverShareUrl = "https://share.naver.com/web/shareView?url=" + encodeURIComponent(url) + "&title=" + encodeURIComponent(title);
var shareButton = document.createElement("a");
shareButton.href = naverShareUrl;
shareButton.target = "_blank"; // 새 창에서 열도록 설정
shareButton.innerText = "네이버 공유하기";
document.getElementById("naverShareButton").appendChild(shareButton);
}
// 페이지 로드 시 네이버 공유하기 버튼 생성
window.onload = function () {
createNaverShareButton();
};
</script>
</body>
</html>
</code>
혹은
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Naver Share Button Example</title>
</head>
<body>
<!-- 네이버 공유하기 버튼을 생성할 엘리먼트 -->
<span id="naver-share-button"></span>
<!-- 네이버 공유하기 버튼 스크립트 -->
<script type="text/javascript" src="https://ssl.pstatic.net/share/js/naver_sharebutton.js"></script>
<script type="text/javascript">
var url = window.location.href; // 현재 페이지 URL
var title = "공유할 제목"; // 원하는 제목
var shareUrl = "https://share.naver.com/web/shareView?url=" + encodeURIComponent(url) + "&title=" + encodeURIComponent(title);
var shareButton = ShareNaver.makeButton({
type: "f",
url: shareUrl
});
// 네이버 공유하기 버튼을 생성할 엘리먼트에 추가
document.getElementById("naver-share-button").appendChild(shareButton);
</script>
</body>
</html>
답변 주신분들 감사합니다.
api문서에서 버튼형api 를 조금씩 가공하셔서 사용하시는거 같은데...
좀전에 api 문서에 있는 코드 그대로 실행하여 실행 성공하였습니다.
다만 마지막 단계에서 네이버측 js 충돌이 일어나서 등록은 안되고있습니다
네이버 개발자 포롬에도 올라온 오류인데 , 이부분은 좀 더 찾아봐야 할거 같습니다.
우선 아래와 같은 코드만으로도 동작합니다. - 버튼api 코드 그대로 사용
<?
$title = "메인테스트";
?>
<span>
<script type="text/javascript" src="https://ssl.pstatic.net/share/js/naver_sharebutton.js"></script>
<script type="text/javascript">
new ShareNaver.makeButton({"type": "d" , "title":"<?=$title?>"});
</script>
</span>