Live Sync 1.0

基本上把所有想得到的功能都做完了,改了不少,原來MSN Sync的骨架剩下的也不多了。來點新氣象,換名字叫1.0吧。說明也已經更新好,如果沒有什麼大問題的話應該不會再常常更新了吧。

MSN Sync Modified 2.2 -> Live Sync 1.0更新事項:

  1. 增加選項可選擇全文同步或切到<!--more-->為止。可自定另一個內文範本供截斷文章時使用。

  2. 修改時間功能,能真正傳出文章的時間。

  3. 增加一個同步所有文章的按鈕。(因為文章判斷的一些問題,可能只在wordpress 2.1之後有效)

  4. 增加可以選擇不想同步的類別。


下載新版

本來時間是送錯的,所以Live Space在newpost的時候永遠幫你填目前時間。目前可以正確送出在wordpress上面張貼的時間。

而修正時間問題後終於能把同步所有文章的功能加入(不然同步所有文章時間都是現在,很怪)。美中不足的是,因為Live Space日期彙整產生方式比較特殊,就算你同步了舊文也不會出現舊月份的彙整。

p.s: 已經在用的人用Sync All existing Posts功能理論上也是安全的,之前有儲存到id的文章會用edit去修改。若有用到很早期版本msn sync的人,因為一開始id沒有儲存到,就有可能出現重覆文章的問題。

Update: 重新包了一包,也submit到wp-plugins.net上去。新包好的版本檔名改過。舊版使用者請先deactive plug-in,刪除wp-msnspace.php,放入wp-livesync.php之後再重新啟動plug-in。

留言

  1. 謝謝您, 目前一切正常, 不論是 more tag 或是 sync all. 我全部 sync 100 多篇也才幾分鐘, 很快. 不過意外發現一件事, 和 sync 程式應該無關, 就是文章有用到引用的, 會把別人的 blog 給 ping 兩次... 但 MSN 上似乎找不到關掉 ping 的方法

    回覆刪除
  2. 有个问题请教
    wordpress 2.1.1 + php5.1.6 cli + live sync 1.0
    发帖的时候提交后返回一个空白页
    再回主页看
    文章已经提交上去了
    但是没有sync到live space上去
    用的是firefox2.0.2
    谢谢

    回覆刪除
  3. live sync裡面沒有用die,所以程式不應該會停在live sync裡面,基本上發文的時候我連顯示錯誤訊息都沒有辦法。

    而且如果在sync hook裡面使用die,會發生post變成private post的情形。如果正常publish出來的話基本上可以排除是在裡面出問題。(另外如果是private post不會被同步)

    有可能因為這個plug-in,讓wordpress跑到一半segmentation fault,或其它原因導致他跑到一半中斷。

    老實說我只算php初學者,不是很曉得可能的情形是怎樣,需要能複製這個問題的環境才比較容易除錯。之後我會試試做log,這樣會比較容易找出問題,不過目前幫不上太多。

    回覆刪除
  4. 有个问题
    errer_log里报:“PHP Warning: fsockopen() [function.fsockopen]: unable to connect to ssl://storage.msn.com:443 (Unknown error) in ”
    这是为什么呀
    我的phpinfo()里显示有openssl支持呀

    回覆刪除
  5. 沒有這些字樣的話"Unable to find the socket transport “ssl” - did you forget to enable it when you configured PHP?"表示不是因為沒開啟openssl,而是其它原因連不上微軟的server,可能要在你的環境除錯才曉得。

    回覆刪除
  6. [...] Live Sync 100 多篇也才幾分鐘, 不過這次做就老是執行到 timeout, 訊息如下, [...]

    回覆刪除
  7. 您好,請問一下,我在LiveSpace的電郵發佈確定有勾選,名稱跟密碼我也確定沒有打錯
    可是在WordPress的選項中老是出現下面兩行:
    Error: Oops, cannot establish link to Live Spaces|Try again later;
    Please check your Space Name and Password again, or see if Email Publishing option is turned on on your Live Spaces.
    請問是我那裡沒有弄好嗎?..Thx..:)

    回覆刪除
  8. 有問題就會叫使用者檢查帳號和密碼是否正確,不管他是回傳什麼錯誤,所以可能不是。

    不過這邊看起來不是這個問題,如果顯示Error: Oops, cannot establish link to Live Spaces|Try again later;的話,表示和ssl://storage.msn.com連線的時候就失敗了,還沒有傳任資料過去。

    這個是之前我也遇過的問題,所以才有加入這條error handling。不過上次我這邊出題只有一陣子,記得隔天再看就好了。

    回覆刪除
  9. humm..感謝回應,那我再等幾天看看好了,另外說明一下我的Server環境。
    Win2003+II6+MySQL4.0.26+PHP5.2
    防火牆只有用Win內建的,差不多就這樣子了..:)

    回覆刪除
  10. 晤,我找到原因了,PHP.ini裡的openssl沒開,所以連不上Live Space..^^"..
    開了之後就ok了..:)

    回覆刪除
  11. 解決就好...

    之前忘了說有一個實驗的方法。

    因為是你自己的機器,所以在那台機器上用微軟的Windows Live Writer寫看看。如果可以的話就表示是別的設定有問題。如果Windows Live Writer也不行就是真的連不上。

    回覆刪除
  12. 您好PRIV,我来自上海.您的这个plugin非常实用,但是我有一个疑问:

    为什么每次在WP里面Publishe的文章,似乎并不自动发送至LIVE SPACE,而要我每次去点击[同步所有文章]那个按钮呢?

    期盼答复

    回覆刪除
  13. 不太清楚..照理說都會通過那個filter(包括private post...還沒修正)

    只能先猜測,是否有其它的plug-in造成的影響呢?(吃掉publish_post這個動作)

    回覆刪除
  14. 小弟找到有關"unable to connect to ssl://storage.msn.com:443 (Unknown error)" 的問題了!
    試著修改wp-livesync.php 的第79行(如無自行加任何程式碼的原位置), 把
    "$fp = fsockopen("ssl://storage.msn.com", 443, $errno, $errstr);"
    修改為"$fp = fsockopen("storage.msn.com", 443, $errno, $errstr);"

    (即是刪去ssl://)
    因為fsockopen是主要看domain name 的, 而且已是443 port , 所以不用再打ssl://了。
    詳情: http://hk.php.net/manual/en/function.fsockopen.php

    如有還是有問題的話, 那應該不是插件的問題了。

    回覆刪除

張貼留言

這個網誌中的熱門文章

文言文

談談台灣人使用統傳漢字的優越心態

台灣工程師常唸錯的英文單字