首先,为您的公文包帖子创建自定义帖子类型:
// Register Custom Post Type
function portfolio_cpt() {
$labels = array(
\'name\' => _x( \'Portfolio\', \'Post Type General Name\', \'text_domain\' ),
\'singular_name\' => _x( \'Portfolio\', \'Post Type Singular Name\', \'text_domain\' ),
\'menu_name\' => __( \'Portfolio\', \'text_domain\' ),
\'name_admin_bar\' => __( \'Portfolio\', \'text_domain\' ),
\'archives\' => __( \'Item Archives\', \'text_domain\' ),
\'attributes\' => __( \'Item Attributes\', \'text_domain\' ),
\'parent_item_colon\' => __( \'Parent Item:\', \'text_domain\' ),
\'all_items\' => __( \'All Items\', \'text_domain\' ),
\'add_new_item\' => __( \'Add New Item\', \'text_domain\' ),
\'add_new\' => __( \'Add New\', \'text_domain\' ),
\'new_item\' => __( \'New Item\', \'text_domain\' ),
\'edit_item\' => __( \'Edit Item\', \'text_domain\' ),
\'update_item\' => __( \'Update Item\', \'text_domain\' ),
\'view_item\' => __( \'View Item\', \'text_domain\' ),
\'view_items\' => __( \'View Items\', \'text_domain\' ),
\'search_items\' => __( \'Search Item\', \'text_domain\' ),
\'not_found\' => __( \'Not found\', \'text_domain\' ),
\'not_found_in_trash\' => __( \'Not found in Trash\', \'text_domain\' ),
\'featured_image\' => __( \'Featured Image\', \'text_domain\' ),
\'set_featured_image\' => __( \'Set featured image\', \'text_domain\' ),
\'remove_featured_image\' => __( \'Remove featured image\', \'text_domain\' ),
\'use_featured_image\' => __( \'Use as featured image\', \'text_domain\' ),
\'insert_into_item\' => __( \'Insert into item\', \'text_domain\' ),
\'uploaded_to_this_item\' => __( \'Uploaded to this item\', \'text_domain\' ),
\'items_list\' => __( \'Items list\', \'text_domain\' ),
\'items_list_navigation\' => __( \'Items list navigation\', \'text_domain\' ),
\'filter_items_list\' => __( \'Filter items list\', \'text_domain\' ),
);
$args = array(
\'label\' => __( \'Portfolio\', \'text_domain\' ),
\'description\' => __( \'Post Type Description\', \'text_domain\' ),
\'labels\' => $labels,
\'supports\' => array( \'title\', \'editor\', \'thumbnail\' ),
\'taxonomies\' => array( \'category\', \'post_tag\' ),
\'hierarchical\' => false,
\'public\' => true,
\'show_ui\' => true,
\'show_in_menu\' => true,
\'menu_position\' => 5,
\'show_in_admin_bar\' => true,
\'show_in_nav_menus\' => true,
\'can_export\' => true,
\'has_archive\' => true,
\'exclude_from_search\' => false,
\'publicly_queryable\' => true,
\'capability_type\' => \'page\',
);
register_post_type( \'portfolio\', $args );
}
add_action( \'init\', \'portfolio_cpt\', 0 );
接下来,复制单曲。php模板文件,并将其重命名为single portfolio。php。WordPress将在从自定义帖子类型访问帖子时自动加载此内容。您可以阅读更多关于此的信息,
here.
对于gallery功能,我将使用gallery addon for ACF. 这将允许编辑轻松上传图像并重新排序。然后可以在旋转木马中输出图像。在ACF中创建字段时,您可以指定仅显示在“公文包”自定义帖子类型上的库。
这里有一个例子from ACF 演示如何将图库与图像滑块集成:
<?php
$images = get_field(\'gallery\');
if( $images ): ?>
<div id="slider" class="flexslider">
<ul class="slides">
<?php foreach( $images as $image ): ?>
<li>
<img src="<?php echo $image[\'url\']; ?>" alt="<?php echo $image[\'alt\']; ?>" />
<p><?php echo $image[\'caption\']; ?></p>
</li>
<?php endforeach; ?>
</ul>
</div>
<div id="carousel" class="flexslider">
<ul class="slides">
<?php foreach( $images as $image ): ?>
<li>
<img src="<?php echo $image[\'sizes\'][\'thumbnail\']; ?>" alt="<?php echo $image[\'alt\']; ?>" />
</li>
<?php endforeach; ?>
</ul>
</div>
<?php endif; ?>
如果您不想使用ACF,可以使用
WordPress native gallery.