我的wordpress博客是关于音乐的,每当我在我的博客上发布音乐时,我都遵循相同的例程,这非常令人厌烦。所以我想知道如何加快这个过程。
这是我在我的博客上发布新音乐时的惯例:
所以这三个步骤非常累人,因为每次我在博客中添加新音乐时,我都需要按照3个步骤操作。我想知道是否有办法将所有这些步骤放在一个页面中,此页面将包含媒体输入框,后期帖子类型并添加新帖子。
请告诉我怎么做到这一点。谢谢
答案 0 :(得分:1)
嗯,您可以在管理面板表单中使用插件,其中包含browse
字段,适用于媒体,post type
,其他图片browse
等。一些动态函数,它将这个表单数据放在变量和$ _POST上,使用内置的worpress函数创建post / registers元数据/媒体等。
也可以看一下wordpress的模板功能,可以在插件帮助中使用它与背景的东西。
这只是使用Wordpress内置函数创建帖子的示例:
<?php
function create_posts_from_serialized_array() {
//Inyour case it will be $_POST not these two lines
$dude_wheresmyarray = 'LOCATION OF YOUR UNSERIALISED ARRAY'; //Dude, where's my array?
$original_array = unserialize (file_get_contents($dude_wheresmyarray)); // Load array
// Create categories, return variables containg newly created category ids
$category = array('cat_ID' => '', 'cat_name'=> utf8_encode('Cat1'), 'category_description' => '', 'category_nicename' => 'cat1', 'category_parent' => ''); $cat_id10 = wp_insert_category($category, true);
$aid = 0; //foreach array begin with 0 and ++ later on
foreach ($original_array as $each_array) {
/*
* Variable for new post on left, variable from $original_array on right
*/
$new_post_title = $original_array[$aid]['title'];
$new_post_content = $original_array[$aid]['description'];
$new_category = $original_array[$aid]['category'];
$new_name = $original_array[$aid]['name'];
$new_address = $original_array[$aid]['address'];
$new_phone = $original_array[$aid]['phone'];
$new_web = $original_array[$aid]['web'];
$new_mail = $original_array[$aid]['mail'];
if ($new_category == 'a') {$assign_cat = $cat_id1;}
/*
* UPDATE POST
*/
$my_post = array();
$my_post['ID'] = ''; // Integer here WORKS ONLY IF THERE ALREADY IS A POST WITH THAT ID!
$my_post['post_type'] = 'post';
$my_post['post_title'] = utf8_encode($new_post_title);
$my_post['post_content'] = utf8_encode($new_post_content);
$my_post['post_status'] = 'publish';
$my_post['post_author'] = 1;
$my_post['post_category'] = array($assign_cat);
$pid = wp_update_post( $my_post ); //Update post, return new post ID
/*
* UPDATE META
*/
update_post_meta($pid, 'name', utf8_encode($new_name));
update_post_meta($pid, 'address', utf8_encode($new_address));
update_post_meta($pid, 'phone', $new_phone);
update_post_meta($pid, 'web', $new_web);
update_post_meta($pid, 'mail', $new_mail);
$aid ++; //loopidy loopin
}
}
?>