我创建了自己的自定义Wordpress模板:
<?php
/**
* The main template file for display portfolio page.
*
* Template Name: Portfolio Test
* @package WordPress
*/
/**
* Get Current page object
我希望此页面按类别显示投资组合,如果所选类别是儿童,则页面将显示儿童照片。
如何在管理页面选择此模板时添加字段,输入类别slug以定义此页面的字段将显示哪个类别。
如何添加类别slug字段?
答案 0 :(得分:0)
首先,我建议不要这样做,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设置“阅读”并选择“我们的博客”作为您的帖子页面。然后去外观&gt;菜单并创建一个链接到您的博客类别的菜单(如果您看不到要链接的类别,请单击屏幕选项并选中“类别”)。
祝你好运。