그누보드 sns 공유버튼 눌러서 보낼때 주소가 잘리는 현상이 생기는 분들은 참고하세요 게시물 공유할때 게시판으로 가게 되는 경우 입니다.
그누보드 sns 공유버튼 눌러서 트위터나 페이스북 등으로 넘어갈때 페이지 url은 정상인데 첨부되면서 url이 잘려서 게시물에서 공유하면 게시판으로 첨부되는 현상 생기는 분들 참고하세요.
결론부터 말하면 /bbs/sns_send.php 가서
$title_url = $title.' : '.$short_url; 코드의 윗줄에다가 아래 빨간걸 넣으세요
$short_url = urlencode($short_url);
$title_url = $title.' : '.$short_url;
이렇게 하시면 됩니다. 코드 자체에 shot_url이 없다면 urlencode해주는데
이미 있기 때문에 urlencode없이 통과됩니다.
물론 urlencode 기능이 안들어가도 언어셋 등등이 잘맞으면
보낼때 이상없으시겠지만 전 저거 안하면 이상이 생겨서....
공유버튼을 누르면 해당주소가 https://moonpa.kr/bbs/board.php?bo_table=service&wr_id=5
트위터 청소/캡쳐 댕댕이 > 프로그램 | 문파
계정 정보는 댕댕이에서 입력해서 써도되고 창열리고 수동으로 입력해도 되는데사용자 이름은 꼭 있어야함. 검색어 넣어서 캡쳐하고 삭제하고 정도라 생…, 다양한 이슈를 다루며 의견을 공유
moonpa.kr
인 화면에서 누른거니까 첨부될때는 저 화면으로 보여야되는데
이렇게 첨부되어지는 현상이 있다.
원인을 찾으려고 해도 그누보드 사이트에서도 질문답을 못찾겠다. url 인코딩에 문제가 있다고 하고 남들은 다 잘쓰는듯한데 ;; sns 공유 하기에서 오류는 다 데이타가 전달이 안되는거지 저렇게 잘림 현상으로 나오는 경우는 없는거같은데...
/bbs/sns_send.php 에 가서보면
<?php
include_once("./_common.php");
$title = isset($_REQUEST['title']) ? urlencode(str_replace('\"', '"', $_REQUEST['title'])) : '';
$short_url = isset($_REQUEST['longurl']) ? googl_short_url($_REQUEST['longurl']) : '';
$sns = isset($_REQUEST['sns']) ? $_REQUEST['sns'] : '';
if(!$short_url)
$short_url = isset($_REQUEST['longurl']) ? urlencode($_REQUEST['longurl']) : '';
$title_url = $title.' : '.$short_url;
switch($sns) {
case 'facebook' :
header("Location:http://www.facebook.com/sharer/sharer.php?s=100&u=".$short_url."&p=".$title);
break;
case 'twitter' :
header("Location:https://twitter.com/intent/tweet?text=".$title_url);
break;
case 'gplus' :
header("Location:https://plus.google.com/share?url=".$short_url);
break;
default :
echo 'Error';
}
if(!$short_url)
$short_url = isset($_REQUEST['longurl']) ? urlencode($_REQUEST['longurl']) : '';
<?php
include_once("./_common.php");
$title = isset($_REQUEST['title']) ? urlencode(str_replace('\"', '"', $_REQUEST['title'])) : '';
$short_url = isset($_REQUEST['longurl']) ? googl_short_url($_REQUEST['longurl']) : '';
$sns = isset($_REQUEST['sns']) ? $_REQUEST['sns'] : '';
echo "xxxxxxxx=".$short_url;
echo "<br>";
if(!$short_url)
$short_url = isset($_REQUEST['longurl']) ? urlencode($_REQUEST['longurl']) : '';
echo "yyyyyyyy=".$short_url;
$title_url = $title.' : '.$short_url;
exit;
switch($s
일부러 출력해서 봐도 똑같다. 근데 이렇게 보내면 뒤에 wr_id=5부분이 잘린다.
자세히 보면 $short_url은 urlencode 되는 단계가 없다.
$short_url = urlencode($short_url); 코드를 추가해봤다.
이제야 적용이되어서 변경되어진다.
이미지가 제대로 안보이는 부분은 또 확인해야겠다.
페이스북은 또 이 이미지로 넘어간다.
소스보기로 살펴보면
이런 부분으로 코드에서 저 이미지를 불러오고있다.메뉴쯤인듯 한데 제일먼저 확인되는 이미지를 갖다넣나돠;
찾았다;; 위치는 저곳이니 해당 위치에 가서 이미지를 로고로 바꿔주면된다;
위치는 /theme/blog/header_menu.php 에 있다.
<div class="col"><img src="https://moonpa.kr/theme/blog/img/happydow/sir-happy-dow-10.png" alt="happydow"></div>
<div class="col"><img src="<?=G5_URL?>/img/logo.png" alt="<?php echo $config['cf_title'];?>"></div>
<?php
include_once("./_common.php");
$title = isset($_REQUEST['title']) ? urlencode(str_replace('\"', '"', $_REQUEST['title'])) : '';
$short_url = isset($_REQUEST['longurl']) ? googl_short_url($_REQUEST['longurl']) : '';
$sns = isset($_REQUEST['sns']) ? $_REQUEST['sns'] : '';
echo "xxxxxxxx=".$short_url;
echo "<br>";
if(!$short_url)
$short_url = isset($_REQUEST['longurl']) ? urlencode($_REQUEST['longurl']) : '';
$short_url = urlencode($short_url);
echo "yyyyyyyy=".$short_url;
$title_url = $title.' : '.$short_url;
exit;
페이스북은 바로 바뀌는데
트위터는 첨부할때는 저렇게 깨져보이지만
실제로 첨부하니
썸네일로 잘 보인다. 해결!!!!