顯示具有 安裝外掛 標籤的文章。 顯示所有文章
顯示具有 安裝外掛 標籤的文章。 顯示所有文章

2021年2月13日 星期六

Wordpress 發布文章或頁面出現已錯過排程

過新年,

不及格研究室也搬新家,

部分自架 WordPress 的問題也在新站浮現,

除了請教其他高手以外,

也詢問了論壇上的其他人,

今天就來分享

Wordpress 發布文章或頁面出現已錯過排程

這問題遇到的人不少,

提供的解決的方式有五種

底下就是問題出現的紅字,

不管是發文或者新增頁面,

均會遇到"已錯過排程"的問題,

雖說是五種方法,

或許前幾種都能夠解決網友當時的狀況,

但最後一個方法才是本站使用的解決方案。


方法一  修改系統與 WordPress 時區

這個方法就是去修改 php.ini , wp-setting 中的時區設定,

將其改為目前的時區 Asia/Taipei ,

不過這改完 WordPress 的網站狀態檢查工具會出現警告。




方法二 安裝外掛


據說能夠解決此問題的外掛有兩個,

一個為 Scheduled Post Trigger 

另一個為 SchedulePress ,

不過在本站的案例中,

不是一個好的解決方案 ( 也就是無效 )。


方法三 修改 wp-config.php

據說在 wp-config.php 設定檔案中,

加入

define('ALTERNATE_WP_CRON', true);

就能夠解決此問題,

不過同樣不能解決本站問題。

方法四 修改 WordPress 核心以及佈景主題的原始碼

此種方法其實最不建議採用,

因為更新的時候會將這些修改的程式碼都覆蓋掉,

到時又需要再次修改。

方法五 重灌大法

如果有安裝 WP Super Cache

在其進階選項的最底下

可同時看到 UTC 與本地時間,

本站發生問題時,

WordPress 抓到的 UTC 與 本地時間都一樣,

均為本地時間。( 下圖為正常的網站應該看到的時間 )


其實"已錯過排程"這個問題就是因為 WordPress 的時間不對所造成,

由於 Wordpress 預設以 UTC 時間為預設值,

而 Ubuntu 20.04 在不改系統時間的前提下同樣使用 UTC 時區,

( 使用 AWS EC2 與 VPS 的一般都採 UTC 為預設時區 )

使用命令

timedatectl

查詢可看到如下的資訊

重灌之後,

都不修改系統時間直接安裝 WordPress 就不會再遇到 "已錯過排程"的問題。