當 Live Sync 執行到 timeout 時


之前第一次用 Live Sync 100 多篇也才幾分鐘, 不過這次做就老是執行到 timeout, 訊息如下, 該怎麼辦呢? (而且其實才 sync 了約 60 多篇就停了)

Fatal error: Maximum execution time of 60 seconds exceeded in /home/WWW/blog/wp-content/plugins/wp-livesync.php on line 79

看了一下程式, 本來是想說是不是有設定 timeout 時間的地方, 結果一看看到了讀取資料的 SQL command, 就決定用偷懶的方法解決. 因為 Live Sync 在 sync 時已經有照 post 的時間來排序了, 因此可以直接修改程式 wp-livesync.php, 加上一段 AND post_date >= date('yyyy-mm-dd). 先看一下上次 MSN spaces 已經 sync 到哪裡了, 然後再接著後面繼續 sync 就可以了.

function wp_msnsync_syncall(){
  global $wpdb;
  $posts = $wpdb->get_results("SELECT ID FROM $wpdb->posts WHERE post_status = 'publish' AND post_type='post' AND post_date >= date( '2007-1-21' )  ORDER BY post_date");
  if($posts)
    foreach ($posts as $post)
      wp_msnsync_post($post->ID);
}

搞定, 收工 :mrgreen:



回應

發表新回應

這個欄位的內容會保密,不會公開顯示。
  • 自動將網址與電子郵件位址轉變為連結。
  • 可使用的 HTML 標籤:<a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img>
  • 自動斷行和分段。
  • Textual smileys will be replaced with graphical ones.

更多關於格式選項的資訊