我试图在每篇文章中创建一个Facebook共享按钮,共享内容将是动态的,这意味着我将能够为每个帖子定制其缩略图,标题和说明。Facebook共享错误
下面是我使用的(我使用预先自定义字段插件在WordPress的方式)的代码:
<a onClick="window.open('http://www.facebook.com/sharer.php?s=100&p[title]=<?php the_field(videotitle); ?>&p[summary]=<?php the_field(video_description); ?>&p[url]=<?php echo get_permalink(); ?>&p[images][0]=http://img.youtube.com/vi/<?php the_field(youtube_thumb); ?>/maxresdefault.jpg','sharer','toolbar=0,status=0,width=548,height=325');" href="javascript: void(0)" rel="nofollow"></a>
//////////////// ////////////////////////////////////////////////// /////////////////
下面是php会回显我的来自我的CMS的内容:
<?php the_field(videotitle); ?>
<?php the_field(video_description); ?>
<?php echo get_permalink(); ?>
该代码工作正常,但我注意到当我输入title/desc ription太长或在我的帖子中使用特殊字符按钮停止工作。
我应该如何克服这一点?我仍然对PHP很陌生,如果可能的话请用外行人的名义解释,并提前致谢。
addslashes并不是真正的正确方法 - 除了上下文“JavaScript文本文字”,这里需要遵守哪些规则,还有另一个涉及的上下文环境。一旦数据包含一个'&',就会破坏这个上下文,因为这意味着一个GET参数值的结束,以及下一个_name = value_对的开始。首先,'urlencode'就是在这里使用的。 (因为结果中没有'''字符,所以在以后不需要处理这些字符。) – CBroe
@CBroe - 好的电话。相反,我在我的回答中包含了urlencode。 – Axel