View Single Post
  #3  
Old 08-28-2014, 02:59 AM
 
xtech xtech is offline
 

X-Adept
  
Join Date: Jun 2010
Posts: 605
 

Default Re: Facebook & Twitter Friendly XC 4.5.5

Quote:
Originally Posted by mcanitano
Just wanted to share with everyone the custom code we used on our XC 4.5.5 site to integrate Facebook Open Graph and Twitter Cards for mostly every page.

Let us know if you have questions or suggestions!

Code:
{if $main eq "product"} {assign var="prod_descr" value=$product.descr|default:$product.fulldescr} <meta property="og:locale" content="en_US"> <meta property="fb:admins" content="[ADMIN ID]" /> <meta property="og:type" content="website" /> <meta property="og:url" content="http://{$smarty.server.HTTP_HOST}{$smarty.server.REQUEST_URI}"/> <meta property="og:title" content="{$product.product|escape}" /> <meta property="og:description" content="{$product.descr}" /> <meta property="og:image" content="{$product.image_url}" /> <meta property="og:site_name" content="{$lng.lbl_site_name|default:$config.Company.company_name|amp}" /> <meta property="product:price:amount" content="{$product.price}" /> <meta property="product:price:currency" content="USD" /> <meta name="twitter:card" content="product"> <meta name="twitter:site" content="@XXXX"> <meta name="twitter:creator" content="@XXXX"> <meta name="twitter:title" content="{$product.product|escape}"> <meta name="twitter:description" content="{$prod_descr|truncate:'400':'...':false|strip_tags}"> <meta name="twitter:image:src" content="{$product.image_url}"> <meta name="twitter:data1" content="${$product.price}"> <meta name="twitter:label1" content="PRICE"> <meta name="twitter:data2" content="{$product.productcode}"> <meta name="twitter:label2" content="SKU"> <meta name="twitter:domain" content="http://{$smarty.server.HTTP_HOST}{$smarty.server.REQUEST_URI}"> {else} <meta property="og:description" content="[Here we input our custom description]" /> <meta property="og:locale" content="en_US" /> <meta property="fb:admins" content="1099545101" /> <meta property="og:type" content="website" /> <meta property="og:url" content="http://{$smarty.server.HTTP_HOST}{$smarty.server.REQUEST_URI}" /> <meta property="og:title" content="{$meta_title}" /> <meta property="og:image" content="[Here we inserted our company logo]" /> <meta property="og:image:secure_url" content="here we inserted our company logo" /> <meta property="og:site_name" content="{$lng.lbl_site_name|default:$config.Company.company_name|amp}" /> <meta name="twitter:card" content="summary"> <meta name="twitter:site" content="@XXXX"> <meta name="twitter:title" content="{$meta_title}"> <meta name="twitter:description" content="[Here we input our custom description]"> <meta name="twitter:creator" content="@XXXX"> <meta name="twitter:image:src" content="[Here we inserted our company logo]"> <meta name="twitter:domain" content="http://{$smarty.server.HTTP_HOST}"> {/if}

Note that for
Code:
<meta property="og:title" content="{$meta_title}" /> ... <meta name="twitter:title" content="{$meta_title}">
to work. You must edit /include/templater/plugins/func.get_title.php AFTER around line 150:
Code:
if (empty($title_items)) $title_items = array($lbl_site_title); ....... $title = str_replace(array("\n", "\r"), array('', ''), trim(implode(' - ', $title_items)));*/

Input:
Code:
$smarty->assign('meta_title', $title);


***Note: Not all of this code is ours, we had some help from: http://forum.x-cart.com/showthread.php?t=66474

Will it work on 4.6.1 Platinum?
__________________
X-cart Platinum
4.6.1
Reboot template
Reply With Quote