Blogger 安裝推文至Plurk程式碼時,少了「//」的修正方式

昨天把Blogger重新換了個模板,順便想解決之前使用推文按鈕時,只有推至Plurk會有不正常的狀況...
這個狀況是這樣的,一般微網誌可以利用網址的明碼參數(Post)來傳遞要發送的訊息,例如以plurk來說,它可以接受以下的網址:

當連結上列網址的時候,Plurk上的噗文輸入文字方塊就會出現「上上下下左左右右BA」的文字,這時候只要按【ENTER】就可以噗出去了...

那麼推文按鈕就是利用這樣的原理來達到推文的目的.
例如像下面這樣的方式:

可是說也奇怪,使用網路上大多數人安裝的推文按鈕程式碼,都會變成傳到Plurk時,URL會變成:
導致如果使用者直接在Plurk上按【Enter】的話,就會出現不正常的連結。

經過研究,似乎是Plurk的問題,在接受Post的時候,會把「//」忽略,所以造成這個問題..
為了修正這個問題,所以我透過Javascript在Post網址的時候,把「//」的地方加上「%2f%2f」發送就解決啦.

所以整理了一下,修正版的程式碼會變這樣(這段程式要放在 ]]> 後</head>前):
<script>
function toPlurk(title,link) {
var link=link.replace('http:','http:%2f%2f');
window.open('http://www.plurk.com/?status=' + link +' ' + '(' + title + ')');
}
</script>

再來這段程式放在推文按鈕的位置
<a expr:onclick='"javascript:toPlurk(\"" + data:post.title + "\", \"" + data:post.url + "\");"' href='javascript:void(0)'> Plurk! </a>

搞定,就這麼簡單囉...

原本推文至Plurk程式碼為參考:索尼斯の網路攻略

3 Responses to Blogger 安裝推文至Plurk程式碼時,少了「//」的修正方式

  1. 這個似乎對我有用是吧?

  2. 匿名 says:

    真的很方便!
    不知道有沒有推到FB的教學呢~~
    謝謝!

  3. 匿名 says:

    你好,之前參考這裡的教學
    解決了blooger轉推到Plurk的問題
    不過Plurk內部似乎修正了這個問題了
    因為今天轉推的時候發現多了兩個//
    所以原本的程式碼已經能正常運作
    故特來告知

Leave a Reply