๋ธ๋ก๊ทธ์ SNS ๊ณต์ ๋ฒํผ ๋ง๋ค๊ธฐ (์นด์นด์คํก, ํ์ด์ค๋ถ, ํธ์ํฐ)
์ข์ ์ฝํ ์ธ ๋ ํผ์ ๋ณด๊ธฐ ์๊น์ด ๋ฒ์ ๋๋ค. ํ์ง๋ง ์๋ฌด๋ฆฌ ์ ์ตํ ๊ธ์ด๋ผ๋ ๊ณต์ ํ ์๋จ์ด ์๋ค๋ฉด, ๋ฐฉ๋ฌธ์๋ ๊ทธ์ ์ฝ๊ณ ๋ ๋ ๋ฟ์ ๋๋ค.
์ด๋ด ๋ ๊ฐ์ฅ ๊ฐ๋ ฅํ ๋๊ตฌ๊ฐ ๋ฐ๋ก SNS ๊ณต์ ๋ฒํผ์
๋๋ค.
์นด์นด์คํก, ํ์ด์ค๋ถ, ํธ์ํฐ ๋ฑ ๋ค์ํ ์์
ํ๋ซํผ์ ๊ณต์ ํ ์ ์๋ ๋ฒํผ์ ๋ธ๋ก๊ทธ์ ์ฝ์
ํ๋ฉด, ๋ฐฉ๋ฌธ์๊ฐ ์ง์ ๊ธ์ ์๋ ค์ฃผ๋ ์๋ฐ์ ์ธ ํ๋ณด๋์ฌ๊ฐ ๋์ด์ค๋๋ค.
ํนํ ๋ชจ๋ฐ์ผ ํ๊ฒฝ์์๋ ์นด์นด์คํก์ด๋ ํธ์ํฐ๋ฅผ ํตํด ์ค์๊ฐ์ผ๋ก ๊ธ์ด ํผ์ ธ๋๊ฐ๋ ์ผ์ด ํํ๋ฉฐ, ์ด๋ ๊ณง ๊ฒ์ ์ ์ ์ธ์ ์ถ๊ฐ ํธ๋ํฝ ํ๋ณด๋ก ์ด์ด์ง๋๋ค.
ํฐ์คํ ๋ฆฌ ๋ธ๋ก๊ทธ์ ์นด์นด์คํก, ํ์ด์ค๋ถ,ํธ์ํฐ ๊ณต์ ๋ฒํผ ๋ค๋ ๋ฒ
๋ฟ๋ง ์๋๋ผ ์ฝํ
์ธ ๊ฐ ๋๋ฆฌ ํผ์ง์๋ก ๋ธ๋ก๊ทธ์ ์ธ์ง๋, ์ ๋ขฐ๋, SEO ๊ฐ์ ํจ๊ณผ๊น์ง ๋ฐ๋ผ์ค๊ธฐ ๋๋ฌธ์, SNS ๊ณต์ ๋ฒํผ์ ๋จ์ํ ๋ถ๊ฐ ๊ธฐ๋ฅ์ด ์๋ ๋ธ๋ก๊ทธ ์ฑ์ฅ์ ํต์ฌ ์์๋ผ ํ ์ ์์ต๋๋ค.
์ค๋ ์ด ๊ธ์์๋ ๋ค์ ๋ด์ฉ์ ์์ธํ ๋ค๋ฃน๋๋ค.
๋ธ๋ก๊ทธ์ ์์ ๊ณต์ ๊ธฐ๋ฅ ์ถ๊ฐํ๊ธฐ ,์๋ฒฝ ์ค์น๋ฒ
SNS ๊ณต์ ๋ฒํผ์ด ์ค์ํ ์ด์
- ๋ฐฉ๋ฌธ์๊ฐ ์ฝํ ์ธ ๋ฅผ ์์ฝ๊ฒ ํ์ฐ์ํฌ ์ ์์
- ์ ์ ์ฑ๋ ๋ค๊ฐํ (SNS , ๋ธ๋ก๊ทธ)
- SEO ๊ฐ์ ํจ๊ณผ (ํ์ด์ง ์ธ๊ธฐ๋ ์ฆ๊ฐ)
- ๋ ์์์ ์ฐ๊ฒฐ ๊ฐํ
์คํ์ผ ๊พธ๋ฏธ๊ธฐ (CSS ์์)
๋จผ์ ๊ฐ๋จํ๊ฒ ๋ฒํผ์ ๊พธ๋ฐ์ ์๋ CSS๋ฅผ ์์ฑํฉ๋๋ค.
<style>
.sns-buttons {
display: flex;
gap: 10px;
padding: 20px;
}
.sns-btn {
padding: 12px 20px;
border: none;
border-radius: 6px;
color: white;
font-weight: bold;
cursor: pointer;
transition: all 0.3s;
}
.sns-btn:hover {
transform: scale(1.05);
box-shadow: 0 3px 5px rgba(0,0,0,0.2);
}
#kakao { background-color: #FFCD00; }
#facebook { background-color: #1877F2; }
#twitter { background-color: #1DA1F2; }
</style>
๋ฐ์ํ ๋์ ํ
๋ชจ๋ฐ์ผ์์๋ ์ ๋ณด์ด๋๋ก flex-wrap: wrap๊ณผ @media๋ฅผ ํ์ฉํ์ธ์.
@media (max-width: 600px) {
.sns-share-buttons {
flex-direction: column;
}
}
HTML ๋ฒํผ ๊ตฌ์กฐ ์์
์๋๋ ๊ธฐ๋ณธ์ ์ธ SNS ๊ณต์ ๋ฒํผ์ HTML ๊ตฌ์กฐ์ ๋๋ค.
๊ฐ ๋ฒํผ์๋ ํด๋ฆญ ์ ์คํ๋ JavaScript ํจ์๊ฐ ์ฐ๊ฒฐ๋์ด ์์ผ๋ฉฐ, ํ๋ซํผ์ ๋ฐ๋ผ ๋ค๋ฅธ ๊ณต์ ๋งํฌ๋ฅผ ์์ฑํฉ๋๋ค. ์๋ ์ฝ๋๋ ๋ฒํผ์ ์์น์ํฌ ๊ณณ์ ์ค์ ํ์๋ฉด ๋ฉ๋๋ค. ๋ณดํต ๊ธ ์๋ ์ฌ์ด๋ ์์ญ์ ๋๊ฒ ๋ฉ๋๋ค.
๋ณธ๋ฌธ ์๋์ ์์นํ๊ณ ์ถ๋ค๋ฉด, HTML ์ฝ๋ ํธ์ง๊ธฐ์์ ํฐ์คํ ๋ฆฌ ๊ฐ์ ๊ฒฝ์ฐ ๋ณธ๋ฌธ ๊ธ ์นํ์์ธ _article_rep_desc_ ๋ฅผ ๊ฒ์ํด ํ๋จ์ ์์น์ํค๋ฉด ๋ฉ๋๋ค.
์ฌ์ด๋ ์์ญ์๋ ๋ฐฐ๋ ์ถ๋ ฅ ํ๋ฌ๊ทธ์ธ์ ํ์ฉํ๋ฉด ์ฝ๊ฒ ์ํ๋ ์์น์ ๋ฒํผ์ ๋ฐฐ์นํ ์ ์์ต๋๋ค.
<div class="sns-share-buttons">
<button id="kakaoBtn" class="sns-btn kakao-story">
์นด์นด์ค์คํ ๋ฆฌ
</button>
<button id="facebookBtn" class="sns-btn facebook">
ํ์ด์ค๋ถ
</button>
<button id="twitterBtn" class="sns-btn twitter">
ํธ์ํฐ(X)
</button>
</div>
์นด์นด์คํก ๊ณต์ ์๋์ ์ํ ํ์ ์ค์
- ์นด์นด์ค ๊ฐ๋ฐ์์ผํฐ ํ์๊ฐ์ ๋ฐ ์ฑ ์์ฑ
- JavaScript ํค ๋ฐ๊ธ ๋ฐ ๋ณต์ฌ
- ํ๋ซํผ → Web ์ ํ → ๋๋ฉ์ธ ๋ฑ๋ก
- ๋ณต์ฌํ ํค๋ฅผ Kakao.init('์ฌ๊ธฐ์_JavaScript_ํค'); ์์น์ ์ฝ์
์นด์นด์ค ๊ณต์ ๊ฐ ์๋ํ์ง ์๋๋ค๋ฉด 4019 ์ค๋ฅ์ผ ์ ์์ต๋๋ค. ๋๋ฉ์ธ ๋ฑ๋ก ๋๋ ์ฑ ํค ํ์ธ์ด ํ์ํฉ๋๋ค.
JavaScript ํค ๋ฐ๊ธ ๋ฐฉ๋ฒ (7 ๋จ๊ณ)
1. ์นด์นด์ค ๊ฐ๋ฐ์์ผํฐ ์ ์
2. ๋ก๊ทธ์ธ ํ, ๋ด ์ ํ๋ฆฌ์ผ์ด์ ํด๋ฆญ
3. ์ ์ ํ๋ฆฌ์ผ์ด์ ์์ฑ ๋ฒํผ ํด๋ฆญ ์ด๋ฆ์ ์๋ฌด๊ฑฐ๋
4. ์ฑ์ด ์์ฑ๋๋ฉด ์ข์ธก ๋ฉ๋ด์์ ํ๋ซํผ > ์น ํด๋ฆญ
5. ์ฌ์ดํธ ๋๋ฉ์ธ: ์์๋ก https://openpc.tistory.com ์ ๋ ฅ
6. ์ฑ ํค > JavaScript ํค ๋ณต์ฌ
7. ์ด๊ฑธ Kakao.init("๋ณต์ฌํ_ํค") ์๋ฆฌ์ ๋ฃ์ผ๋ฉด ๋ฉ๋๋ค.
๊ณต์ ๋ฒํผ ์๋์ ์ํ JavaScript
์๋ ์ฝ๋๋ HTML ๋งจ ํ๋จ์ ๋ฃ์ด์ฃผ์๋ฉฐ ๋ฉ๋๋ค.
<script src="https://developers.kakao.com/sdk/js/kakao.min.js"></script>
<script>
Kakao.init('์ฌ๊ธฐ์_์์ ์_JavaScript_ํค_์
๋ ฅ');
function getCurrentPageInfo() {
try {
return {
url: window.location.href,
title: document.title || ''
};
} catch (e) {
return { url: '', title: '' };
}
}
function shareSNS(type) {
const { url, title } = getCurrentPageInfo();
if (!url) {
alert("ํ์ด์ง URL์ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค.");
return;
}
if (type === 'kakao') {
Kakao.Link.sendDefault({
objectType: 'feed',
content: {
title: title,
description: '',
imageUrl: 'https://via.placeholder.com/300',
link: {
mobileWebUrl: url,
webUrl: url
}
}
});
return;
}
let shareUrl;
switch (type) {
case 'facebook':
shareUrl = `https://www.facebook.com/sharer/sharer.php?u=${encodeURIComponent(url)}`;
break;
case 'twitter':
shareUrl = `https://twitter.com/intent/tweet?url=${encodeURIComponent(url)}&text=${encodeURIComponent(title)}`;
break;
default:
return;
}
try {
const newWindow = window.open(shareUrl, '_blank', 'width=600,height=500');
if (!newWindow || newWindow.closed) {
throw new Error("ํ์
์ด ์ฐจ๋จ๋์์ต๋๋ค.");
}
} catch (e) {
alert("๊ณต์ ์ฐฝ ์ด๊ธฐ ์คํจ: " + e.message);
window.location.href = shareUrl;
}
}
document.getElementById('kakaoBtn').addEventListener('click', () => shareSNS('kakao'));
document.getElementById('facebookBtn').addEventListener('click', () => shareSNS('facebook'));
document.getElementById('twitterBtn').addEventListener('click', () => shareSNS('twitter'));
</script>
ํ์ ์ฐจ๋จ ๋์ฒ๋ฒ
ํ์ด์ค๋ถ/ํธ์ํฐ๋ ์ ์ฐฝ์ผ๋ก ์ด๊ธฐ ๋ฐฉ์์ด๋ฏ๋ก ๋ธ๋ผ์ฐ์ ํ์
์ฐจ๋จ ์ค์ ์ ๋ฐ๋ผ ๋งํ ์ ์์ต๋๋ค.
์ด๋ด ๊ฒฝ์ฐ์ ๋งํฌ๋ฅผ ํ์ฌ ํญ์์ ์ฌ๋ ๋ฐฉ์์ผ๋ก ๋์ฒดํ๊ฑฐ๋ ์๋ฆผ์ฐฝ์ผ๋ก ์๋ดํ์ธ์.
์ฝํ ์ธ ๋ฅผ ๊ณต์ ํ๋ ๊ฐ์ฅ ๋น ๋ฅธ ๋ฐฉ๋ฒ
SNS ๊ณต์ ๋ฒํผ์ ๋จ์ํ ๊ธฐ๋ฅ ์ด์์ ์๋ฏธ๋ฅผ ๊ฐ์ง๋๋ค.
๋ฐฉ๋ฌธ์๊ฐ ์ฝํ
์ธ ๋ฅผ ์ ํต์ํค๋ ์๋ฐ์ ์ธ ํต๋ก์ด์, ๊ฒ์ ํธ๋ํฝ ์ธ ์ ์
์ ์ฐฝ์ถํ๋ ํ์ ์์์
๋๋ค.
์นด์นด์คํก, ํ์ด์ค๋ถ, ํธ์ํฐ ๊ณต์ ๋ฒํผ์ ์ ์ ํ ๋ฐฐ์นํ๊ณ ์ ์๋ํ๊ฒ ๋ง๋ ๋ค๋ฉด, ๋ธ๋ก๊ทธ ์ฑ์ฅ์ ํฐ ๋์์ด ๋ ๊ฒ์ ๋๋ค.