varnish 架构网站中addthis中加入动态链接 参数:aid

来源:互联网 发布:医疗器械行业 知乎 编辑:程序博客网 时间:2024/04/27 08:26

1. 

addthis的url获取是根据:

<meta property="fb:app_id" content="<?php echo $facebookAppid; ?>"/><?php if ($product): ?><meta property="og:title" content="<?php echo trim(str_replace(array('"',"'"),array("'",' '),$product->getName())); ?>"/><meta name="facebooknamesp" property="og:url" content="<?php echo $product->getProductUrl();?>"/><meta property="og:type" content="website"/><meta property="og:image" content="<?php echo Mage::getBaseUrl('media') . 'catalog/product/' . ltrim($product->getImage(), '/');?>"/><meta property="og:locale" content="en_US"/><meta property="og:description" content="<?php echo htmlspecialchars($product->getMetaDescription()) ?>"/><meta property="og:site_name" content="tomtop.com" />

也就是上面的property 的值为og:url的content的值,

但是架构为varnish缓存,所以只能通过js的方式赋值并取值

2

jQuery 赋值:通过ajax异步加载,这里只写赋值的部分,ajax省略掉

s_aid =   info.get("_aid");        s_facebookurl = jQuery('meta[name=facebooknamesp]').attr('content');        jQuery('meta[name=facebooknamesp]').attr('content',s_facebookurl+"?aid="+s_aid); 
3

如果在代码中直接引入addthis的js是不行的,需要:

<!--    AddThis Button BEGIN -->    <div class="addthis_toolbox addthis_default_style ">    <a class="addthis_button_facebook_like" fb:like:layout="button_count"></a>    <a class="addthis_button_tweet"></a>    <a class="addthis_button_pinterest_pinit" pi:pinit:layout="horizontal"></a>    <a class="addthis_counter addthis_pill_style"></a>    </div>    <script type="text/javascript">jQuery(document).ready(function(){var addthis_config = {"data_track_addressbar":false};$.getScript("//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-519b45e2471baaf9");});</script><!--     AddThis Button END -->

这样就可以啦!

0 0