ACF 與 SCF:分叉之爭(zhēng)與 WordPress 生態(tài)的未來

近期,WordPress 決定將流行插件高級(jí)自定義字段 (Advanced Custom Fields, ACF) 分叉為名為安全自定義字段 (Secure Custom Fields, SCF) 的版本。這一舉措不僅在社區(qū)中引發(fā)了廣泛討論,也是 WordPressWP Engine 之間法律糾紛的直接結(jié)果,更深層次地反映了開源軟件生態(tài)中安全性與商業(yè)利益之間的緊張平衡。

圖片[1]-ACF 與 SCF:WordPress 插件分叉之爭(zhēng)的背景、區(qū)別與選擇指南

分叉是開源社區(qū)中的一個(gè)寶貴工具,既可以解決當(dāng)前的技術(shù)問題,又可以推動(dòng)項(xiàng)目向新的方向發(fā)展。然而,在分叉項(xiàng)目時(shí),必須克服一些心理和實(shí)踐上的挑戰(zhàn)。重要的是,推動(dòng)分叉的動(dòng)機(jī)需要從長(zhǎng)遠(yuǎn)發(fā)展的角度出發(fā),明確支持的理念與價(jià)值。以下,我們將從多個(gè)角度詳細(xì)探討 ACFSCF 的歷史背景、分叉原因、對(duì)用戶和開發(fā)者的影響,以及這對(duì) WordPress 生態(tài)系統(tǒng)的深遠(yuǎn)意義。

1. 背景:WP Engine 與 WordPress 的沖突

WP Engine 是一家知名的 WordPress 托管服務(wù)提供商,其在 2022 年收購了 ACF 插件,為其添加了功能并通過自己的平臺(tái)提供更新。然而,這種更新方式繞過了 WordPress.org 官方的插件目錄,引發(fā)了安全性和透明度的擔(dān)憂。WordPress 聯(lián)合創(chuàng)始人 Matt Mullenweg 認(rèn)為,WP Engine 的行為可能威脅到插件生態(tài)系統(tǒng)的完整性,尤其是當(dāng)其更新不再接受 WordPress.org 社區(qū)審查時(shí)。

為了應(yīng)對(duì)這種情況,WordPress 決定禁止 WP Engine 及其關(guān)聯(lián)人員訪問 WordPress.org 的基礎(chǔ)設(shè)施,包括管理他們的插件和主題。這一禁令促使 WordPress 對(duì) ACF 進(jìn)行分叉,創(chuàng)建了 SCF 插件,以保護(hù)用戶的安全并保證更新的透明性。

圖片[2]-ACF 與 SCF:WordPress 插件分叉之爭(zhēng)的背景、區(qū)別與選擇指南

2. 高級(jí)自定義字段 (ACF) 的歷史與地位

ACF 于 2011 年由 Elliot Condon 創(chuàng)建,是 WordPress 生態(tài)中最受歡迎的插件之一。它允許開發(fā)者通過簡(jiǎn)單的界面為帖子、頁面和自定義帖子類型添加自定義字段,而無需復(fù)雜的代碼編寫。這一插件靈活、易用,吸引了超過 200 萬個(gè)活躍安裝用戶。

圖片[3]-ACF 與 SCF:WordPress 插件分叉之爭(zhēng)的背景、區(qū)別與選擇指南

ACF 的核心功能包括:

  • 多種字段類型(文本、圖像、文件等)。
  • 高級(jí)功能(如可重復(fù)字段、中繼器字段和靈活內(nèi)容布局)。
  • 強(qiáng)大的社區(qū)支持和豐富的文檔資源。

2022 年,WP Engine 收購了 ACF,并將其作為其生態(tài)系統(tǒng)的一部分進(jìn)行管理。此后,ACF 的更新被移至 WP Engine 的服務(wù)器上,而不再通過 WordPress.org 發(fā)布。

3. 為什么分叉 ACF:SCF 的誕生

圖片[4]-ACF 與 SCF:WordPress 插件分叉之爭(zhēng)的背景、區(qū)別與選擇指南

安全性和透明度的考量

ACF 的更新模式讓 WordPress.org 安全團(tuán)隊(duì)對(duì)其數(shù)據(jù)處理方式和商業(yè)追加銷售表示擔(dān)憂。具體問題包括:

  • 更新不透明:WP Engine 通過自己的服務(wù)器發(fā)布更新,而非通過 WordPress.org 的審核流程。
  • 潛在的安全漏洞:一些未過濾的數(shù)據(jù)處理方式可能導(dǎo)致安全風(fēng)險(xiǎn)。
  • 商業(yè)追加銷售:WP Engine 在插件中嵌入了付費(fèi)功能推廣鏈接,引發(fā)了社區(qū)對(duì)插件開源精神的質(zhì)疑。

為了解決這些問題,WordPress 于 2024 年 10 月宣布分叉 ACF,創(chuàng)建 SCF 插件。SCF 刪除了 ACF 中的商業(yè)追加銷售功能,并強(qiáng)化了安全性,完全托管在 WordPress.org 官方插件目錄中。

GPL 許可的作用

WordPress 插件的 GPL 開源許可證允許任何人分叉代碼,前提是新版本也需要遵守 GPL 規(guī)則。這一許可使得 WordPress 有權(quán)基于 ACF 創(chuàng)建 SCF,從而確保插件生態(tài)系統(tǒng)的安全性和透明性。

4. ACF 與 SCF 的核心區(qū)別

圖片[5]-ACF 與 SCF:WordPress 插件分叉之爭(zhēng)的背景、區(qū)別與選擇指南

以下是 ACF 和 SCF 的主要區(qū)別:

特征高級(jí)自定義字段 (ACF)安全自定義字段 (SCF)
所有權(quán)WP EngineWordPress.org
以安全為重點(diǎn)的開發(fā)功能優(yōu)先,安全性非主要考量以安全性和透明度為核心
商業(yè)模式提供付費(fèi)專業(yè)版(ACF Pro)完全免費(fèi),無商業(yè)追加銷售
功能豐富性提供高級(jí)功能(如中繼器字段、靈活內(nèi)容字段)僅包含免費(fèi)版的核心功能
更新方式通過 WP Engine 的服務(wù)器發(fā)布完全托管在 WordPress.org
社區(qū)支持社區(qū)成熟,文檔豐富新插件,支持資源有限
未來創(chuàng)新方向可能與 WP Engine 的生態(tài)進(jìn)一步整合側(cè)重 WordPress 生態(tài)系統(tǒng)的安全與兼容性

5. 對(duì)開發(fā)者和用戶的影響

開發(fā)者的挑戰(zhàn)

  • 兼容性問題:一些圍繞 ACF Pro 功能構(gòu)建的主題和插件可能與 SCF 不兼容。
  • 功能限制:SCF 缺少 ACF Pro 的高級(jí)功能,可能需要開發(fā)者手動(dòng)編寫自定義代碼。
  • 學(xué)習(xí)曲線:從 ACF 遷移到 SCF 可能涉及適應(yīng)新的插件管理模式。

用戶的困惑

  • 功能取舍:但是目前來看兩個(gè)插件功能都很完備,用戶需要在 ACF 的功能豐富性和 SCF 的安全透明性之間做出選擇。
  • 遷移難度:已有的自定義字段可能需要重新配置或調(diào)整。
  • 客戶溝通:管理多個(gè) WordPress 客戶的開發(fā)者需要向客戶解釋這一變化的影響。

6. 如何選擇:ACF 還是 SCF?

圖片[6]-ACF 與 SCF:WordPress 插件分叉之爭(zhēng)的背景、區(qū)別與選擇指南

如果您正在考慮在 ACF 和 SCF 之間進(jìn)行選擇,可以根據(jù)以下因素權(quán)衡:

功能需求

  • 如果你依賴 ACF Pro 的高級(jí)功能(如中繼器字段、靈活內(nèi)容字段),建議繼續(xù)使用 ACF。
  • 如果你的需求相對(duì)簡(jiǎn)單,SCF 的免費(fèi)功能可能已經(jīng)足夠。

安全與透明性

  • 如果你更關(guān)注更新的安全性和透明性,SCF 是更好的選擇。
  • 如果你信任 WP Engine 的更新流程,則可以繼續(xù)使用 ACF。

社區(qū)支持

  • ACF 擁有更成熟的社區(qū)支持和文檔資源。
  • SCF 則依賴于 WordPress.org 社區(qū)的持續(xù)發(fā)展。

7. 其他插件是否會(huì)有類似經(jīng)歷?

簡(jiǎn)短的答案是肯定的。
在 WordPress 世界中,只要代碼托管在 WordPress.org 插件庫中,并遵循 GPL 許可協(xié)議,就始終存在被分叉的可能。GPL 賦予了任何人復(fù)制、修改和分叉代碼的權(quán)利,只要遵守開源協(xié)議的約束。

圖片[7]-ACF 與 SCF:WordPress 插件分叉之爭(zhēng)的背景、區(qū)別與選擇指南

一個(gè)類似的例子是 GiveWP 分叉了 Easy Digital Downloads。雖然這兩個(gè)插件起源相同,但分叉后各自形成了不同的功能方向。這種分叉行為并不少見,只是在 ACF 與 SCF 的事件中,由于涉及 Automattic 和 WP Engine 等主要利益相關(guān)方,才顯得格外敏感。

8. 總結(jié)

ACF 和 SCF 的分叉之爭(zhēng),是 WordPress 生態(tài)系統(tǒng)發(fā)展過程中的重要事件。對(duì)于開發(fā)者和用戶來說,選擇哪一款插件不僅僅是技術(shù)問題,更是對(duì)安全性、透明性和開源精神的思考。

無論你選擇 ACF 還是 SCF,都需要根據(jù)自身需求權(quán)衡利弊,并密切關(guān)注未來的發(fā)展動(dòng)態(tài),以確保你的網(wǎng)站始終保持穩(wěn)定、安全和高效。


聯(lián)系我們
教程看不懂?聯(lián)系我們?yōu)槟赓M(fèi)解答!免費(fèi)助力個(gè)人,小企站點(diǎn)!
客服微信
客服微信
電話:020-2206-9892
QQ咨詢:1025174874
郵件:info@361sale.com
工作時(shí)間:周一至周五,9:30-18:30,節(jié)假日休息
? 轉(zhuǎn)載聲明
本文作者:xiesong
THE END
喜歡就支持一下吧
點(diǎn)贊9 分享
評(píng)論 搶沙發(fā)

請(qǐng)登錄后發(fā)表評(píng)論

    暫無評(píng)論內(nèi)容