php 在帖子中添加元变量(自定义字段,ej template-slug)#wordpress
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 在帖子中添加元变量(自定义字段,ej template-slug)#wordpress相关的知识,希望对你有一定的参考价值。
<?php
/**
* Metabox for Template Slug field
*/
add_action( 'add_meta_boxes', 'ingamana_add_meta_box' );
function ingamana_add_meta_box()
{
$user = wp_get_current_user();
$userRole = $user->roles[0];
if ($userRole != 'administrator') return;
$screen = get_current_screen();
$postType = $screen->post_type;
if ($postType == 'page') {
add_meta_box(
'ingamana_add_meta_box',
__( 'Template Slug' ),
'ingamana_add_meta_box_cb',
null,
'side',
'low'
);
}
}
/**
* Callback function for our meta box.
*/
function ingamana_add_meta_box_cb( $post )
{
$values = get_post_custom( $post->ID );
$templateSlug = (isset($values['template-slug']))? $values['template-slug'][0] : '';
wp_nonce_field( 'my_meta_box_nonce', 'meta_box_nonce' );
?>
<label for="template-slug">Slug</label>
<input type="text" name="template-slug" id="template-slug" value="<?= $templateSlug ?>"/>
<?php
}
/**
* Save Metabox field
*/
add_action( 'save_post', 'ingamana_meta_box_save' );
function ingamana_meta_box_save($post_id)
{
$screen = get_current_screen();
$postType = $screen->post_type;
$user = wp_get_current_user();
$userRole = $user->roles[0];
if ($postType !== 'page') return;
if(defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return;
if( !isset($_POST['meta_box_nonce']) || !wp_verify_nonce($_POST['meta_box_nonce'], 'my_meta_box_nonce' )) return;
if( !current_user_can('edit_post') ) return;
if ($userRole != 'administrator') return;
$templateSlug = isset($_POST['template-slug'])? $_POST['template-slug'] : '';
update_post_meta( $post_id, 'template-slug', $templateSlug);
}
以上是关于php 在帖子中添加元变量(自定义字段,ej template-slug)#wordpress的主要内容,如果未能解决你的问题,请参考以下文章
php 自定义元字段的自定义帖子类型
PHP wordpress自定义帖子类型元框和字段
从 AFC 自定义字段变量中获取 ID 的 foogallery php 短代码不显示
php 使用自定义字段中的坐标将Google地图添加到帖子中
php 将重力形式的复选框信息添加到每个帖子的自定义字段中
在 Wordpress 中发布帖子并根据自定义字段元填充字段时运行 SQL 函数