왕초보 swapImg ->PHP 구현 잘몰라 @@질문드립니다.꾸뻑 ^^ 채택완료
아나탈
11년 전
조회 6,748
아래는 영카트5 skin\shop\basic 중 main.10.skin.php 중 sns링크 부분 입니다.
<span style="font-size: 10pt; line-height: 1.5"> if ($this->view_sns) {</span>
<div> $sns_top = $this->img_height + 10;</div>
<div> $sns_url = G5_SHOP_URL.'/item.php?it_id='.$row['it_id'];</div>
<div> $sns_title = get_text($row['it_name']).' | '.get_text($config['cf_title']);</div>
<div> echo "<div class=\"sct_sns\" style=\"top:{$sns_top}px\">";</div>
<div> echo get_sns_share_link('facebook', $sns_url, $sns_title, G5_SHOP_SKIN_URL.'/img/sns_fb_s_bw.png');</div>
<div> echo get_sns_share_link('twitter', $sns_url, $sns_title, G5_SHOP_SKIN_URL.'/img/sns_twt_s_bw.png');</div>
<div> echo get_sns_share_link('googleplus', $sns_url, $sns_title, G5_SHOP_SKIN_URL.'/img/sns_goo_s_bw.png');</div>
<div> echo "</div>\n";
제가 html에서 자바스크립트 사용해서
<script type="text/javascript"></div>
<div>function MM_preloadImages() { //v3.0</div>
<div> var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();</div>
<div> var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)</div>
<div> if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}</div>
<div>}</div>
<div>function MM_swapImgRestore() { //v3.0</div>
<div> var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;</div>
<div>}</div>
<div>function MM_findObj(n, d) { //v4.01</div>
<div> var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {</div>
<div> d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}</div>
<div> if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];</div>
<div> for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);</div>
<div> if(!x && d.getElementById) x=d.getElementById(n); return x;</div>
<div>}</div>
<div>
</div>
<div>function MM_swapImage() { //v3.0</div>
<div> var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)</div>
<div> if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}</div>
<div>}</div>
<div></script>
그리고
</div>
<div>
<div><a href="#" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image26','','<?php echo G5_URL; ?>/sam_img/flat_p.gif', 1)"></div>
<div><img src="<?php echo G5_URL; ?>/sam_img/flat_g.gif" width="106" height="18" alt="flats" name="Image26" border="0" id="Image26" /></td>
이런식으로 다른 페이지에선 사용하고 있는데.
SNS 이곳도 수정해 보고 싶은데 PHP로 되있어서 ㅠㅠ
땜빵처럼 잘 모르고 어영부영 쓰고 있는데 문제가 발생했는데..
어떻게 php에서 자바 선언하고
<span style="font-size: 10pt; line-height: 1.5"> if ($this->view_sns) {</span>
<div> $sns_top = $this->img_height + 10;</div>
<div> $sns_url = G5_SHOP_URL.'/item.php?it_id='.$row['it_id'];</div>
<div> $sns_title = get_text($row['it_name']).' | '.get_text($config['cf_title']);</div>
<div> echo "<div class=\"sct_sns\" style=\"top:{$sns_top}px\">";</div>
<div> echo get_sns_share_link('facebook', $sns_url, $sns_title, G5_SHOP_SKIN_URL.'/img/sns_fb_s_bw.png');</div>
<div> echo get_sns_share_link('twitter', $sns_url, $sns_title, G5_SHOP_SKIN_URL.'/img/sns_twt_s_bw.png');</div>
<div> echo get_sns_share_link('googleplus', $sns_url, $sns_title, G5_SHOP_SKIN_URL.'/img/sns_goo_s_bw.png');</div>
<div> echo "</div>\n";
이곳을 손대야 할지 모르겠습니다.
제가 하고 싶은 작업은 커서 가져가면 sns 이미지를 바뀌게 하려고 겁니다.
고수님들 한수 가르켜 주시면 감사합니다.
댓글을 작성하려면 로그인이 필요합니다.
답변 2개
채택된 답변
+20 포인트
11년 전
/lib/shop.lib.php 파일에서 get_sns_share_link 함수 수정하면 됩니다.
하지만 아직 베타버전이기 때문에 업데이트를 고려해서
아래코드를 /extend/get_sns.lib.php 파일을 만들어서 추가하거나 해당 파일(sns링크가 들어가 있는 파일) 상단 쪽에 따로 추가하는게 더 좋을 듯 합니다.
1. 함수 변경해서 추가
// sns 공유하기 over_img 추가 get_sns_share_link => get_sns_share_link2
function get_sns_share_link2($sns, $url, $title, $img, $over_img)
{
if(!$sns)
return '';
switch($sns) {
case 'facebook':
$str = 'https://www.facebook.com/sharer/sharer.php?u='.urlencode($url).'&t='.urlencode($title).'"
class="share-facebook" target="_blank">
';
break;
case 'twitter':
$str = 'https://twitter.com/share?url='.urlencode($url).'&text='.urlencode($title).'"
class="share-twitter" target="_blank">
';
break;
case 'googleplus':
$str = 'https://plus.google.com/share?url='.urlencode($url).'"
class="share-googleplus" target="_blank">
';
break;
case 'kakaotalk':
$str = '
';
break;
}
return $str;
}
2. sns버튼에 적용은 아래처럼 오버시 이미지 경로를 추가하면 됩니다.
echo
get_sns_share_link2('facebook', $sns_url, $sns_title,
G5_SHOP_SKIN_URL.'/img/sns_fb_s.png',
G5_SHOP_SKIN_URL.'/img/sns_twt_s.png');
로그인 후 평가할 수 있습니다
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인