鑰匙要點
-
可以自定義由Tinymce編輯器控件提供動力的WordPress Visual Editor,以添加唯一功能,例如創(chuàng)建和註冊自定義Tinymce插件,該插件將選定的文本包裝在CSS類中。
- >要添加自定義功能,您需要在WordPress網站中創(chuàng)建一個Tinymce插件,註冊Tinymce操作和過濾器,然後使用Tinymce過濾器(MCE_EXTERNETHREL_PLUGINS和MCE_BUTTONS)加載外部Tinymce插件,並將/刪除/添加/刪除/刪除tinymce工具基鍵工具鍵工具鍵工具barar 。 還可以通過創(chuàng)建一個JavaScript插件來添加
- 自定義功能,該插件告訴Tinymce如何輸出按鈕以及單擊時該操作。這涉及使用Tinymce插件管理器類將插件添加到Tinymce,使用AddButton函數(shù)註冊按鈕,並使用AddCommand函數(shù)註冊命令。 >可以在不使用插件編碼的情況下自定義WordPress Visual Editor。為此目的的一些流行插件包括Tinymce Advanced,WP編輯和Ultimate Tinymce。
- 內容編輯器是WordPress的關鍵部分。它允許用戶在A
- visual wysiwyg中創(chuàng)建和管理他們的內容,畫廊和視頻(您看到的是您得到的)。
>它還帶有atext>視圖,該視圖允許用戶在其內容中插入或修改HTML。
WordPress Visual Editor由Tinymce編輯器控件提供動力,該編輯器提供了Wysiwyg視圖以及您看到的格式按鈕:感謝Tinymce API和WordPress的濾鏡掛鉤,我們可以將自己的功能添加到WordPress Visual Editor中。具體來說,我們將研究如何創(chuàng)建和註冊一個自定義Tinymce插件,該插件將選定的文本包裝在CSS類中。
創(chuàng)建Tinymce插件在您的WordPress網站上,創(chuàng)建WP-CONTENT/插件/Tinymce-Custom-Class文件夾。

>我們將在這裡存儲插件的文件,因此下一個使用以下代碼創(chuàng)建一個名為tinymce-custom-class.php的文件:
>這為WordPress提供了一些有關我們的插件的信息,並設置了我們的構造,我們將在其中註冊我們的Tinymce操作和過濾器。
WordPress Tinymce濾波器
Tinymce提供了兩個關鍵過濾器,用於在Visual Editor工具欄上註冊元素:
<span>/** </span><span> * Plugin Name: TinyMCE Custom Class </span><span> * Plugin URI: https://www.sitepoint.com </span><span> * Version: 1.0 </span><span> * Author: Tim Carr </span><span> * Author URI: http://www.n7studios.co.uk </span><span> * Description: TinyMCE Plugin to wrap selected text in a custom CSS class, within the Visual Editor </span><span> * License: GPL2 </span><span> */ </span> <span>class TinyMCE_Custom_Class { </span> <span>/** </span><span> * Constructor. Called when the plugin is initialised. </span><span> */ </span> <span>function __construct() { </span> <span>} </span> <span>} </span> <span>$tinymce_custom_class = new TinyMCE_Custom_Class;</span>>
mce_external_plugins:用於加載外部Tinymce插件(https://codex.wordpress.org/plugin_api/filter/filter_reference/mce_external_plugins)
>在調用這些過濾器之前,我們希望檢查我們在WordPress管理屏幕中。將以下代碼添加到__ -construct:
<span>/** </span><span> * Plugin Name: TinyMCE Custom Class </span><span> * Plugin URI: https://www.sitepoint.com </span><span> * Version: 1.0 </span><span> * Author: Tim Carr </span><span> * Author URI: http://www.n7studios.co.uk </span><span> * Description: TinyMCE Plugin to wrap selected text in a custom CSS class, within the Visual Editor </span><span> * License: GPL2 </span><span> */ </span> <span>class TinyMCE_Custom_Class { </span> <span>/** </span><span> * Constructor. Called when the plugin is initialised. </span><span> */ </span> <span>function __construct() { </span> <span>} </span> <span>} </span> <span>$tinymce_custom_class = new TinyMCE_Custom_Class;</span>
接下來,添加setup_tinymce_plugin函數(shù)以執(zhí)行一些進一步的檢查:
<span>if ( is_admin() ) { </span> <span>add_action( 'init', array( &$this, 'setup_tinymce_plugin' ) ); </span><span>}</span>
這檢查了WordPress用戶是否可以編輯帖子或頁面。如果他們不能的話,為該用戶註冊我們的Tinymce插件是沒有意義的,因為他們永遠不會看到視覺編輯器。 然後,我們檢查用戶是否正在使用Visual Editor,因為某些WordPress用戶通過
>用戶>您的個人資料關閉了此功能。同樣,如果用戶不使用視覺編輯器,我們將返回(退出)函數(shù),因為我們不需要做任何其他操作。 > 如果上述檢查通過,則註冊了兩個Tinymce WordPress濾波器-MCE_EXTERNEN_PLUGINS和MCE_BUTTONS。
>第一個過濾器 - MCE_EXTERNAL_PLUGINS - 允許我們註冊將與Visual Editor進行交互的Tinymce JavaScript插件文件。讓我們在同類中添加此過濾器的函數(shù)調用:
在這裡,我們在$ plugin_array中註冊一個JavaScript文件,其中包含所有Tinymce JavaScript插件。
<span>/** </span><span>* Check if the current user can edit Posts or Pages, and is using the Visual Editor </span><span>* If so, add some filters so we can register our plugin </span><span>*/ </span><span>function setup_tinymce_plugin() { </span> <span>// Check if the logged in WordPress User can edit Posts or Pages </span> <span>// If not, don't register our TinyMCE plugin </span> <span>if ( ! current_user_can( 'edit_posts' ) && ! current_user_can( 'edit_pages' ) ) { </span> <span>return; </span> <span>} </span> <span>// Check if the logged in WordPress User has the Visual Editor enabled </span> <span>// If not, don't register our TinyMCE plugin </span> <span>if ( get_user_option( 'rich_editing' ) !== 'true' ) { </span> <span>return; </span> <span>} </span> <span>// Setup some filters </span> <span>add_filter( 'mce_external_plugins', array( &$this, 'add_tinymce_plugin' ) ); </span> <span>add_filter( 'mce_buttons', array( &$this, 'add_tinymce_toolbar_button' ) ); </span> <span>}</span>
第二個過濾器 - MCE_BUTTONS - 告訴Tinymce我們想在Visual Editor中註冊一個按鈕。同樣,讓我們??在我們的課內添加此過濾器的函數(shù)調用:
此註冊我們的tinymce按鈕的編程名稱(custom_class)。
<span>/** </span><span> * Adds a TinyMCE plugin compatible JS file to the TinyMCE / Visual Editor instance </span><span> * </span><span> * <span>@param <span>array</span> $plugin_array Array of registered TinyMCE Plugins </span></span><span> * <span>@return <span>array</span> Modified array of registered TinyMCE Plugins </span></span><span> */ </span><span>function add_tinymce_plugin( $plugin_array ) { </span> <span>$plugin_array['custom_class'] = plugin_dir_url( __FILE__ ) . 'tinymce-custom-class.js'; </span> <span>return $plugin_array; </span> <span>}</span>
創(chuàng)建JavaScript插件
>我們調用MCE_EXTERNAL_PLUGINS時,我們引用了JavaScript文件。現(xiàn)在,我們需要創(chuàng)建該文件,並在其中添加一些JavaScript代碼。這將告訴Tinymce如何輸出按鈕,以及單擊時該怎麼辦。
>>在插件文件夾中創(chuàng)建一個新文件,稱為tinymce-custom-class.js,插入以下代碼:
>此JavaScript函數(shù)執(zhí)行了一些操作:
<span>/** </span><span> * Adds a button to the TinyMCE / Visual Editor which the user can click </span><span> * to insert a custom CSS class. </span><span> * </span><span> * <span>@param <span>array</span> $buttons Array of registered TinyMCE Buttons </span></span><span> * <span>@return <span>array</span> Modified array of registered TinyMCE Buttons </span></span><span> */ </span><span>function add_tinymce_toolbar_button( $buttons ) { </span> <span>array_push( $buttons, 'custom_class' ); </span> <span>return $buttons; </span> <span>}</span>
>它調用Tinymce插件管理器類,我們可以用來執(zhí)行許多與Tinymce插件相關的操作。具體來說,我們使用添加功能將插件添加到Tinymce。 在添加例程中,我們可以通過編輯器實例訪問視覺編輯器。我們使用AddButton函數(shù)註冊我們的按鈕,該函數(shù)由標題,命令和圖標映像。
- >
- >最後,我們使用AddCommand函數(shù)註冊一個命令,該函數(shù)顯示了一個警報,告訴我們何時單擊我們的按鈕。
- >我們還需要在我們的插件文件夾中包含iCON.png映像 - 這是將用於按鈕的圖標圖像: >
- 保存代碼,並在WordPress管理>插件中激活您的插件。
接下來,創(chuàng)建或編輯頁面或帖子,您希望使用圖標看到您的按鈕:

單擊按鈕,您將看到
>按鈕單擊!警報:

定義運行
的命令>讓我們用提示替換警報,向用戶詢問他們想在視覺編輯器中包裹所選文本的CSS類名稱:
><span>/** </span><span> * Plugin Name: TinyMCE Custom Class </span><span> * Plugin URI: https://www.sitepoint.com </span><span> * Version: 1.0 </span><span> * Author: Tim Carr </span><span> * Author URI: http://www.n7studios.co.uk </span><span> * Description: TinyMCE Plugin to wrap selected text in a custom CSS class, within the Visual Editor </span><span> * License: GPL2 </span><span> */ </span> <span>class TinyMCE_Custom_Class { </span> <span>/** </span><span> * Constructor. Called when the plugin is initialised. </span><span> */ </span> <span>function __construct() { </span> <span>} </span> <span>} </span> <span>$tinymce_custom_class = new TinyMCE_Custom_Class;</span>
此命令執(zhí)行一些理智檢查,以確保用戶選擇了一些文本,輸入了CSS類名稱並且沒有取消該過程。
如果一切正常,請切換到“文本”視圖,您會看到所選的文本現(xiàn)在包裹在跨度標籤中:
結論

>我們創(chuàng)建了一個WordPress插件,以在Tinymce Visual Editor中添加一個按鈕。在此過程中,我們探索了WordPress與Tinymce集成的過濾器,以及在單擊時添加按鈕並執(zhí)行操作所需的JavaScript代碼。
>。>要下載完整的源代碼,請訪問github存儲庫或直接zip文件下載鏈接。
在下一篇文章中,我們將介紹一些更高級的步驟,以進一步自定義Tinymce插件。>在WordPress Visual Editor中添加自定義功能的常見問題(常見問題解答)
>如何在WordPress Visual Editor中添加自定義按鈕?此API允許您在工具欄中添加新按鈕並定義其功能。您可以在WordPress安裝插件目錄中創(chuàng)建一個新的插件文件,並使用“ MCE_BUTTONS”過濾器添加按鈕。然後,您可以使用'MCE_EXTERNAL_PLUGINS'過濾器加載插件的JavaScript文件,該文件將定義按鈕的功能。>我可以在不編碼的情況下自定義WordPress Visual Editor嗎?自定義WordPress Visual Editor而無需使用插件編碼。有幾個插件可讓您在工具欄上添加,刪除或重新排列按鈕,更改編輯器的外觀,並添加自定義樣式和格式。為此目的的一些流行插件包括Tinymce Advanced,WP編輯和Ultimate Tinymce。
>如何將自定義樣式添加到WordPress Visual Editor?
您可以在WordPress Visual中添加自定義樣式編輯器使用“ tiny_mce_before_init”過濾器。該過濾器允許您修改Tinymce設置數(shù)組,其中包含“ style_formats”選項。您可以將自定義樣式添加到此選項中,作為數(shù)組數(shù)組,每個數(shù)組都定義樣式。每種樣式都應包括“標題”,“塊”,“類”和“包裝器”屬性。 什麼是Tinymce,它與WordPress Visual Editor有何關係?
Tinymce是一種基於平臺獨立於Web的JavaScript HTML Wysiwyg編輯器控制。這是為WordPress Visual編輯器提供動力的基礎軟件。通過理解和使用Tinymce API,您可以在WordPress Visual Editor中添加自定義功能。
>如何在WordPress Visual Editor中添加自定義字體?
您可以添加自定義字體通過使用“ MCE_CSS”過濾器來到WordPress Visual Editor。該過濾器允許您將其他CSS文件添加到編輯器。您可以創(chuàng)建一個CSS文件,該文件導入您的自定義字體並定義使用它的類,然後使用“ MCE_CSS”過濾器將此文件添加到編輯器中。
>您可以禁用WordPress Visual通過轉到用戶>在WordPress管理區(qū)域中的個人資料並檢查“編寫“視覺編輯器”選項時禁用視覺編輯器。
我可以在WordPress Visual Editor中使用短代碼?您可以在WordPress Visual Editor中使用短代碼。只需在編輯器中輸入短代碼即可在顯示帖子時對其進行處理。
>>如何將表添加到WordPress Visual Editor?
您可以將表添加到WordPress通過使用工具欄上的“表”按鈕可視化編輯器。如果此按鈕不可見,則可能需要安裝諸如Tinymce Advanced之類的插件才能添加它。以上是將自定義功能添加到WordPress Visual Editor的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undress AI Tool
免費脫衣圖片

Undresser.AI Undress
人工智慧驅動的應用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6
視覺化網頁開發(fā)工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

使用Git管理WordPress項目時,應只將主題、自定義插件和配置文件納入版本控制;設置.gitignore文件以忽略上傳目錄、緩存和敏感配置;利用webhook或CI工具實現(xiàn)自動部署並註意數(shù)據(jù)庫處理;採用兩分支策略(main/develop)進行協(xié)作開發(fā)。這樣做可避免衝突、保障安全,並提升協(xié)作與部署效率。

使用WordPress測試環(huán)境是為了確保新功能、插件或主題在正式上線前的安全性和兼容性,避免影響真實網站。搭建測試環(huán)境的步驟包括:下載安裝本地服務器軟件(如LocalWP、XAMPP),創(chuàng)建站點、設置數(shù)據(jù)庫和管理員賬號,安裝主題和插件進行測試;複製正式網站到測試環(huán)境的方法是通過插件導出站點、導入測試環(huán)境並替換域名;使用時應注意不使用真實用戶數(shù)據(jù)、定期清理無用數(shù)據(jù)、備份測試狀態(tài)、適時重置環(huán)境,並統(tǒng)一團隊配置以減少差異問題。

創(chuàng)建Gutenberg塊的關鍵在於理解其基本結構並正確連接前後端資源。 1.準備開發(fā)環(huán)境:安裝本地WordPress、Node.js和@wordpress/scripts;2.使用PHP註冊塊並用JavaScript定義塊的編輯和顯示邏輯;3.通過npm構建JS文件以使更改生效;4.遇到問題時檢查路徑、圖標是否正確或使用實時監(jiān)聽構建避免重複手動編譯。按照這些步驟,可以逐步實現(xiàn)一個簡單的Gutenberg塊。

在WordPress中,當新增自定義文章類型或修改固定鏈接結構後,需手動刷新重寫規(guī)則,此時可通過代碼調用flush_rewrite_rules()函數(shù)實現(xiàn)。 1.可在主題或插件激活鉤子中添加該函數(shù)以自動刷新;2.僅在必要時執(zhí)行一次,如添加CPT、分類法或修改鏈接結構後;3.避免頻繁調用以免影響性能;4.多站點環(huán)境下需視情況為每個站點單獨刷新;5.某些託管環(huán)境可能限制規(guī)則保存。此外,訪問“設置>固定鏈接”頁麵點擊保存也可觸髮刷新,適合非自動化場景。

要實現(xiàn)響應式WordPress主題設計,首先要使用HTML5和移動優(yōu)先的Meta標籤,在header.php中添加viewport設置以確保移動端正確顯示,並用HTML5結構標籤組織佈局;其次,利用CSS媒體查詢實現(xiàn)不同屏幕寬度下的樣式適配,按移動優(yōu)先原則編寫樣式,常用斷點包括480px、768px和1024px;第三,彈性處理圖片和佈局,為圖片設置max-width:100%並使用Flexbox或Grid佈局替代固定寬度;最後,通過瀏覽器開發(fā)者工具和真實設備進行充分測試,優(yōu)化加載性能,確保響應

tosetupredirectsinwordpressingthe.htaccessfile,locateThEfileInyourSite'sRootDirectorectoryAndDrectRectrulesabovethe#beginWordPresssection.forbasic301redirects,USETHEETHEETERECTREFTATRECTATREDERTREFTATREDERTREFTATRECTRECTATRECTRECTATREDECT301/OLD-PAGEHTTPS:

TOINTEGRATETHIRD-PARTYAPISINTOWORDPRESS,關注臺詞:1.SelectAutableabepianDobtainCredentialslikeapikeYsoroAuthtoKensByEnterRegisteringThemSecure.2.ChooseBeteBetB????eteBetB????eteBetB????etebetInpliCityOorcustimplicityOrcustomPliCoseTompliCoseTomploomcoseusionfunctionfunctionfunctibunitiacuciencipuity forfunigation。

UsingsMtpForWordPresseMailSimProvesDeliverabilitialComparedComparedTothEdeDefaultPhpMail()函數(shù).1.smtpauthenticateswithyouremailserver.2.somemomehostsdisablesablephpmail()
