2010-09-27 27 views
20

Tôi đang sử dụng chính thức Tweet Button from Twitter để cho phép người dùng chia sẻ trang web của tôi.Nút Tweet Twitter không được tính

Nút chính nó hoạt động tốt, tuy nhiên bộ đếm không hoạt động và luôn ở mức 0. (Sau khi bạn tweet, nó được tăng client-side, nhưng nếu bạn nhấn F5, nó sẽ không một lần nữa)

Đây là mã thực sự đơn giản của tôi bao gồm các nút:

<a href="http://twitter.com/share" class="twitter-share-button" data-url="http://www.whattheplace.com/Show/1/" data-count="vertical">Tweet</a> 
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script> 

URL được chỉ định (http://www.whattheplace.com/Show/1/) là một URL thường xuyên trả lại một trang web có mã HTTP 200, tức là không có chuyển hướng hoặc tương tự có thể gây nhầm lẫn cho Twitter.

Tôi đã chuẩn bị một ví dụ nhỏ trên http://www.whattheplace.com/static/tweetbutton.html nơi bạn có thể thấy sự cố. Trên trang "thực" tại http://www.whattheplace.com, Nút Tweet được bao bọc bởi AddThis, nhưng vấn đề là chính xác như nhau.

Tôi nghĩ rằng nó có thể liên quan đến trình rút gọn URL mới của Twitter (t.co), tuy nhiên tôi không thể chứng minh điều đó và dường như nó hoạt động trên các trang của người khác.

Trả lời

1

Tôi cũng gặp sự cố này và phát hiện ra rằng nó có liên quan đến giá trị của thẻ liên kết "chuẩn" mà tôi đã đặt. Nó được đặt thành http: // www.iphone4simulator.com nhưng nút tweet được chia sẻ http://iphone4simulator.com vì tôi đã đặt máy chủ DNS của mình để xóa chuỗi www khỏi địa chỉ. Ngay sau khi tôi thay đổi giá trị URL chuẩn trong đánh dấu thành nút sau, nút hoạt động như một nét duyên dáng!

+0

Cảm ơn, nhưng điều này có vẻ không phải vấn đề. Tôi đã chuẩn bị một ví dụ mới tại http://whattheplace.com/static/tweetbutton.html Tôi đã nhấp vào tất cả các nút tweet, nhưng chỉ có hai nút cuối cùng (những cái, trỏ đến tệp .html) sẽ được tính. Tôi không thấy sự khác biệt giữa URL cuối cùng và URL thứ 3 và thứ 4 là vì cả hai tài liệu HTML hợp lệ mà không có chuyển hướng (hai URL chuyển hướng đầu tiên có thể là lý do khiến chúng không hoạt động). – ChrisM

1

Tôi nghĩ rằng bạn đang thiếu dữ liệu qua = "#"

<a href="http://twitter.com/share" class="twitter-share-button" data-url="http://www.whattheplace.com/Show/1/" data-count="vertical" data-via="#">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script> 

Nếu nó rap xung quanh add im này khá chắc chắn bạn nên "trộn" nó với nút twitter chính nó, shouldn't bạn được sử dụng một cái gì đó như:

<!-- 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_counter addthis_pill_style"></a> 
</div> 
<script type="text/javascript">var addthis_config = {"data_track_clickback":true};</script> 
<script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#username=viralizate"></script> 
<!-- AddThis Button END --> 

Tôi không tìm được câu hỏi đủ rõ ràng, hy vọng nó sẽ giúp bạn! nếu bạn giải thích thêm, tôi sẽ sẵn sàng chỉnh sửa nó! - nếu tôi biết câu trả lời;)

Chúc may mắn!

Trufa

+0

Tôi đã thử dữ liệu qua nhưng nó chỉ thêm một "thông qua @ #" vào văn bản tweet đó là chính xác trong những gì tôi nghĩ rằng nó nên làm theo tài liệu (http://dev.twitter.com/pages/tweet_button). Nhưng tôi e rằng tôi không hiểu đề xuất thứ hai của bạn. Vấn đề là độc lập với AddThis, nó cũng xảy ra với nút Tweet thô. – ChrisM

15

Có một vài vấn đề có thể liên quan đến vấn đề này. Một trong số đó là nếu liên kết được rút ngắn, Twitter sẽ không thêm nó trừ khi bạn thêm thuộc tính url "counturl".

Ngoài ra, Twitter không tính các tweet đến từ các tài khoản được bảo vệ (các tài khoản không chia sẻ các tweet của họ).

Vui lòng cho tôi biết nếu không có điều nào trong số này cung cấp giải pháp.

Chúc mừng!

+1

Tôi đã thử nó với dữ liệu-counturl trên http://whattheplace.com/static/tweetbutton.html (hai nút ở phía dưới) với tài khoản Twitter không được bảo vệ @chrism_test nhưng nó vẫn không hoạt động. :-( – ChrisM

1

bạn phải sử dụng cả hai "data-đếm" VÀ "data-url" nếu bạn muốn hiển thị một số và có một shortener url liên quan (và luôn luôn có):

data-url="http://dev.twitter.com/pages/tweet_button" 
    data-count="vertical" 
1

nó không phải là dữ liệu -url, vì đó là url được rút ngắn ... bạn không cần phải bận tâm bao gồm cả điều mà tôi không nghĩ. đặt data-counturl = THE_PAGES_ACTUAL_URL nên không quan tâm đến việc người dùng rút ngắn nào sử dụng, số lượng cho url thực của bạn được tăng lên và hiển thị. một cái gì đó như thế này ...data-counturl="<?php echo $_SERVER['PHP_SELF']; ?>"

--- ummm ... nevermind, tôi nói quá sớm ...

+2

Đây là phần quan trọng. Thuộc tính 'data-counturl' phải trỏ đến CHI TIẾT CUỐI CÙNG HOÀN CHỈNH – Dex

2

Tôi đã chuyển đổi may mắn từ phương pháp tham số URL sang phương pháp thuộc tính dữ liệu.

function twtrButton(url, text, configs){ 
    // Create a link 
    var params = { 
    rel: 'canonical', 
    'data-count': 'horizontal', 
    href: 'http://twitter.com/share/' 
    }; 
    if (url) { 
    params['data-url'] = url; 
    params['data-counturl'] = url; 
    } 
    if (text) { 
    if(text.length > 90){ 
     text = text.substring(0, 90); 
     text += '...'; 
    } 
    params['data-text'] = text; 
    } 
    if (configs) { 
    if (configs.via) { 
     params['data-via'] = configs.via; 
    } 
    if (configs.related) { 
     params['data-related'] = configs.related; 
    } 
    } 
    var link = $('<a>', params).addClass('twitter-share-button'); 
    return link; 
} 

Đoạn mã này giả định jQuery 1.5 hoặc cao hơn.

Các vấn đề liên quan