[英]Facebook Share Button for Dynamic Url
我有一個帶有重寫 url 的動態頁面。 我想在其中添加一個 facebook 分享按鈕。 所以用戶點擊分享按鈕就可以分享頁面了。 但 facebook 共享開發者頁面要求提供特定網址。 不確定如何共享動態生成的 url。
這是我發現的一些用於捕獲 url 的代碼。 但我不知道,如何將其包含在 facebook 代碼中。
jQuery(document).ready(function() {
var href = jQuery(location).attr('href');
var url = jQuery(this).attr('title');
jQuery('#current_title').html(href);
jQuery('#current_url').html(url);
});
Facebook 分享按鈕的 HTML 部分
<div class="fb-share-button" data-href="http://developers.facebook.com/docs/plugins/" data-type="button"></div>
請幫忙
非常感謝
這對我有用:
<script language="javascript">
function fbshareCurrentPage()
{window.open("https://www.facebook.com/sharer/sharer.php?u="+encodeURIComponent(window.location.href)+"&t="+document.title, '',
'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=300,width=600');
return false; }
</script>
然后用鏈接調用代碼:
<a href="javascript:fbshareCurrentPage()" target="_blank" alt="Share on Facebook">Facebook</a>
如果您希望它是直接鏈接而不是在窗口中打開,請在函數中使用它:
window.location.href="https://www.facebook.com/sharer/sharer.php?u="+encodeURIComponent(window.location.href)+"&t="+document.title;
可能的jquery解決方案:
<a class="fbsharelink" data-shareurl="YOURLINK">Facebook</a>
$('.fbsharelink').click( function()
{
var shareurl = $(this).data('shareurl');
window.open('https://www.facebook.com/sharer/sharer.php?u='+escape(shareurl)+'&t='+document.title, '',
'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=300,width=600');
return false;
});
不要在 URL '刪除現有鏈接 ( https://developers.facebook.com/docs/plugins/ ) 中輸入任何內容,並像往常一樣在頁面中包含代碼。
喜歡或分享按鈕會選擇您當前頁面的鏈接
使用它讓 Facebook 的 api 重新解析您的頁面
FB.XFBML.parse();
您可以使用
var href = window.location
您可以使用
var title = document.title
無需為那些簡單的任務使用 jQuery。
要使 FB 共享按鈕動態化,您必須重新加載或編輯它的數據屬性以匹配當前值。 此外,在快速查看 GB 共享按鈕的文檔后,沒有選項可以僅將標題設置為 HREF。 文檔可以在這里找到。
因此,對於您的示例,在更改 url 后,還要運行以下代碼:
jQuery(document).on('ready', function($){
var url = window.location;
$('.fb-share-button').attr('data-href', url);
});
我認為最簡單的解決方案是這個。 它適用於最復雜的 URL,假設這是您的 URL
http://dramatainment.com/videos.php?v=000014
這是您修改 facebook 分享按鈕代碼的方法
<div class="fb-share-button" data-href="http://dramatainment.com/videos.php?v=<?php echo $v; ?>" data-layout="button" data-mobile-iframe="true"><a class="fb-xfbml-parse-ignore" target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=http%3A%2F%2Fdramatainment.com%2Fvideos.php&src=sdkpreparse">Share</a></div>
剛剛添加了這樣的動態網址
data-href="http://dramatainment.com/videos.php?v=<?php echo $v; ?>"
這也可以使用 php 完成
<?php
$protocol = ((!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off') ||
$_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://";
$CurPageURL = $protocol . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
?>
<div class="fb-share-button" data-href=" <?php $CurPageURL ?> " data-layout="button_count" data-size="large">
<a target="_blank"
href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2F
<?php $CurPageURL ?>
%2F&src=sdkpreparse"
class="fb-xfbml-parse-ignore">Share
</a>
</div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.