Как мне сделать пользовательский интерфейс сообщений в Wordpress? - PullRequest
1 голос
/ 20 декабря 2011

мой WordPress блог посвящен музыке, и каждый раз, когда я публикую музыку в своем блоге, я следую одной и той же рутине, которая очень утомительна.Поэтому я хочу знать, как я могу ускорить процесс.

Вот моя рутина, когда я публикую новую музыку в своем блоге:

  1. Перейдите в Медиа и загрузите новое изображениедля новой музыки.
  2. Перейдите к типу фонового сообщения и создайте новый тип фонового сообщения для новой музыки.
  3. перейдите в Сообщения-> Добавить новое и прикрепите ранее созданный фоновый пост.введите и картинку к этому сообщению и опубликуйте сообщение после ввода сведений для этой новой музыки.

Так что эти 3 шага очень утомительны, потому что каждый раз, когда я добавляю новую музыку в свой блог, мне нужновыполните 3 шага.Я хочу знать, если есть способ поместить все эти шаги на одной странице, на этой странице будут поля ввода для медиа, фонового типа сообщения и добавления нового сообщения.

Скажите, пожалуйста, как я могу это сделать.спасибо

1 Ответ

1 голос
/ 20 декабря 2011

Ну, у вас может быть плагин в форме панели администратора с полями, такими как browse для медиа, post type, дополнительным изображением browse и т. Д. Затем есть некоторая динамическая функция, которая принимает этоформировать данные в переменной и $ _POST создает записи / регистры metas / media и т. д., используя встроенные функции worpress.

Можно также посмотреть на шаблонную особенность 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

}
}

?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...