Реализуете функцию "Видео дня"?
Я хотел бы добавить новую область на сайте WordPress 3.0, которая содержит новое видео с YouTube каждый день. Это видео будет выбираться вручную и добавляться вручную каждый день. Хотя я не уверен, как правильно это настроить.
Мой текущий мыслительный процесс заключается в том, что я бы создал категорию под названием "видео", а затем каждый день добавлял новый пост в эту категорию, помещая код вставки в качестве пост-тела. Хотя это кажется уродливым хакерством, поэтому я открыт для лучшее и более компактное решение. В идеале у меня была бы простая форма на стороне администратора, в которую я бы вставил заголовок и ссылку на видео YouTube (программно преобразуя ссылку в код вставки самостоятельно).
Достаточно ли хорошо WordPress 3.0 адаптирует нечетные типы сообщений, подобные этому? Что я должен прочитать, чтобы лучше понять, как я буду выполнять такие вещи, как "видео дня" и "ежедневные мультфильмы"?
2 answers
Я бы рекомендовал использовать пользовательский тип записи для обработки этого. Вы можете добавить пользовательский тип публикации и настроить его так, чтобы он принимал только URL-адрес YouTube в качестве контента. Затем вы можете отобразить "самую последнюю" запись из этой настройки с пользовательским циклом на своей домашней странице.
Вот еще пара хороших ресурсов для начала:
Привет @Джонатан Сэмпсон:
@EAMann на месте, пользовательские типы сообщений - это правильный путь.
Вот код, который вы можете добавить в файл вашей темы functions.php
, чтобы реализовать нужный вам пользовательский тип записи (обратите внимание, что я включил вспомогательную функцию make_post_type_labels()
, которую мне нравится использовать, которая уменьшает сложность определения пользовательских типов записей):
register_post_type('daily-video',
array(
'labels' => make_post_type_labels('Daily Video'),
'public' => true,
'show_ui' => true,
'query_var' => 'daily-video',
'rewrite' => array('slug' => 'daily-videos'),
'hierarchical' => true,
'supports' => array('title','editor',
)
);
function make_post_type_labels($singular,$plural=false,$args=array()) {
if ($plural===false)
$plural = $singular . 's';
elseif ($plural===true)
$plural = $singular;
$defaults = array(
'name' =>_x($plural,'post type general name'),
'singular_name' =>_x($singular,'post type singular name'),
'add_new' =>_x('Add New',$singular),
'add_new_item' =>__("Add New $singular"),
'edit_item' =>__("Edit $singular"),
'new_item' =>__("New $singular"),
'view_item' =>__("View $singular"),
'search_items' =>__("Search $plural"),
'not_found' =>__("No $plural Found"),
'not_found_in_trash' =>__("No $plural Found in Trash"),
'parent_item_colon' =>'',
);
return wp_parse_args($args,$defaults);
}
Также вы можете найти эти два ответа полезными: