先前因將 Synology 主機的系統 DSM 由 v6 升至 v7 (見:將synology系統dsm版本由6.2.4更新至7.2.1設定與記錄)

因為新的 DSM V7.2 所支援的 PHP 與 MySQL 版本不同,處理完 MariaDB 5 資料轉移至 MariaDB 10 時後,查看在最底套件的 PHP 版本為 7.3,原本在 PHP 7.2 時期的 WordPress 站台,當時的版本為 WordPress 5.3.2,在使用許多的外掛自然會有無法使用的情形,再加上許多外掛是在當時就沒有提供維護,因此要另外處理或找尋替代方案。


Fukasawa 主題更新與子主題處理

在沒將 WordPress 升上,Fukasawa 舊主題版本為 1.28,在新的 PHP 7.4 之後會讓畫面無法啟動呈現。

要查看畫面無法呈現,也需要以最單純的方式判斷問題,先將所有的 WordPress 套件停用,再將主題更新是現行版本。

更新至 2.1.2 版後與舊有的 Fukasawa-child (子主題) 無法運行,除了在 HTML 的架構不太相同外,連 CSS 的結構也是如此,在使用新版的主題就可正常 (不帶 child ),可見需要將子主題所擴充出來的程式碼與配合的套件進行重構。


程式碼高亮、片段外掛:Crayon Syntax Highlighter 判本過舊,以 Urvanov Syntax Highlighter 替換

Crayon Syntax Highlighter 判本過舊:與 PHP 7.4 之後本版本不相容,會照成跑版與無法使用,首頁畫面啟動後會無法程現內容。

主要原因是 Crayon Syntax Highlighter 版本過舊,也是在 WordPress 5.x 時期的外掛,這個外掛在這個站台非常重要,用來將程式碼片段透過 WordPress 的文字編輯器,以 PHP 標籤包著程式碼使用,如果找不到處理的方案,將先前所有的文章處理會是個重大的工程。

三個處理方案,最後選用 Urvanov Syntax Highlighter

在線上爬文時正整找到 WordPress 5x版本下Crayon Syntax Highlighter替换和保留方案 一文,其中有二個處理方案。

方案一是使用 Enlighter – Customizable Syntax Highlighter 代替 Crayon Syntax Highlighter,不過安裝之後在使用上覺得不是習慣的用法,自已在長期都是在文字編輯器中,以 EMMET 的方式輸入 HTML 程式碼或對應的 WordPress 程式碼片段,這個套件主要相依於 Gutenberg 介面中,與原先的使用習慣差很大,因此在以其他的方案規劃。

另外的 Enlighter 文章:Crayon Syntax Highlighterの移行先代替プラグインはEnlighterに決まりでしょ

方案二 (Crayon Syntax Highlighter: WordPress 5.6+/PHP 74+/PHP 8+ 完全兼容) 並不是由 WordPress 官方外掛所釋出,是由其他的開發者以兼容修復處理 (crayon-syntax-highlighter_Gut_Classic_11JAN21.zip),安裝後可以運行在 PHP 7.4 與 WordPress 最新版本之下,但像是收閤程鋨碼區塊、拷貝程式碼、還有區塊水平軸、程式碼換行都沒有作用,單純只能正常呈現出畫面。

方案三是使用 Urvanov Syntax Highlighter 外掛 (Crayon Syntax Highlighter替代插件Urvanov Syntax Highlighter),除了在 Gutenberg 編輯器中以一個圖示呼叫自已的介面使用,基本上使用方式與 Crayon Syntax Highlighter 沒有太大的差別,在傳統的編輯器中一樣也可以在文字輸入的模式,在加入代碼後同樣可以處理程式碼高亮與片段,例如以 [ css][/ css] 時,之中所包的 CSS 程式碼就會以格式在畫面上有著對應的高亮渲染,使用結果如下。

後台設定 Urvanov Syntax Highlighter,與 Crayon Syntax Highlighter 一樣

在後台的設定,大部份與先前的 Crayon Syntax Highlighter 一樣,只要對照設定所呈現在前台畫面基本上是一樣的。

另外一篇參考文章:WordPressのClassic Editorでコードを美しく表示する:「Urvanov Syntax Highlighter」の活用方法

設定的後台畫面如下。


WordPress 的永久連結設定為文章名稱,點按站內連結會以 404 回應

花了一段時間找問題與處理的方式,主要是 Apache 與 Nginx 的設定,基本上 WordPress 在 Nginx 預設不帶相關設定時,永久連結設定直接使用預設 設定 (網址帶上文章 id) 的方式就可以操作連結,但設定到文章名稱時就無法點按站內連結操作。

而在先前舊版 WordPress 所使用的是 Apache,這裡只要在 Web Station 由網頁服務 設定,指定 HTTP 後端伺服器設成 Apache HTTP Server 就可以了,在配合上 .htaccess 文件檔規劃一些站台與主機連線與權限設定。

找到一篇類似設定處理 WordPress 404 錯誤的方式,是由 apache 後端主機設定 .htaccess 文件,可用於在沒有設定 .htaccess 與單純的後端環境下,用來除錯和調整設定。
taskinghouse – 「教學」解決 WordPress 固定網址設定 404 錯誤