Пользовательский шаблон WordPress с дополнительным полем

Я создал свой собственный шаблон WordPress:

<?php
/**
* The main template file for display portfolio page.
*
* Template Name: Portfolio Test
* @package WordPress
*/

/**
*   Get Current page object

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

Как добавить поле, когда я выбираю этот шаблон на странице администратора, поле для ввода слагаемой категории для определения этой страницы покажет, какая категория.

Как добавить поле слаг категории?

-1

Решение

Во-первых, я бы рекомендовал не делать этого таким образом, WordPress использует одну и ту же страницу для каждой категории блога, например index.php. При переходе к категории она каждый раз отображается на одной и той же странице. Отдельные категории блогов мне кажутся далекими.

Но вы можете добавить настраиваемое поле к сообщениям, как это

    <?php
function custom_field_meta( $meta_boxes ) {
$prefix = 'custom'; // Prefix for all fields
$meta_boxes['custom_field_metas'] = array(
'id' => 'custom_field_metas',
'title' => 'Custom Field Details',
'pages' => array( 'post', '' ), // post type
'context' => 'normal',
'priority' => 'high',
'show_names' => true, // Show field names on the left
'fields' => array(
array(
'name' => 'Blog Category',
'desc' => 'choose category to display',
'id' => $prefix . '_cat',
'type' => 'text'
),
),
);

return $meta_boxes;
}
add_filter( 'cmb_meta_boxes', 'custom_field_meta' );

И использовать вывод, как с этим кодом

    <?php global $post;
$text = get_post_meta( $post->ID, 'custom_cat', true );
echo $text;
?>

Затем в запросе используйте пользовательскую мету, что-то вроде этого:

    <?php
$loop = new WP_Query( 'category_name=
<?php global $post;
$text = get_post_meta( $post->ID, 'custom_cat', true );
echo $text;
?>
' );
?>

Некоторые предостережения: я не использовал этот код и подозреваю, что custom_meta не будет работать в wp_query, поскольку он должен быть внутри цикла; настраиваемое поле должно иметь идеальный ввод slug, иначе оно не будет работать.

Хорошо, что вы должны делать? Настройте страницу для своего блога, «наш блог» или что-то в этом роде. Зайдите в настройки WordPress «чтение» и выберите «наш блог» в качестве страницы ваших сообщений. Затем перейдите в «Внешний вид»> «Меню» и создайте меню, которое ссылается на категории вашего блога (если вы не видите категорий, на которые можно ссылаться, нажмите «Параметры экрана» и отметьте «категории»).

Удачи.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]