WordPress定時發布文章失敗的解決方法
編輯:狂族晨曦 來源:建站分享,WordPress技巧 日期:2015-08-11 閱讀: 3,425 次 搶個沙發 百度已收錄
定時發布是一個很有用的功能,這個功能我也是無意間發現的。
為什么要定時發布?
原因我就不說什么讓訂閱用戶喜歡什么的了,因為小博客的用戶較少,所以然并卵。但是對于SEO就很有好處了。之前有過這種情況,放假之后回家到處浪,幾天沒有管網站,結果本身就是新站,百度還見你不更新,site:www.cnidcc.cn都只顯示首頁了(收錄量顯示111條)。這時候,定時發布的重要性就顯示出來了,只要你有干貨,設置好定時發布,就可以放心浪啦~
如何定時發布文章?
說了這么多,可能還有些小伙伴不知道怎么進行定時發布文章,其實很簡單。
在文章編輯頁的右邊【發布】欄,點擊一下[立即發布]右邊的“編輯”,就會出現下圖所示的界面,可以選擇發布日期和時間,設定后,確定即可:


如果是在文章列表里,可以點擊【快速編輯】,將時間設置到想要發布的時間,選擇【發布】,點擊【更新】,就可以定時成功:(點擊放大)


PS:取消定時只要將狀態改為草稿即可。
定時發布失效怎么辦?
剛開始發現這個功能的時候,很高興的把第二天的文章定時發布了,第二天就沒管了,結果發布時間過了之后我去檢查的時候發現“定時發布失敗”的幾個藍字,郁悶了。

在網上搜了下方法,網上還是提供了幾種方法。
2016年1月21日更新:解決WordPress升級到4.4.1后定時發布文章失敗的問題
以下方法已經失效!
方法一:修改 /wp-includes/cron.php 系統文件
打開wp-includes目錄下面的cron.php文件,找到“timeout”代碼:
$cron_request = apply_filters( 'cron_request', array( 'url' => add_query_arg( 'doing_wp_cron', $doing_wp_cron, site_url( 'wp-cron.php' ) ), 'key' => $doing_wp_cron, 'args' => array( 'timeout' => 0.01, 'blocking' => false, /** This filter is documented in wp-includes/class-http.php */ 'sslverify' => apply_filters( 'https_local_ssl_verify', false ) ) ) ); wp_remote_post( $cron_request['url'], $cron_request['args'] );
將代碼后面的數值0.01修改為比0.01大就可以了,也可以修改為10.00。
但是我很負責的告訴大家,這個方法并沒有什么卵用,親測已經失效了。
方法二:使用WP Missed Schedule插件
在WordPress后臺安裝插件搜索該插件即可下載安裝,但是本著少用插件的原則,推薦大家直接使用一下代碼,將代碼放置在主題中function.php最后面即可:
<?php
if(!function_exists('add_action')){
header('Status 403 Forbidden');header('HTTP/1.0 403 Forbidden');header('HTTP/1.1 403 Forbidden');exit();}
?>
<?php
function wpms_log(){
echo"\n<!--Plugin WP Missed Schedule 2011.0920.2011 Active-->";
}
add_action('wp_head','wpms_log');
add_action('wp_footer','wpms_log')
?>
<?php
define('WPMS_DELAY',5);
define('WPMS_OPTION','wp_missed_schedule');
function wpms_replace(){
delete_option(WPMS_OPTION);
}
register_deactivation_hook(__FILE__,'wpms_replace');
function wpms_init(){
remove_action('publish_future_post','check_and_publish_future_post');
$last=get_option(WPMS_OPTION,false);
if(($last!==false)&&($last>(time()-(WPMS_DELAY*60))))return;
update_option(WPMS_OPTION,time());
global$wpdb;
$scheduledIDs=$wpdb->get_col("SELECT`ID`FROM`{$wpdb->posts}`"."WHERE("."((`post_date`>0)&&(`post_date`<=CURRENT_TIMESTAMP()))OR"."((`post_date_gmt`>0)&&(`post_date_gmt`<=UTC_TIMESTAMP()))".")AND`post_status`='future'LIMIT 0,5");
if(!count($scheduledIDs))return;
foreach($scheduledIDs as$scheduledID){if(!$scheduledID)continue;
wp_publish_post($scheduledID);}
}
add_action('init','wpms_init',0)
?>
插件我沒有安裝,但是代碼我使用后成功的定時發布了文章,親測可用,大家快去規律你的網站吧!
轉載請注明出處來自http://www.cnidcc.cn/wordpress_dsfbwzsbdjjff.html

川公網安備 51011202000104號