2013-05-15 2 views
0

Magento의 목록 페이지에 모든 제품에 Facebook Like 버튼을 추가했습니다.Magento - 목록 페이지의 모든 제품에서 Facebook처럼 단추를 얻으십시오.

enter image description here

나는이 문제에 봉착했습니다 : '좋아요'버튼을 클릭하고, 팝업, 페이스 북에 공유됩니다 이미지를 표시

  1. 를 일반적으로하지 않습니다 여기에 스크린 샷입니다 제품의 이미지. 그것은 페이지에서 임의의 이미지를 긁어 모으는 것 같습니다.
  2. 공유 할 콘텐츠에는 HTML 태그가 포함됩니다. HTML 태그가 포함 된 제품 설명란의 텍스트를 스크랩하고 있습니다. 내 제품 페이지의 메타 설명이 html 태그를 포함하여 제품 설명 필드에서 콘텐츠를 가져 오는 것으로 보입니다.

내가 알 수있는 한, 모든 것을 올바르게 설정했지만 어쩌면 내가 누락 된 것일 수 있습니다. 여기까지 내가 한 일은 다음과 같습니다.

head.phtml에서 Facebook의 Open Graph 프로토콜에 따라 올바른 이미지와 텍스트를 정의하는 메타 태그를 추가했습니다. 대신) 긴 설명을, HTML 태그를 포함하지 않습니다,

<div id="fb-root"></div> 
<script>(function(d, s, id) { 
    var js, fjs = d.getElementsByTagName(s)[0]; 
    if (d.getElementById(id)) return; 
    js = d.createElement(s); js.id = id; 
    js.src = "//connect.facebook.net/en_US/all.js#xfbml=1"; 
    fjs.parentNode.insertBefore(js, fjs); 
}(document, 'script', 'facebook-jssdk')); 
</script> 

그리고 list.phtml에서 :

<?php 
$product = Mage::registry('current_product'); 
if($product) 
{ 
?> 
<meta property="og:title" content="<?php echo trim($product->getName()); ?>"/> 
<meta property="og:description" content="<?php echo trim($product->getShortDescription()); ?>"/> 
<meta property="og:url" content="<?php echo $this->helper('core/url')->getCurrentUrl();?>"/> 
<meta property="og:type" content="product"/> 
<meta property="og:image" content="<?php echo $this->helper('catalog/image')->init($product, 'image') ;?>"/> 
<?php 
} 
?> 

는 header.phtml, 난 등 버튼을 가능하게하는 스크립트를 추가 내가 원하는 곳에 버튼 요소를 추가하여 동적으로 URL을 지정했습니다. 좋아할 제품 :

<div class="fb-like" style="display:none;" data-href="<?php echo $_product->getProductUrl() ?>" data-send="false" data-layout="button_count" data-width="450" data-show-faces="false"></div> 

이것이 작동하지 않는 이유는 무엇입니까? 감사.

답변

1

당신은 PHP strip_tags()을 사용할 수 있습니다. 살펴보기 Strip out HTML and Special Characters

예 :

<meta property="og:description" content="<?php echo strip_tags(trim($product->getShortDescription())); ?>"/> 
+0

좋습니다. 감사. – americanknight

관련 문제