The following tutorial column will introduce how to add Meta Box to WordPress , I hope it will be helpful to friends in need! The way to add Meta Box in WordPress requires the use of add meta boxes Action. This Action allows us to register Meta Box for any article type. In this Action, we need to use the add_meta_box() method to add Meta Box. Related Information. The code is as follows
function add_rating_meta_box($post_type, $post) { // 需要哪些post type添加推薦指數(shù) Meta Box $types = array( 'post', 'page' ); foreach ( $types as $type ) { add_meta_box( 'rating_meta_box_id', // Meta Box在前臺頁面中的id,可通過JS獲取到該Meta Box '推薦指數(shù)', // 顯示的標題 'render_rating_meta_box', // 回調(diào)方法,用于輸出Meta Box的HTML代碼 $type, // 在哪個post type頁面添加 'side', // 在哪顯示該Meta Box 'default' // 優(yōu)先級 ); } } add_action( 'add_meta_boxes', 'add_rating_meta_box' );
Here we define the custom field that both Post and Page need to recommend the index in the $types array, and then tell WordPress to use the "render_rating_meta_box" method to render the Meta Box, position In the sidebar. Because there is not much content, the sidebar is sufficient. If there is more content, you can change "side" to "advanced" so that the Meta Box will be rendered in the main content area.
Next let’s see how it is rendered
function render_rating_meta_box( $post ) { // 添加 nonce 項用于后續(xù)的安全檢查 wp_nonce_field( 'rating_nonce_action', 'rating_nonce_name' ); // 獲取推薦指數(shù)的值 $rating_key = 'rating'; $rating_value = get_post_meta( $post->ID, $rating_key, true ); $rating_value = (int)$rating_value; $html = '<select name="rating_field">'; for ($i = 0; $i <= 10; $i++) { $selected = ''; if ($i == $rating_value) { $selected = 'selected="selected"'; } $html .= sprintf('<option value="%s" %s>%s星</option>', $i, $selected, $i/2); } $html .= '</select>'; echo $html; }
Here we first use wp_nonce_field() to add a nonce field for security checking, then read the value of the recommended index and loop 1 ~10 to output optional values. If it is the same as the recommended index, it will be selected by default. Through the drop-down box, the problem of inconvenient input and inability to verify can be solved. Remember the value of the name attribute of the drop-down box here (rating_field), which will be used to obtain the selected value in the following code.
Finally, when the article is saved, the recommendation index needs to be saved as well
function save_rating_post_data( $post_id ) { // 檢查nonce是否設置 if (!isset($_POST['rating_nonce_name'])) { return $post_id; } $nonce = $_POST['rating_nonce_name']; // 驗證nonce是否正確 if (!wp_verify_nonce( $nonce, 'rating_nonce_action')) { return $post_id; } // 如果是系統(tǒng)自動保存,則不操作 if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) { return $post_id; } // 檢查用戶權(quán)限 if ($_POST['post_type'] == 'post') { if (!current_user_can('edit_post', $post_id )) { return $post_id; } } $rating_key = 'rating'; // 獲取數(shù)據(jù) $rating_value = $_POST['rating_field']; // 更新數(shù)據(jù) update_post_meta( $post_id, $rating_key, $rating_value ); } add_action( 'save_post', 'save_rating_post_data' );
A series of checks are done here, including the nonce check just set, user permissions check, and automatic exclusion Saved condition. Then use the update_post_meta() method to store the data in the database.
At this point, we have completed the modification of the custom field for the recommendation index, and we can easily select the recommendation index of the article.
etc. . .
Careful friends may have discovered that after applying the above three pieces of code, the function can indeed be realized. However, under the default custom column area, you can see that there is a column called "rating", which is the recommendation index we just selected. If you don’t want it to be displayed under the custom column, you can change $rating_key in the above code to start with an underscore, so that WordPress will not display it. Note that there are two places to change.
// 原來的代碼 $rating_key = 'rating'; // 改后的代碼 $rating_key = '_rating';
The above is the detailed content of How to add Meta Box to WordPress. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

There are four ways to adjust the WordPress article list: use theme options, use plugins (such as Post Types Order, WP Post List, Boxy Stuff), use code (add settings in the functions.php file), or modify the WordPress database directly.

Web development design is a promising career field. However, this industry also faces many challenges. As more businesses and brands turn to the online marketplace, web developers have the opportunity to demonstrate their skills and succeed in their careers. However, as demand for web development continues to grow, the number of developers is also increasing, resulting in increasingly fierce competition. But it’s exciting that if you have the talent and will, you can always find new ways to create unique designs and ideas. As a web developer, you may need to keep looking for new tools and resources. These new tools and resources not only make your job more convenient, but also improve the quality of your work, thus helping you win more business and customers. The trends of web development are constantly changing.

Importing WordPress source code requires the following steps: Create a sub-theme for theme modification. Import the source code and overwrite the files in the sub-topic. Activate the sub-theme to make it effective. Test the changes to make sure everything works.

To build a website using WordPress hosting, you need to: select a reliable hosting provider. Buy a domain name. Set up a WordPress hosting account. Select a topic. Add pages and articles. Install the plug-in. Customize your website. Publish your website.

Do you want to connect your website to Yandex Webmaster Tools? Webmaster tools such as Google Search Console, Bing and Yandex can help you optimize your website, monitor traffic, manage robots.txt, check for website errors, and more. In this article, we will share how to add your WordPress website to the Yandex Webmaster Tool to monitor your search engine traffic. What is Yandex? Yandex is a popular search engine based in Russia, similar to Google and Bing. You can excel in Yandex

Do you want to know how to use cookies on your WordPress website? Cookies are useful tools for storing temporary information in users’ browsers. You can use this information to enhance the user experience through personalization and behavioral targeting. In this ultimate guide, we will show you how to set, get, and delete WordPresscookies like a professional. Note: This is an advanced tutorial. It requires you to be proficient in HTML, CSS, WordPress websites and PHP. What are cookies? Cookies are created and stored when users visit websites.

To create an account on WordPress, simply visit its website, select the registration option, fill in the registration form, and verify your email address. Other ways to register include using a Google account or Apple ID. The benefits of signing up include creating a website, gaining features, joining the community, and gaining support.

Do you need to fix HTTP image upload errors in WordPress? This error can be particularly frustrating when you create content in WordPress. This usually happens when you upload images or other files to your CMS using the built-in WordPress media library. In this article, we will show you how to easily fix HTTP image upload errors in WordPress. What is the reason for HTTP errors during WordPress media uploading? When you try to upload files to Wo using WordPress media uploader
