Я использовал приведенный ниже код, чтобы создать метабокс для публикации в WordPress. Но проблема в том, что эти мета-поля также видны в настраиваемых полях. Я не хочу, чтобы эти мета-поля отображались в настраиваемых полях. Есть ли способ избежать показа метаполей в настраиваемых полях, поскольку их отображение в настраиваемых полях бесполезно?
$meta_boxes_video =
array(
"hotel name1" => array(
"name" => "hotel_name1",
"type" => "input",
"title" => "Hotel Name (Required)",
"description" => ""),
"price1" => array(
"name" => "price1",
"type" => "input",
"title" => "Price",
"description" => ""),
"hotel name2" => array(
"name" => "hotel_name2",
"type" => "input",
"title" => "Hotel Name (Required)",
"description" => ""),
"price2" => array(
"name" => "price2",
"type" => "input",
"title" => "Price",
"description" => ""),
"hotel name3" => array(
"name" => "hotel_name3",
"type" => "input",
"title" => "Hotel Name (Required)",
"description" => ""),
"price3" => array(
"name" => "price3",
"type" => "input",
"title" => "Price",
"description" => ""),
"hotel name4" => array(
"name" => "hotel_name4",
"type" => "input",
"title" => "Hotel Name (Required)",
"description" => ""),
"price4" => array(
"name" => "price4",
"type" => "input",
"title" => "Price",
"description" => ""),
"hotel name5" => array(
"name" => "hotel_name5",
"type" => "input",
"title" => "Hotel Name (Required)",
"description" => ""),
"price5" => array(
"name" => "price5",
"type" => "input",
"title" => "Price",
"description" => ""),
"hotel name6" => array(
"name" => "hotel_name6",
"type" => "input",
"title" => "Hotel Name (Required)",
"description" => ""),
"price6" => array(
"name" => "price6",
"type" => "input",
"title" => "Price",
"description" => ""),
"img_name1" => array(
"name" => "img_name1",
"type" => "input",
"title" => "Img1 (Required)",
"description" => ""),
"img_name2" => array(
"name" => "img_name2",
"type" => "input",
"title" => "img2 (Required)",
"description" => ""),
);
function display_video_meta_boxes() {
global $post, $meta_boxes_video;
foreach($meta_boxes_video as $meta_box) {
echo'';
echo''.$meta_box['title'].'';
if( $meta_box['type'] == "input" ) {
$meta_box_value = get_post_meta($post->ID, $meta_box['name'].'_value', true);
if($meta_box_value == "")
$meta_box_value = $meta_box['std'];
$meta_box_value = str_replace("\"","'",$meta_box_value);
echo'
';
} elseif( $meta_box['type'] == "textarea" ) {
$meta_box_value = get_post_meta($post->ID, $meta_box['name'].'_value', true);
if($meta_box_value == "")
$meta_box_value = $meta_box['std'];
$meta_box_value = str_replace("\"","'",$meta_box_value);
echo''.$meta_box_value.'
';
} elseif( $meta_box['type'] == "button" ) {
$meta_box_value = "Add New Source";
if($meta_box_value == "")
$meta_box_value = $meta_box['std'];
$meta_box_value = str_replace("\"","'",$meta_box_value);
echo '
function test()
{
alert("fgfg");
var element = document.createElement("textarea");
element.setAttribute("value", "Dfdsf");
element.setAttribute("name", "sdfdf");
var foo = document.getElementById("foo");
foo.appendChild(element);
}
';
echo '';
echo'
';
}
elseif ( $meta_box['type'] == "select" ) {
echo'';
foreach ($meta_box['options'] as $option) {
echo''. $option .'';
}
echo'';
} elseif ($meta_box['type'] == "info") {
echo '
Add your property images using the "Upload/Insert" button above the content textbox..
';
}
echo'
'.$meta_box['description'].'
';
}
}
function create_video_meta_box()
{
if (function_exists('add_meta_box'))
{
add_meta_box( 'ameta_boxes', 'Extra Information', 'display_video_meta_boxes', 'post', 'normal', 'high' );
}
}
function save_video_postdata( $post_id ) {
global $post, $meta_boxes_video;
if( get_post_type() == 'post' ) {
foreach($meta_boxes_video as $meta_box) {
// Verify
if ( !wp_verify_nonce( $_POST[$meta_box['name'].'_noncename'], plugin_basename(__FILE__) )) {
return $post_id;
}
if ( 'page' == $_POST['post_type'] ) {
if ( !current_user_can( 'edit_page', $post_id ))
return $post_id;
} else {
if ( !current_user_can( 'edit_post', $post_id ))
return $post_id;
}
$data = stripslashes($_POST[$meta_box['name'].'_value']);
if(get_post_meta($post_id, $meta_box['name'].'_value') == "")
add_post_meta($post_id, $meta_box['name'].'_value', $data, true);
elseif($data != get_post_meta($post_id, $meta_box['name'].'_value', true))
update_post_meta($post_id, $meta_box['name'].'_value', $data);
elseif($data == "")
delete_post_meta($post_id, $meta_box['name'].'_value', get_post_meta($post_id, $meta_box['name'].'_value', true));
}
}
}
add_action('admin_menu', 'create_video_meta_box');
add_action('save_post', 'save_video_postdata');
Подробнее здесь: https://stackoverflow.com/questions/106 ... tom-fields
Создайте мета-поля в WordPress, чтобы они не отображались в настраиваемых полях. ⇐ Php
Кемеровские программисты php общаются здесь
1728525714
Anonymous
Я использовал приведенный ниже код, чтобы создать метабокс для публикации в WordPress. Но проблема в том, что эти мета-поля также видны в настраиваемых полях. Я не хочу, чтобы эти мета-поля отображались в настраиваемых полях. Есть ли способ избежать показа метаполей в настраиваемых полях, поскольку их отображение в настраиваемых полях бесполезно?
$meta_boxes_video =
array(
"hotel name1" => array(
"name" => "hotel_name1",
"type" => "input",
"title" => "[b]Hotel Name[/b] (Required)",
"description" => ""),
"price1" => array(
"name" => "price1",
"type" => "input",
"title" => "[b]Price[/b]",
"description" => ""),
"hotel name2" => array(
"name" => "hotel_name2",
"type" => "input",
"title" => "[b]Hotel Name[/b] (Required)",
"description" => ""),
"price2" => array(
"name" => "price2",
"type" => "input",
"title" => "[b]Price[/b]",
"description" => ""),
"hotel name3" => array(
"name" => "hotel_name3",
"type" => "input",
"title" => "[b]Hotel Name[/b] (Required)",
"description" => ""),
"price3" => array(
"name" => "price3",
"type" => "input",
"title" => "[b]Price[/b]",
"description" => ""),
"hotel name4" => array(
"name" => "hotel_name4",
"type" => "input",
"title" => "[b]Hotel Name[/b] (Required)",
"description" => ""),
"price4" => array(
"name" => "price4",
"type" => "input",
"title" => "[b]Price[/b]",
"description" => ""),
"hotel name5" => array(
"name" => "hotel_name5",
"type" => "input",
"title" => "[b]Hotel Name[/b] (Required)",
"description" => ""),
"price5" => array(
"name" => "price5",
"type" => "input",
"title" => "[b]Price[/b]",
"description" => ""),
"hotel name6" => array(
"name" => "hotel_name6",
"type" => "input",
"title" => "[b]Hotel Name[/b] (Required)",
"description" => ""),
"price6" => array(
"name" => "price6",
"type" => "input",
"title" => "[b]Price[/b]",
"description" => ""),
"img_name1" => array(
"name" => "img_name1",
"type" => "input",
"title" => "[b]Img1[/b] (Required)",
"description" => ""),
"img_name2" => array(
"name" => "img_name2",
"type" => "input",
"title" => "[b]img2[/b] (Required)",
"description" => ""),
);
function display_video_meta_boxes() {
global $post, $meta_boxes_video;
foreach($meta_boxes_video as $meta_box) {
echo'';
echo''.$meta_box['title'].'';
if( $meta_box['type'] == "input" ) {
$meta_box_value = get_post_meta($post->ID, $meta_box['name'].'_value', true);
if($meta_box_value == "")
$meta_box_value = $meta_box['std'];
$meta_box_value = str_replace("\"","'",$meta_box_value);
echo'
';
} elseif( $meta_box['type'] == "textarea" ) {
$meta_box_value = get_post_meta($post->ID, $meta_box['name'].'_value', true);
if($meta_box_value == "")
$meta_box_value = $meta_box['std'];
$meta_box_value = str_replace("\"","'",$meta_box_value);
echo''.$meta_box_value.'
';
} elseif( $meta_box['type'] == "button" ) {
$meta_box_value = "Add New Source";
if($meta_box_value == "")
$meta_box_value = $meta_box['std'];
$meta_box_value = str_replace("\"","'",$meta_box_value);
echo '
function test()
{
alert("fgfg");
var element = document.createElement("textarea");
element.setAttribute("value", "Dfdsf");
element.setAttribute("name", "sdfdf");
var foo = document.getElementById("foo");
foo.appendChild(element);
}
';
echo '';
echo'
';
}
elseif ( $meta_box['type'] == "select" ) {
echo'';
foreach ($meta_box['options'] as $option) {
echo''. $option .'';
}
echo'';
} elseif ($meta_box['type'] == "info") {
echo '
Add your property images using the "Upload/Insert" button above the content textbox..
';
}
echo'
'.$meta_box['description'].'
';
}
}
function create_video_meta_box()
{
if (function_exists('add_meta_box'))
{
add_meta_box( 'ameta_boxes', 'Extra Information', 'display_video_meta_boxes', 'post', 'normal', 'high' );
}
}
function save_video_postdata( $post_id ) {
global $post, $meta_boxes_video;
if( get_post_type() == 'post' ) {
foreach($meta_boxes_video as $meta_box) {
// Verify
if ( !wp_verify_nonce( $_POST[$meta_box['name'].'_noncename'], plugin_basename(__FILE__) )) {
return $post_id;
}
if ( 'page' == $_POST['post_type'] ) {
if ( !current_user_can( 'edit_page', $post_id ))
return $post_id;
} else {
if ( !current_user_can( 'edit_post', $post_id ))
return $post_id;
}
$data = stripslashes($_POST[$meta_box['name'].'_value']);
if(get_post_meta($post_id, $meta_box['name'].'_value') == "")
add_post_meta($post_id, $meta_box['name'].'_value', $data, true);
elseif($data != get_post_meta($post_id, $meta_box['name'].'_value', true))
update_post_meta($post_id, $meta_box['name'].'_value', $data);
elseif($data == "")
delete_post_meta($post_id, $meta_box['name'].'_value', get_post_meta($post_id, $meta_box['name'].'_value', true));
}
}
}
add_action('admin_menu', 'create_video_meta_box');
add_action('save_post', 'save_video_postdata');
Подробнее здесь: [url]https://stackoverflow.com/questions/10605821/create-meta-boxes-in-wordpress-not-to-show-in-custom-fields[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия