wordpress自定义文章(页面)添加自定义字段面板 页面(page)增加新功能。
下面介绍的给页面(page)增加新功能。
如果你下给文章增加这样功能,把页面(page)换成文章(post)。
wordpress后台效果图
页面增加新功能,
functions.php上添加这些内容。
add_action( 'add_meta_boxes', 'page_director' );
function page_director() {
add_meta_box(
'page_director',
'下载地址一',
'page_director_meta_box',
'page',
'side',
'low'
);
}
function page_director_meta_box($post) {
// 创建临时隐藏表单,为了安全
wp_nonce_field( 'page_director_meta_box', 'page_director_meta_box_nonce' );
// 获取之前存储的值
$value = get_post_meta( $post->ID, '_page_director', true );
?>
<label for="page_director"></label>
<input type="text" id="page_director" name="page_director" value="<?php echo esc_attr( $value ); ?>" placeholder="下载地址一">
<?php
}
add_action( 'save_post', 'page_director_save_meta_box' );
function page_director_save_meta_box($post_id){
if ( ! isset( $_POST['page_director_meta_box_nonce'] ) ) {
return;
}
if ( ! wp_verify_nonce( $_POST['page_director_meta_box_nonce'], 'page_director_meta_box' ) ) {
return;
}
if ( ! current_user_can( 'edit_post', $post_id ) ) {
return;
}
if ( ! isset( $_POST['page_director'] ) ) {
return;
}
$page_director = sanitize_text_field( $_POST['page_director'] );
update_post_meta( $post_id, '_page_director', $page_director );
}
add_action("manage_posts_custom_column", "page_custom_columns");
add_filter("manage_edit-page_columns", "page_edit_columns");
function page_custom_columns($column){
global $post;
switch ($column) {
case "page_director":
echo get_post_meta( $post->ID, '_page_director', true );
break;
}
}
function page_edit_columns($columns){
$columns['page_director'] = '下载地址一';
return $columns;
}
add_action( 'add_meta_boxes', 'page_a_director' );
function page_a_director() {
add_meta_box(
'page_a_director',
'下载地址三',
'page_a_director_meta_box',
'page',
'side',
'low'
);
}
function page_a_director_meta_box($post) {
// 创建临时隐藏表单,为了安全
wp_nonce_field( 'page_a_director_meta_box', 'page_a_director_meta_box_nonce' );
// 获取之前存储的值
$value = get_post_meta( $post->ID, '_page_a_director', true );
?>
<label for="page_a_director"></label>
<input type="text" id="page_a_director" name="page_a_director" value="<?php echo esc_attr( $value ); ?>" placeholder="下载地址三">
<?php
}
add_action( 'save_post', 'page_a_director_save_meta_box' );
function page_a_director_save_meta_box($post_id){
if ( ! isset( $_POST['page_a_director_meta_box_nonce'] ) ) {
return;
}
if ( ! wp_verify_nonce( $_POST['page_a_director_meta_box_nonce'], 'page_a_director_meta_box' ) ) {
return;
}
if ( ! current_user_can( 'edit_post', $post_id ) ) {
return;
}
if ( ! isset( $_POST['page_a_director'] ) ) {
return;
}
$page_a_director = sanitize_text_field( $_POST['page_a_director'] );
update_post_meta( $post_id, '_page_a_director', $page_a_director );
}
add_action("manage_posts_custom_column", "page_a_custom_columns");
add_filter("manage_edit-page_a_columns", "page_a_edit_columns");
function page_a_custom_columns($column){
global $post;
switch ($column) {
case "page_a_director":
echo get_post_meta( $post->ID, '_page_a_director', true );
break;
}
}
function page_a_edit_columns($columns){
$columns['page_a_director'] = '下载地址三';
return $columns;
}
前端调用
下载地址一调用:
<?php
if(get_post_meta($post->ID,'_page_director',true)){
echo get_post_meta($post->ID,'_page_director',true);
}
?>
下载地址三调用:
<?php
if(get_post_meta($post->ID,'_page_a_director',true)){
echo get_post_meta($post->ID,'_page_a_director',true);
}
?>