鑰匙要點
-
可以自定義由Tinymce編輯器控件提供動力的WordPress Visual Editor,以添加唯一功能,例如創(chuàng)建和注冊自定義Tinymce插件,該插件將選定的文本包裝在CSS類中。
- >要添加自定義功能,您需要在WordPress網(wǎng)站中創(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。
- 內(nèi)容編輯器是WordPress的關鍵部分。它允許用戶在A
- visual wysiwyg中創(chuàng)建和管理他們的內(nèi)容,畫廊和視頻(您看到的是您得到的)。
>它還帶有atext>視圖,該視圖允許用戶在其內(nèi)容中插入或修改HTML。
WordPress Visual Editor由Tinymce編輯器控件提供動力,該編輯器提供了Wysiwyg視圖以及您看到的格式按鈕:感謝Tinymce API和WordPress的濾鏡掛鉤,我們可以將自己的功能添加到WordPress Visual Editor中。具體來說,我們將研究如何創(chuàng)建和注冊一個自定義Tinymce插件,該插件將選定的文本包裝在CSS類中。
創(chuàng)建Tinymce插件在您的WordPress網(wǎng)站上,創(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中注冊一個按鈕。同樣,讓我們??在我們的課內(nèi)添加此過濾器的函數(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文件?,F(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的詳細內(nèi)容。更多信息請關注PHP中文網(wǎng)其他相關文章!

熱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
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級代碼編輯軟件(SublimeText3)

WordPress導致服務器CPU使用率飆升的主要原因包括插件問題、數(shù)據(jù)庫查詢效率低、主題代碼質量差或流量激增。1.首先通過top、htop或控制面板工具確認是否為WordPress引起的高負載;2.進入故障排查模式逐步啟用插件排查性能瓶頸,使用QueryMonitor分析插件執(zhí)行情況并刪除或替換低效插件;3.安裝緩存插件、清理冗余數(shù)據(jù)、分析慢查詢?nèi)罩疽詢?yōu)化數(shù)據(jù)庫;4.檢查主題是否存在過度加載內(nèi)容、復雜查詢或缺乏緩存機制等問題,建議用標準主題測試對比并優(yōu)化代碼邏輯。按照上述步驟逐一排查可定位并解

MinifyingJavaScript文件可通過刪除空白、注釋和無用代碼來提升WordPress網(wǎng)站加載速度。1.使用支持合并壓縮的緩存插件如W3TotalCache,在“Minify”選項中啟用并選擇壓縮模式;2.使用專用壓縮插件如FastVelocityMinify,提供更精細控制;3.手動壓縮JS文件并通過FTP上傳,適用于熟悉開發(fā)工具的用戶。注意部分主題或插件腳本可能與壓縮功能沖突,啟用后需徹底測試網(wǎng)站功能。

優(yōu)化WordPress站點不依賴插件的方法包括:1.使用輕量級主題,如Astra或GeneratePress,避免功能堆砌的主題;2.手動壓縮和合并CSS、JS文件,減少HTTP請求;3.上傳前優(yōu)化圖片,使用WebP格式并控制文件大??;4.配置.htaccess啟用瀏覽器緩存,并接入CDN提升靜態(tài)資源加載速度;5.限制文章修訂版本并定期清理數(shù)據(jù)庫冗余數(shù)據(jù)。

TransientsAPI是WordPress中用于臨時存儲可自動過期數(shù)據(jù)的內(nèi)置工具,其核心函數(shù)為set_transient、get_transient和delete_transient。相比OptionsAPI,transients支持設置生存時間(TTL),適合緩存API請求結果、復雜計算數(shù)據(jù)等場景。使用時需注意key命名唯一性與命名空間、緩存“懶刪除”機制及對象緩存環(huán)境下可能不持久的問題。典型應用場景包括減少外部請求頻率、控制代碼執(zhí)行節(jié)奏和提升頁面加載性能。

防止評論垃圾信息最有效的方式是通過程序化手段自動識別并攔截。1.使用驗證碼機制(如GooglereCAPTCHA或hCaptcha)可有效區(qū)分人類與機器人,尤其適合公眾網(wǎng)站;2.設置隱藏字段(Honeypot技術),利用機器人自動填寫特性識別垃圾評論,不影響用戶體驗;3.檢查評論內(nèi)容關鍵詞黑名單,通過敏感詞匹配過濾垃圾信息,需注意避免誤判;4.判斷評論頻率與來源IP,限制單位時間內(nèi)的提交次數(shù)并建立黑名單;5.使用第三方反垃圾服務(如Akismet、Cloudflare)提升識別準確性??筛鶕?jù)網(wǎng)站

在開發(fā)Gutenberg塊時,正確enqueue資產(chǎn)的方法包括:1.使用register_block_type指定editor_script、editor_style和style的路徑;2.在functions.php或插件中通過wp_register_script和wp_register_style注冊資源,并設置正確的依賴和版本;3.配置構建工具輸出合適的模塊格式,并確保路徑一致;4.通過add_theme_support或enqueue_block_assets控制前端樣式的加載邏輯,確保

PluginCheck是一個幫助WordPress用戶快速檢查插件兼容性和性能的工具,主要用來識別當前安裝的插件是否存在與最新版本W(wǎng)ordPress不兼容、存在安全漏洞等問題。1.如何開始檢查?安裝激活后,在后臺點擊“RunaScan”按鈕即可自動掃描所有插件;2.報告包含插件名稱、檢測類型、問題描述及解決方案建議,便于優(yōu)先處理嚴重問題;3.建議在更新WordPress前、網(wǎng)站異常時或定期運行檢查,提前發(fā)現(xiàn)隱患,避免未來出現(xiàn)重大問題。

要添加自定義用戶字段需根據(jù)平臺選擇擴展方式并注意數(shù)據(jù)驗證與權限控制。常見做法包括:1.利用數(shù)據(jù)庫額外表或鍵值對結構存儲信息;2.在前端加入輸入框并與后端集成;3.對敏感數(shù)據(jù)進行格式校驗和訪問權限限制;4.更新接口及模板以支持新字段展示與編輯,同時兼顧移動端適配和用戶體驗。
