
內容簡介
這個外掛會在 wp-admin 的選單項目編輯介面上新增自訂欄位,並僅支援 1 層選單配置。
下面是此外掛所新增的自訂欄位清單:
自訂文字
選擇圖片並附帶連結和標題
附帶標題的短代碼
帶有 TinyMCE 編輯器的自訂 HTML
注意事項:
此外掛適用於預設佈景主題。若要在自訂佈景主題中使用,請在主題/子主題中新增必要的樣式,以改寫外掛的 CSS。
此外掛的自訂欄位應當用於子選單,以便維護良好的結構和響應式介面。
目前,此外掛不支援 FSE 主題。
使用方式
安裝並啟用此外掛後,進入 WordPress 管理後台,到外觀 -> 選單。如果尚未建立選單,請建立選單並按需新增選單項目。
展開任何選單項目時,您將會看到新增的自訂欄位(請參閱下面的螢幕截圖)。您將看到自訂欄位和選擇功能的選項。
在自訂文字欄位旁,您可以選擇使用圖片、短代碼或自訂 HTML 功能來新增選單項目的特定功能。
您可以點擊要使用的選項,該選項的輸入欄位將會顯示。
使用自訂文字欄位
您可以在此輸入任何文字,該文字將會顯示在此選單項目中。
此欄位可由所有選單項目使用,並與任何其他功能一起使用。
使用圖片
點擊「選擇圖片」按鈕,WordPress 的媒體庫視窗會彈出。您可以從已上傳的圖片中選擇 1 張,或上傳新的圖片並選擇該圖片。
選擇並關閉媒體庫視窗後,所選擇的圖片將會顯示在「選擇圖片」按鈕下方。
若要刪除已經選擇的圖片,請點擊「選擇圖片」按鈕,然後取消勾選已經選擇的圖片。您可以通過選擇其他圖片來更改所選擇的圖片。
您可以在「圖片連結」文字欄位中輸入 URL,該圖片的點擊將導向該 URL。
您可以在「圖片標題」欄位中輸入標題文字,該標題將顯示在前端的圖片下方。
使用短代碼
您可以在「短代碼」欄位中新增一段短代碼。我們添加了一些樣式,以處理 WordPress 的預設 和 短代碼。
您可以在「短代碼標題」欄位中輸入標題文字,該標題將顯示在前端的短代碼下方。
使用自訂 HTML
使用 TinyMCE 編輯器在此處新增自訂 HTML。
您可以在「視覺化」標籤中輸入文字,並使用工具列中提供的工具格式化文本。
您可以切換到「文本」標籤,以查看/更改您輸入的 HTML 代碼。
鉤子(Hooks)
wp_menu_custom_fields_image_html Filter
允許更改為「圖片」功能生成的 HTML。
有 3 個參數。 $html(已生成的 HTML)、$data(自訂欄位資料)、$item_id(選單項目 ID)。
範例:
[selected-feature] => image
[image] => Array
(
[media-id] => 11
[media-type] => image
[media-link] => https://google.com/
[media-caption] => This is image caption
[media-url] => http://example.com/wp-content/uploads/2020/03/92d43b978cbcdc7b33e3596d131d5256.jpg
)
外掛標籤
開發者團隊
原文外掛簡介
This plugin adds custom fields on the menu item’s edit interface of wp-admin and supports only 1-level menu configuration.
Below is the list of custom fields this plugin adds.
Custom text
Image selection with link and caption
Shortcode with caption
Custom HTML with TinyMCE editor
Notes:
This plugin works with default themes. In order to use it with custom themes, please add the necessary styling in your theme/child theme to override the plugin’s CSS.
The custom fields from this plugin should be used in the submenu for well-structured and responsive UI.
Currently, this plugin is not supported with FSE themes.
Usage
After installing and activating this plugin, goto Appearance -> Menus of your WordPress admin. Create a menu if you haven’t already and add menu items according to your need.
When you expand any menu item, you’ll see the custom fields added here (see screenshots below). You can see Custom Field and Select Feature options.
Along with Custom Text field, you can choose to use either Image, Shortcode or Custom HTML feature for a particular menu item.
You can click on the option you want to use and the input fields of that option will be visible.
Using Custom Text field
You can enter any text here and it’ll be displayed with this menu item.
This field can be used by all menu items along with any other feature.
Using Image
By clicking on Select Image button, WordPress’ media gallery window will be opened up. You can choose 1 image from already uploaded images or you can upload a new one and select that.
The selected image will be shown below Select Image button after you select and close the media gallery window.
To remove already selected image, click on Select Image button and deselect the already selected image. You can change the selected image by selecting any other image.
You can enter a URL in Image Link text field. On front-end, clicking on the image will lead to this URL.
You can enter a caption text in Image Caption field and it’ll be displayed below the image on the front-end.
Using Shortcode
You can add a shortcode in Shortcode field. We’ve added some stylings to handle WordPress’ default and shortcode.
You can enter a caption text in Shortcode Caption field and it’ll be displayed below the shortcode on the front-end.
Using Custom HTML
TinyMCE editor is used to add custom HTML here.
From the Visual tab, you can enter text and format it using tools given in toolbar.
You can switch to Text tab to see/change HTML code of the text you entered.
Hooks
wp_menu_custom_fields_image_html Filter
Allows to change HTML generated for image feature.
There are 3 parameters. $html (Generated HTML), $data (Custom fields data), $item_id (Menu item ID).
Example:
[selected-feature] => image
[image] => Array
(
[media-id] => 11
[media-type] => image
[media-link] => https://google.com/
[media-caption] => This is image caption
[media-url] => http://example.com/wp-content/uploads/2020/03/92d43b978cbcdc7b33e3596d131d5256.jpg
)
wp_menu_custom_fields_shortcode_html Filter
Allows to change HTML generated for shortcode feature.
Parameters are same as wp_menu_custom_fields_image_html.
Example:
[selected-feature] => shortcode
[shortcode] => Array
(
[shortcode] =>
[shortcode-caption] => This is a shortcode caption
)
wp_menu_custom_fields_custom_markup_html Filter
Allows to change HTML generated for custom HTML feature.
Parameters are same as wp_menu_custom_fields_image_html.
Example:
[selected-feature] => html
[html] => Array
(
[custom-html] => This is custom HTML
)
wp_menu_custom_fields_custom_text_html Filter
Allows to change HTML generated for custom text field.
Parameters are same as wp_menu_custom_fields_image_html.
Example:
[custom-text] => This is a custom text
wp_menu_custom_fields_fields_html Filter
Allows to change the final custom field’s HTML generated for a particular menu item.
Parameters are same as wp_menu_custom_fields_image_html.
Example:
Array
(
[custom-text] => This is a custom text
[selected-feature] => image
[image] => Array
(
[media-id] => 11
[media-type] => image
[media-link] => https://google.com
[media-caption] => This is image caption
[media-url] => http://example.com/wp-content/uploads/2020/03/92d43b978cbcdc7b33e3596d131d5256.jpg
)
)
Styling mega menu
A theme developer can add stylings for the custom fields added by this plugin by referring to the below sample HTML code.
Image & Custom text
Sample HTML code
If Image Link is entered, then img tag will be wrapped inside a.
Custom text will be displayed below the feature’s HTML.
Shortcode
Custom HTML
Important Links
GitHub – Please mention your wordpress.org username when sending pull requests.
License
Same GPL that WordPress uses!
See room for improvement?
Great! There are several ways you can get involved to help make this plugin better:
Report Bugs: If you find a bug, error or other problem, please report it! You can do this by creating a new topic in the issue tracker.
Suggest New Features: Have an awesome idea? Please share it! Simply create a new topic in the issure tracker to express your thoughts on why the feature should be included and get a discussion going around your idea.

