按此:與 Iain Poulson 一起深入了解 Advanced Custom Fields 6.0 中的新功能

已發表: 2022-10-07

歡迎來到來自 WMR 的 WordPress 社區播客 Press This。 每集都有來自社區的嘉賓,並討論 WordPress 開發人員面臨的最大問題。 以下是原錄音的抄錄。

由 RedCircle 提供支持

Doc Pop :您正在收聽 Press This,這是 WMR 上的 WordPress 社區播客。 每週,我們都會聚焦 WordPress 社區的成員。 我是您的主持人,Doc Pop,我通過我在 WP Engine 的角色以及我在 TorqueMag.io 上的貢獻來支持 WordPress 社區。 您可以在 Red Circle、iTunes、Spotify 上訂閱 Press This,也可以直接在 wmr.fm 下載劇集。

在這一集中,我們將與來自 Delicious Brains 和現在的 WP Engine 的 Iain Poulson 坐下來討論最近發布的 Advanced Custom Fields 6.0 以及他的團隊發布的一系列很酷的新功能。 伊恩,非常感謝你今天加入我們。

伊恩·波爾森:謝謝。 很高興來到這裡。

DP:我很高興有你在這裡。 我覺得我對此有所了解,但我想听聽你自己的話。 您的 WordPress 起源故事是什麼?

IP:是的,所以我在 2009 年被介紹給 WordPress。我很快就意識到它有多麼棒,並開始​​為朋友和家人建立一些網站,並建立了自己的博客並開始運行。 然後我在做一項更嚴肅的與 IT 無關的工作,有一次,我和妻子搬到了倫敦,我們都離開了 Facebook,我們建立了這個照片共享網站我認為這是一個只有我們家人才能看到的私人 WordPress 博客。 但是我的妻子剛剛迷上了 Instagram,並不太熱衷於手動從 Instagram 保存圖像並將它們放到網絡上,以一種不同的方式放到 WordPress 網站上,你知道,這不是很容易. 所以,是的,它只是促使我構建我的第一個插件來自動將內容從她的 Instagram 拉入網站。 我剛剛遇到了一個錯誤,比如,只是想出如何在 WordPress 中做某事,構建一個自定義插件並讓它符合你的意願,這真的很好。

所以是的,從那以後我一直在開發免費和高級插件。 我最終擺脫了我在 2013 年左右擔任的那種 IT 角色,嘗試全職在 WordPress 上嘗試構建插件,最後我在倫敦的一家機構做一些自由職業然後在此期間,在 Delicious Brains 找到了這個角色。 那是 2014 年,我想是因為我是自由職業者,我兒子的預產期是 11 月,我看到 Delicious Brains 的工作在 8 月或 9 月出現。 感覺就像,也許我應該在生活中更加穩定一點,把一個孩子帶到這個世界上。 這是您認為的事情之一,其餘的都是歷史,因為從那時起我一直在 Delicious Brains 和現在的 WP Engine 工作,這是有史以​​來最好的事情之一。 所以,是的,當時這是一個很好的決定。 是的,這絕對是一段漫長而美好的 WordPress 之旅。

DP:我喜歡聽到關於人們如何從需求開始的故事,而且似乎很多人都是從照片博客開始的。 我早在 2010 年就已經在寫博客了,但我迷上了 Instagram,而且我很有可能正在使用,我認為 Integrate 是您用於 Instagram 集成的插件。 我不確定我使用的是哪一個,但我有一種感覺,這可能是我第一個連接到我的博客的。 所以我很欣賞你在那裡所做的。

IP:這太瘋狂了,不是嗎? 這是互聯網的一個小世界。

DP:是的,我還想再強調一下你正在開發的 Flip WP 的其他項目之一,這是另一個很棒的工具,你有一堆非常酷的項目正在做,但是我們將討論您目前在 WP Engine 的工作以及您當前的角色。 你能告訴我們你現在在哪里以及你現在在做什麼嗎?

IP:是的,很明顯,隨著 Delicious Brains 收購插件並轉移到 WP Engine,我是 ACF 的產品經理,我在 Delicious Brains 做這個,但也有許多其他類型的角色。 但我專注於 ACF,與 WP Engine 的團隊合作,我們將繼續發展並照顧 ACF。 我們是插件的管家。 它是其中之一,它已經存在了很長時間,它是從原作者 Elliot 那裡搬來的,他對他非常敬佩,大喊大叫,因為這個插件真是太棒了。 我是一個長期的用戶,我為它開發,從那以後我就喜歡它。

因此,通過 Delicious Brains,現在有了 WP Engine,我們正在照顧這個插件,我們有責任讓它變得更好,繼續讓它變得更棒,這只是對社區的一種責任,因為有很多人喜歡它那裡。 你知道,有數百萬用戶在使用它。 所以是的,在 WP Engine 中,這是我的主要關注點,真正專注於它並照顧它是件好事。

DP: A-Team [笑聲] Advanced Custom Fields 團隊有多大。 A-Team [笑聲] 你們都出現在你的麵包車裡,你就像,讓我們自定義一些字段。 現在的團隊有多大?

IP:所以現在它比以前更大了,這很好,因為在 Delicious Brains,無論如何它通常都是一家小公司,顯然與 WP Engine 的規模相比。 但是我們有兩個產品開發人員,很明顯我自己是產品經理,但也管理開發人員。 我們有一個設計師,他是一個小型營銷團隊的一員,但他們在 Delicious Brains 中開發其他插件,所以它不僅僅是一個致力於 ACF 的設計師,或者一個致力於 ACF 的營銷團隊。 但是現在我們已經有了,在 WP Engine,工程師們已經加入了 Atlas 團隊中的一個現有團隊,他們現在已經有七人了,這很棒。

我們還受益於擁有一支專門的營銷團隊和更廣泛的團隊,在我們需要時可以打電話,這太棒了,因為當你在一家小公司時,你會戴很多帽子,實際上,美女現在讓 WP Engine 照顧 ACF 意味著我們可以調用更多資源。 所以我真的很高興看到你知道它在這種情況下如何成長。

DP:您如何描述開發人員和其他用戶使用高級自定義字段的方式?

IP:是的,它很有趣,因為它無處不在,每個人都知道它。 他們使用它。 這是一把瑞士軍刀,可以以不同的方式使用,因為它實際上是 WordPress 的一個很好的擴展。 這是我認為隨著時間的推移很多人已經離開的這些事情之一,“它可能應該是核心。” WordPress 不僅僅是一個博客平台,很明顯,很長一段時間以來,它都試圖將自己定位為不僅僅是一個博客平台。 但作為一個真正的 CMS,它有點失敗,我認為 ACF 只是讓它成為一個 CMS。 它使它成為一種強大的網絡框架,人們可以在那里為他們的客戶創建自己的定制內容管理系統。 就是這麼強大。

由於這種靈活性,我們肯定會看到 ACF 的廣泛使用。 你有一些人會安裝它,因為他們正在為客戶創建一個小冊子主題,他們正在向“關於”頁面或類似頁面或“聯繫頁面”添加幾個額外的字段,或者他們正在添加一個跨站點使用的全局設置的選項頁面。 但另一方面,有些人正在使用它來為目前非常類似於網絡應用程序的大型網站提供支持,因為他們依賴於 WordPress 的用戶管理或身份驗證。 他們正在添加自定義帖子類型來做事並添加所有字段,你之前提到過 FlipWP,它就像一個市場網站,它是用 WordPress 和 ACF 和其他東西構建的。

它為一些比你想像的更大的事情提供動力,我們現在從 ACF 博客中獲得了一些案例研究,這些案例研究是關於在大型網站或有趣用例上使用 ACF 的公司。 因為,我認為這就是問題所在——除非你使用它,否則很難理解 ACF 有多強大,而且從營銷的角度來看這是一個挑戰,因為當你查看文檔站點時,它是相當的——除非你知道原因,否則它很枯燥後面使用這些功能。 但是案例研究令人驚嘆,因為它們有點像,這就是網站試圖實現的目標,這就是它的外觀,這就是它需要做的。 這就是 ACF 實際上是如何幫助網站開發人員做到這一點的,以及實際用戶添加內容的方式,你知道,最近的一個是捐贈類型的網站。 所以,是的,其中一些帖子絕對值得查看,我們還有更多帖子,因為它確實突出了用例的多樣性。 甚至簡單地說,肯定有大量用戶使用 ACF 和 Elementor 等頁面構建器來構建站點。 因此,它不僅僅是經典的 WordPress,到處都有一些自定義字段,然後將它們添加到您的模板中。 遠不止於此。

甚至從 ACF 的經典方面,塊編輯器,現在在 WordPress 和完整站點編輯中。 我們有 ACF 用戶正在使用塊編輯器,但他們正在使用 ACF 塊功能,這是 PRO 插件的一部分,但它允許人們輕鬆使用他們的 ACF 字段和他們知道的 PHP 模板語言,它們習慣於在 ACF 中,但用於創建自定義塊。 他們不必立即提高技能並學習創建自定義字段所需的所有 JavaScript 和 React 工具。 因此,它使他們能夠在他們對基於塊的開發的了解和喜愛之間無縫連接,並且它使他們的客戶能夠在塊編輯器中創建內容,這種編輯器正被越來越多地採用。 但他們的發展得到了 ACF 的幫助。 所以是的,肯定有很大的範圍,有很多人口統計和用戶類型,但這很有趣,因為我們必須以這些方式幫助每個使用 ACF 的人。

DP:在短暫的休息之後,我們將更多地討論新的塊功能以及高級自定義字段 6.0 中的新功能和新功能。

DP:您正在收聽 Press This 是 WMR 上的 WordPress 社區播客。 我叫波波醫生。 我在這裡與來自 Advanced Custom Fields 的 Iain Poulson 一起向我們介紹幾週前推出的 Advanced Custom Fields 6.0 中的新功能。 Iain,您能告訴我們一些新功能嗎?

IP:所以是的,6.0 是一個大版本,真的,它在很多方面都很重要。 它是在 WP Engine 收購 Delicious Brains 插件之前開始的。 它的主要重點是 UI 刷新。 它的時間很長,範圍也很長,感覺很長,因為我們在兩者之間有過這種轉變,對吧。 所以它肯定已經很久了。 但是,是的,主要關注點是,我們已經獲得了舊的插件 UI——因此 ACF 的管理員將在那裡用戶添加他們的字段組,並將他們的字段添加到字段組中,並得到所有類型的定義——該管理用戶界面已被重新設計。 我們試圖保持接近原作。 我的意思是,原始 ACF 在管理員中看起來像 WordPress。 我們試圖保持這些路線,但試圖刷新它。

我們已經推出了對其他 Delicious Brains 插件的更新,更新後的 UI 略有不同,你知道,更現代一些。 所以它也隨之而來。 但這不僅僅是 UI 更改。 我們嘗試在編輯字段時解決插件的用戶體驗問題。 所以,是的,我想我們稍後再談。 發布不一定有一個主題,它是一個東西的集合,UI 是一個重要的部分。 我們還知道,當 ACF,尤其是 ACF 塊時,它與 WordPress 的功能非常相關。 因此,例如,當 WordPress 更改諸如完整站點編輯之類的內容時,您必須順其自然,並嘗試保持一致,因此有時我們的版本會稍微受制於我們需要如何改進以及我們如何與WordPress 和 ACF 塊是其中的重要組成部分。 這是該版本中的另一個重要示例。

DP:所以我知道更新的 UI 對你來說是一個充滿激情的項目,但這並不是徹底的大修。 它只是解決一些你已經有一段時間的問題,或者讓事情更容易找到?

IP:是的,它結合了這種輕重的皮膚,刷新嘗試讓它看起來更現代,並在一定程度上使其與我們的其他插件保持一致,但這也是解決一些問題的好時機存在的用戶體驗問題和缺點,我認為因為 ACF 已經存在了很長時間,所以有很多你可以接受的東西。 對於初次使用的用戶來說,用戶體驗肯定存在一些細微差別。 顯然,我們有很多非常習慣於做事方式的現有用戶,但我們試圖嘗試解決一些問題。 每次都讓我印象深刻的一件大事——我仍然將 ACF 用於我的個人網站和其他事情,我們將它用於 Delicious Brains 網站和 Advanced Custom Fields 網站。

所以我們是我們自己產品的用戶,但每次我進入某個領域時都會受到打擊。 當我單擊字段更改設置時,它會打開字段抽屜,它會佔據整個頁面,因為您可以使用整個廚房水槽方法來顯示字段的所有設置。 然後很難導航,因為你有點迷失了從那個領域完全接管屏幕。 因此很難找到下一個字段,或者您知道,添加下一個字段或返回到前一個字段。 因此,我們試圖減少管理屏幕中所有內容所佔用的垂直高度。

所以最重要的是我們採用了之前剛剛佈局的字段設置,一個接一個,這增加了頁面的長度。 我們將這些設置邏輯地分組在一起,並將它們放在選項卡後面。 因此,垂直間距的改進是巨大的,因為字段設置自然要小得多。 因此,您可以在正常尺寸、MacBook 屏幕或其他任何設備上看到大概三個字段設置。 但是,對於進來並想要添加新字段然後突然將所有這些東西扔給他們的新用戶來說,這並不是壓倒性的。 他們可以按照邏輯順序通過選項卡來思考,“好吧,你知道,這些是我的字段類型、字段名稱、標籤鍵的基本設置,然後讓我考慮驗證。 我希望它是必需的嗎? 我需要一些條件邏輯嗎?” 並且它引導他們通過創建領域的經驗比以前更多。

是的,當您在該字段編輯屏幕中看到很多東西打開時,這只是另一件事,然後很難想到,我該如何關閉它? 我如何回到更狹窄的空間,然後我可以添加或找到“添加新字段”按鈕。 因此,我們改進了您可以單擊以關閉字段抽屜的位置。 有一個像人字形一樣的小箭頭,顯示它是打開還是折疊。 所有這些現在都是可點擊的,而在此之前,要找到如何關閉它是相當挑剔的。 我們在頂部有這個工具欄,它會在滾動時保持粘性。 因此,無論您在頁面上的哪個位置,它都將始終位於頂部,其中將具有“保存字段組”按鈕。 因此,您不必一直滾動到頂部來保存更改。 你有一個添加字段按鈕,所以當你需要添加一個新字段時它總是在那裡,你不必為了做一些基本的事情而與佈局和 UI 作鬥爭。 所以,是的,我們希望很多這些東西本身看起來很小,但放在一起肯定會有一些改進,你知道,總的來說。

DP :那是你說的Repeater Pagination,對吧?

IP:所以這是 6.0 中它自己的獨立功能。 但這更像是,當您編輯一個字段組時,您在該字段中有 100 個字段,或者您知道,即使在該字段組中也有 10 個字段。 這就是你定義字段的地方,你點擊一個打開它,它就佔據了整個屏幕。 然後你必須去找,“現在我想改變它下面的設置。” 而且很難導航,這只是字段定義,它們是插件管理的一部分。

但是,是的,Repeater Pagination 是一個很好的標註,因為它也是 6.0 版本的重要組成部分。 所以只是這背後的一些背景,中繼器字段,它是 PRO 插件的一部分,它允許用戶定義一個中繼器類型的字段,並將子字段添加到這個中繼器。 因此,例如,您有一個非常簡單的代理網站,您想顯示所有員工,但必須有人輸入該數據。 它可以是 10、20、30 或任何工作人員。 中繼器字段使您能夠說,對,該字段將包含人員列表的數據,子字段將是“名稱”。 這將是一個文本字段。

接下來可能是“位置”,可能是一個下拉菜單、一組數據、一個位置列表,然後可能是他們的頭像或頭像的圖像。 例如,當您現在在“關於”頁面上,並且正在 WordPress 管理員中編輯“關於”頁面時,您將獲得包含此重複數據集的元框。 所以你會進去說,添加新的員工,然後你可以填寫姓名和我們定義的所有字段。 然後很明顯在前端,它將以設計師想要的任何方式呈現——在網格或列表視圖或其他方式中。 這就是中繼器的力量。

令人驚奇的是,當然,使用 ACF 的用例也各不相同,因此人們在轉發器字段中存儲五行不同的數據,但有時人們使用它來存儲數千行數據,這取決於它是什麼。 使用中繼器的最大問題是,在 6.0 之前的 ACF 5 及更低版本中,當您編輯包含中繼器字段數據的頁面時,它會加載每一行數據,並且這使得頁面的整個加載速度變慢。

有時肯定會出現超時問題,類似地,當您在Repeater 中添加數據或編輯數據並點擊“保存帖子”時,它必須將所有數據發回以保存它。 所以你會發回數千行,你知道,也許是五個,也許是 10 個子字段。 因此,您有大量數據輸入,這些數據可能會導致站點出現性能問題,並且可能無法加載或無法保存。 而且,你知道,人們有,我的意思是,這是我們長期以來一直有的東西,人們來支持問題,因為這是一個問題。 因此,我們試圖做的是緩解這些類型的中繼器字段的這些問題。 它在示例中不起作用,或者在我與員工一起提供的示例中甚至不需要它,如果您有 20 名員工,因為它會快速加載並且不需要保存大量數據。

但是對於擁有大量數據集的用戶,我們添加到 6.0 的中繼器分頁設置是一種解決此問題的方法。 其中一個Repeater Layout 設置就像一個表格網格,基本上,Repeater Pagination 設置,一旦你打開它——你可以說我們應該在每頁顯示多少行——所以當內容編輯器在一個發布或頁面編輯視圖,一旦他們加載頁面,它只會加載例如前 10 條記錄,這將比加載 1,000 條記錄快得多。

他們可以翻頁到下一頁並返回最後一頁,因為所有這些東西。 它會即時加載數據,因此不會在加載時阻止它們。 其中最重要的部分之一也是我們如何保存數據。 無論您點擊保存後它們是否已更改,我們都不會發送所有行,而是僅發送實際更改的數據。 因此,新記錄、已刪除記錄以及對現有記錄的更新。 因此,儲蓄也將快得多。 這是其中之一,除非您需要,否則您可能不需要它,如果有意義的話。 但對於擁有大量數據的人來說,這是天賜之物。

DP:當然。 我當然想更深入地了解這一點,但我們會稍作休息,然後我們會回來與 Advanced Custom Fields 的 Iain Poulson 談談 Full Site Editing 如何改變了 ACF 的情況。 所以請繼續關注。

DP:您正在收聽 Press This,這是 WMR 上的 WordPress 社區播客。 我是來自 Advanced Custom Fields 的 Iain Poulson 的主持人 Doc Pop,該公司剛剛推出了 ACF 6.0,並進行了許多重大改進。 我們剛剛討論了 UI 上正在發生的事情以及那方面發生的一些重大變化。 Iain 經常出現的一件事是完整站點編輯及其對 WordPress 的影響。 我有點想知道像高級自定義字段這樣的巨型插件,完整站點編輯對 ACF 有什麼影響?

IP:是的,我認為它確實產生了影響,很明顯,因為我們正在為使用 ACF 塊的塊編輯器開發提供服務,所以我們必須努力保持領先地位並努力確保我們重新兼容。

有趣的是,在 Full Site Editing 出現之前,我什至不記得是哪個版本的 WordPress,但在此之前,ACF 有點早受到影響,因為 Query Loop 塊的塊類型是發布,我認為可能在 WordPress 5.8 中。 那是在完整站點編輯之前,但我們需要使 ACF 塊與之兼容。 他們還引入了塊驅動的小部件編輯器,而不是像經典小部件那樣,因此我們必須確保與 ACF 塊相關的所有內容都可以使用它。

所以,是的,我們對 ACF 塊的工作方式進行了大量改進。 以及大量使用它的人,比如帶有 ACF 的 InnerBlocks 的想法。 6. 因此,它確保那些傾向於使用 ACF 塊的塊編輯器的 ACF 用戶,可以通過全站點編輯器和 WordPress 開發(Gutenberg)獲得最佳體驗,因為它被稱為插件,並且塊編輯器具有變化很快,而且一直在變化。 所以我們必須跟上這一點。 我們一直在內部討論它,而且在博客文章中,6.0 幾乎是 ACF 塊的第二版,我們為開發人員和人們提供了一種註冊 ACF 塊的新方法,因此他們現在可以使用塊點 JSON註冊他們的 ACF 塊的格式,這更符合 WordPress 的方式,人們如何在本機上使用 WordPress 註冊他們的自定義塊。

但這意味著,通過這樣做,我們可以獲得 WordPress 為該塊點 JSON 格式提供的所有好處。 因此,為塊添加的任何新功能都會自動傳遞給 ACF 塊,因為我們使用註冊塊的相同方式。 肯定比我想像的要多得多,讓 ACF 塊和 ACF 與完整站點編輯和塊編輯器保持一致,但是,是的,知道我們的用戶如何使用它以及喜歡 ACF 塊,這是值得的,但是是的, 完整的網站編輯肯定是相當重要的。

DP:是的,絕對的。 有趣的是,ACF 6.0 基本上是 ACF 塊的第二版。 有很多我們還沒來得及談論。 有很多變化。 在節目結束時,我們將讓人們知道他們如何更多地了解您以及您正在從事的工作並提出任何問題。 我很快就想知道,在這個新版本的高級自定義字段中,您最興奮的一個功能是什麼?

IP:我個人認為這可能是Repeater Pagination 功能,因為它是其中之一,如果你被它擊中,那麼它會真正提高你的生活質量。 但它也是我們自己遇到的這些事情之一。 我們一直在deliciousbrains.com 網站上使用Repeater Field,你知道,這是我過去大量使用的東西。 但是我們遇到了同樣的問題,我們不得不解決它。 我們已經看到了性能問題。 因此,這種分頁設置非常好,可以對在我們網站上工作的開發人員說,“你想去看看 ACF 6.0 構建,看看這是否有所改進嗎?” 這就像“是的,哇,這解決了我們遇到的很多問題。” 所以,是的,這是個人的。

DP:嗯,就像我說的,有很多我們沒有談過的。 Advanced Custom Field 6.0 中加入了許多新事物。 伊恩,我感謝你今天的時間。 如果人們想了解更多關於 Iain 正在做什麼的信息,他們可以在 Twitter @polevaultweb 上訪問他,或者您可以訪問 advancedcustomfields.com 以了解有關高級自定義字段的更多信息。

感謝您收聽 WMR 上的 Press This WordPress 社區播客。 您可以在 Twitter @thetorquemag 上關注我的冒險經歷,或者您可以訪問 torquemag.io,我們每天都會提供類似的教程、視頻和採訪。 因此,請查看 torquemag.io 或在 Twitter 上關注我們。 您可以在 Red Circle、iTunes、Spotify 上訂閱 Press This,也可以直接在 wmr.fm 下載。 我是您的主持人 Doctor Popular,我通過我在 WP Engine 的角色支持 WordPress 社區,我喜歡每週在 Press This 上關注社區成員。 謝謝收聽。