You cannot see this page without javascript.

Skip to content

Home

조회 수 23101 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
<?php
if(!defined("__ZBXE__")) exit();

if(Context::getResponseMethod() == "XMLRPC" || Context::get('module') == "admin") return;
if($called_position != "before_display_content") return; 

if($called_position == 'before_display_content' && Context::getResponseMethod() == 'HTML') {
	$pos_regx = "!<\!--AfterDocument\(([0-9]+),([0-9]+)\)-->!is";
		$document_srl = intval(Context::get('document_srl'));
		$oDocumentModel = &getModel('document');

		$oDocument = $oDocumentModel->getDocument(Context::get('document_srl'), false, false);
		if (!$oDocument) return;

		$appid = $addon_info->appid;
		if (!$appid) $appid = 'm.kakao.com';
		$appver = $addon_info->appver;
		if (!$appver) $appver = '2.0';
		$apiver = $addon_info->apiver;
		if (!$apiver) $apiver = '1.0';
		$appname = $addon_info->appname;
		if (!$appname) $appname = '카카오';
		$button_align = $addon_info->button_align;
		$button_width = $addon_info->button_width;
		if (!$button_width) $button_width = '35';
		//카카오보내기 2014-04-15
		$kakao_sand_msg = strip_tags(str_replace("<br />","\n",htmlspecialchars_decode($oDocument->getContentText()))) ;  //$oDocument->getSummary(300)) $oDocument->getContent(false);
		$kakao_sand_msg = str_replace(' ',"",$kakao_sand_msg);
		$data_end = 2000 ;
		$data_ln = strlen($kakao_sand_msg); // 전체 문장 길이 계산 
		if ($data_ln > $data_end) {                    // 문자열의 길이가 지정한 수보다 적으면 문자열을 처리없이 리턴
		$kakao_sand_msg = substr($kakao_sand_msg ,0,$data_end)."\n\n------[내용이 더 있습니다]------";
		}
        //밴드보내기
		$band_sand_title = $oDocument->getTitleText();
        $band_sand_url = $oDocument->getPermanentUrl();
		$pc_band_sand = rawurlencode("제목 : ".$band_sand_title).urlencode("\n\n").rawurlencode($oDocument->getSummary(300)).urlencode("\n\n더보기=>").urlencode($band_sand_url).urlencode("\n출처:").$appname;
		$moble_band_sand = rawurlencode("제목 : ".$band_sand_title).urlencode("\n\n").rawurlencode($kakao_sand_msg).urlencode("\n\n더보기=>").$band_sand_url.urlencode("\n출처:").$appname;
		
		//마이피플 보내기
		$mypeople_prefix = urlencode($oDocument->getTitleText()).$kakao_sand_msg; 
		$mypeople_prefix2 = rawurlencode("제목 : ".$band_sand_title).urlencode("\n\n").rawurlencode($oDocument->getSummary(300)).urlencode("\n출처:").$appname .urlencode("\n\n더보기=>");
		$mypeople_link = urlencode($oDocument->getPermanentUrl()); 
		$imageurl='http://이미지url'; //이미지가 없을때 기본으로 해 줄 이미지

		if($oDocument->hasUploadedFiles()){ 
			$uploaded_list = $oDocument->getUploadedFiles() ;
			$imggeurl=$uploaded_list[0]->uploaded_filename;
		}else{$imggeurl="http://이미지url';} //이미지가 없을때 기본으로 해 줄 이미지
		// 게시물에 업로드한 파일이 있으면 자동으로 링크의 썸네일로 설정. 300kByte까지만 
		//모바일을 검색하여....
		$mobile_agent = '/(iPod|iPhone|Android|BlackBerry|SymbianOS|SCH-M\d+|Opera Mini|Windows CE|Nokia|SonyEricsson|webOS|PalmOS)/'; 
		if(preg_match($mobile_agent, $_SERVER['HTTP_USER_AGENT'])){
		//모바일에서만 스크립트 실행 
?>
 <script type="text/javascript" src="/addons/kakao_link/js/kakao.link.js"></script>
<script type="text/javascript">

function kakao_storylink()
{
    kakao.link("story").send({
        post : "<?=$oDocument->getTitleText().'%0A%0A'.$oDocument->getSummary(2048).'%0A%0A더보기=>'.$oDocument->getPermanentUrl();?>",
        appid : "어플아이디", //예)myceo.co.kr
        appver : "1.0",
        appname : "어플네임", //어플네임
        urlinfo : JSON.stringify({title:"<?=$oDocument->getTitleText();?>", desc:"<?=$oDocument->getSummary(100);?>", imageurl:["<?=$imggeurl;?>"], type:"article"})
    });
}

</script>
<?
			$before = '<div style="text-align: '.$button_align.';">
			<a href="kakaolink://sendurl?msg='.$oDocument->getTitleText().'%0A%0A'.rawurlencode($kakao_sand_msg).urlencode("\n\n더보기=>").'&url='.$oDocument->getPermanentUrl().'&appid='.$appid.'&appver='.$appver.'&appname='.$appname.'"><img src="/addons/kakao_link/img/kakaotalkicon_150150.png" width="'.$button_width.'" /></a>  
			
			<a href="#" onclick="javascript:kakao_storylink()"><img src="/addons/kakao_link/img/kakaostoryicon_150150.png" width="'.$button_width.'" /></a>


			<a href="bandapp://create/post?text='.$moble_band_sand.'" ><img src="/addons/kakao_link/img/band_linkicon.png" width="'.$button_width.'" /></a>
			<a href="myp://sendMessage?message='.$mypeople_prefix2.'&url='.$mypeople_link.'" ><img src="/addons/kakao_link/img/mypeople_linkicon.png" width="'.$button_width.'" /></a>
			
			</div>';
			$output = preg_replace($pos_regx, "<!--AfterDocument($1,$2)-->".$before, $output);
			}else{
			$before = '<div style="text-align: '.$button_align.';"><img onclick=window.open("http://www.band.us/plugin/share?body='.$pc_band_sand.'","'.$oDocument->getPermanentUrl().'&route='.$oDocument->getPermanentUrl() .'","width=525,height=570,toolbar=no,menubar=no,titlebar=1,status=no,fullscreen=no");  style="CURSOR: pointer" src="/addons/kakao_link/img/band_linkicon.png" title= "밴드에 공유하기!"width="'.$button_width.'" />
			<img onclick=window.open("https://mypeople.daum.net/mypeople/web/share.do?link='.$mypeople_link.'&prefix='.$mypeople_prefix2.'&source_id=none","mypeople","width=700,height=509,toolbar=no,menubar=no,titlebar=1,status=no,fullscreen=no");  style="CURSOR: pointer" src="/addons/kakao_link/img/mypeople_linkicon.png" title= "마이피플보내기!"width="'.$button_width.'" />

			</div>';
			$output = preg_replace($pos_regx, "<!--AfterDocument($1,$2)-->".$before, $output);
			}
}
?>


kakao.link.js


위에 화일을 받으셔서 해당 에드온에 js 디렉트리를 만들어 넣어 두세요 ^^


  연관된글

  • No Image

    마이피플 종료

  • No Image

    카카오 API 로그인 연동하여 토큰 받아오기

  • No Image

    국내 오픈 API 자료

  • 카카오톡 ID로 로그인이 가능해 졌습니다


(안심) 짧은 주소는 : 입니다
?
  • ?
    사용법좀 2015.01.16 19:54
    이거 사용법이 어떻게되나요 ? XE에 제작하신 애드온이 있나요 ? ㅠ.ㅠ
  • ?
    관리자 2015.01.16 20:12
    아니요.. XE에 따로 제작해서 올리지는 않았어요~ 걍 제가 필요해서 약간 변경한거에요~

List of Articles
번호 제목 날짜 조회 수
27 카운터스킨에 총게시물수랑 댓글수 알아내기 /widgets/counter_status/counter_status.class.php // 가입한 회원수 출력 $oMemberModel = &amp;getModel(&#39;member&#39;); $args-&gt;date = date(&quot;Ymd000000&quot;,... 2017.03.07 309
26 글쓰기&읽기 권한 없을때 로그인창으로 강제 이동법 modules/board/board_view.php 파일에서 function alertMessage($message) //이 함수를 변경하면 된다. function alertMessage($message) { if($message==&quot;msg_no... 2015.12.18 5217
25 글쓰기 할때 자동으로 테그값을 글제목의 단어를 공간체크 하여 태그 입력되게 function triggerArrangeTag(&amp;$obj) // &lt;-- 요부분 밑에 { // if(!$obj-&gt;tags) return new Object(); 이부분을 주석처리 if(!$obj-&gt;tags &amp;&amp; $obj-&gt;t... 2015.12.18 614
24 게시물에 링크(Link) 있을때 새창으로 보여 주기 jQuery(function(){ jQuery('.xe_content[class^=document_] a').attr('target', '_blank'); }); jQuery(function(){ jQuery('.xe_content[class^=comment_] a').... 2015.04.16 509
23 NaverWorks 도메인 메일 사용시 XE에서 인증메일 보내는 방법 classes/mail/Mail.class.php 화일에서 fonction mail(){ $this-&gt;useNaverAccount(&quot;아이디@등록한도메인&quot;, &quot;*비밀번호); // 이 한줄만 추가하면 됩니다.Myceo... ... 2015.04.09 845
22 setitle2.addon.php에서 category 명 같이 나오게... title바꾸기 /addons/setitle2/setitle2.addon.php 화일을 수정한다 $pointconfig = $module-&gt;getModuleConfig('point'); //각종 정보 담아오기 //아래는 수정 추가 한것이다.... 2015.04.07 1061
21 atom10.html 변경하여 게시판이름-게시물-기본타이틀명 나오게 {'&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;'} &lt;feed xmlns=&quot;http://webmastertool.naver.com&quot;&gt; &lt;id&gt;{$info-&gt;link}&lt;/id&gt; &lt;title&gt;{$info-&gt;title}&lt;/title&gt; &lt;author&gt;... 2015.04.03 691
20 네이버 신디케이션 사용자 가이드 NAVER Syndication User Guide `` `` 2 저작권 Copyright © NAVER Corp. All Rights Reserved. 이 문서는 네이버(주)의 지적 재산이므로 어떠한 경우에도 네이버(주)의 공식적인 허가 없이 이 ... 1 2015.04.01 1728
19 신디케이션 ver 4.0을 사용시에 타이틀이 제대로 나오지 않을경우 modules/syndication/syndication.model.php 여기 화일중에.. case 'site' : $site_info = new stdClass; $site_info-&gt;id = $this-&gt;getID('site'); $site_info-&gt;s... 1 2015.03.28 497
18 [XE]Layouts 모듈이 Layout 을 파싱하는 시점에 전달해 주는 변수 및 데이터 덤프 Array ( [buff] =&gt; file://./files/cache/template_compiled/99b4a68c4de6bdf7b15cc072553a8c7c.compiled.php [__Context] =&gt; stdClass Object ( [lang] =&gt; stdC... 2015.02.14 106179
17 카카오 API 로그인 연동하여 토큰 받아오기 https://www.xpressengine.com/index.php?mid=download&amp;package_id=22753522 LginXE Server ver 1.02를 이용하여 하였다 해당 화일은 loginxeserver.view.php... 2015.02.14 1824
16 logged_info 정보 $logged_info-&gt;member_srl : 회원의 고유 번호. 중복 X $logged_info-&gt;user_id : 아이디 $logged_info-&gt;email_address : 메일 주소 $logged_info-&gt;passwrod : 비... 2015.02.12 342
15 XE에서 태그값이 없으면 제목의 공간을 이용해 자동 태그값 넣기 /modules/tag/tag.controller.php 중에서 function triggerArrangeTag(&amp;$obj) { // if(!$obj-&gt;tags) return new Object(); 2015-02-10(화)_myceo 이부분을 ... 2015.02.11 432
14 XE $module_info 변수 추출 결과 레이아웃에서 아래와 같이 해서 뽑아온 변수 정보 {print_r($module_info)} 대충 각 모듈별로 레이아웃을 구성할 때는 아래의 module 정보를 빼내오는 것이 가장 ... 2015.01.28 822
13 "이 페이지 나가기" 경고창이 뜨는 사이트의 경우 common / js / jquery.min.js 파일을 열어서 global:!0 을 찾은 후(두 군데) global:!1 로 바꿔줍니다. 보통의 경우엔 바꿔주지 않아도 뜨지 않는 경고창이지만 ... 2015.01.15 6415
12 인증메일이 발송 되지 않을때 /classes/mail/Mail.class.php 에서 약 140번째 라인에 보면 function Mail() { } 여기 부분을 function Mail() { $this-&gt;useGmailAccount(&quot;구글아이디@gmail.com... 2015.01.13 482
11 다양한 카운터 위젯 그림및 소스 참조 &lt;?php /* Copyright (C) NAVER &lt;http://www.navercorp.com&gt; */ /** * @class counter_status * @author NAVER (developers@xpressengine.com) * @version 0.1 * @... file 2015.01.07 286
» 각종 API 적용(밴드,카카오톡,카카오스토리,마이피플) &lt;?php if(!defined(&quot;__ZBXE__&quot;)) exit(); if(Context::getResponseMethod() == &quot;XMLRPC&quot; || Context::get('module') == &quot;admin&quot;) return; if($called_position !=... 2 2014.11.26 23101
9 특정 이메일 가입 않되게 (인증메일 관련) 인증메일 때문에... 특정 사이트로는 인증메일이 않들어가지는 부분을 해결하고자 다음과 같이 수정 하였다 /modules/member/member.controller.php 이 화일을 열... 2014.08.06 4764
8 XE보드 회원가입시 가입 아이피 기록하기 modules/member/member.controller.php 열기 // Insert data into the DB 찾기 // Insert data into the DB $args-&gt;list_order = -1 * $args-&gt;member_srl; $args-... 2014.07.23 2332
Board Pagination Prev 1 2 Next
/ 2

전체 방문자 : 1,166,369 오늘 : 59 어제 : 169 문서 : 0 댓글 : 0
전체회원 : 0 엮인글 : 0 첨부파일 : 0 전체 페이지뷰 : 11,257,492 오늘 페이지뷰 : 310 어제 페이지뷰 : 551
Copyright by Myceo 2008 All rights reserved
수원시 팔달구 인계동 1017-3 2층
☏1600-0324

Made By Myceo

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소