如何创建类别页面?

时间:2017-06-03 17:58:05

标签: php html wordpress categories advanced-custom-fields

我做了类似的事情。我有一个食谱博客,我会有不同的类别,如早餐,甜点,午餐等......但我不知道如何将它们链接到类别页面。例如,如果用户单击"请参阅全部"对于早餐类别,它将显示早餐类别的所有早餐。这意味着它将链接到主要的早餐类别页面。对于每个类别,我将显示10个最近的帖子,因此用户没有看到所有帖子。所以他们可以选择查看所有帖子,如果他们点击"看全部"链接。它会将所有早餐帖子链接到主类别页面。当然,如果他们点击甜点"看到所有"链接,它会将它们链接到甜点类别页面,他们可以看到所有甜点帖子。

这是我目前的代码: (但是我应该为&#34看到什么PHP代码;看到所有"链接?如果你看看我的"看到所有"一个标签,它现在就是#。它& #39;没有链接到某个地方,但我如何动态链接到类别页面。例如,如果我在甜点部分,如果我点击"看到所有"它将链接到甜点类别。)

还请看看我的设计 My Recipe page



i=1
while(True):
    w=[x for x in v if (m%x)==0]
    if(w==v):
        m/=v[i]
        i+=1
        continue
    elif(m!=v):
        break




请参阅我提供的示例,以便您知道我在说什么。 我附上了一些图片和链接。

Code Category Design Category

这是链接的示例。

这是博客链接

https://iamsteve.me/blog

Design Category link

https://iamsteve.me/blog/category/design

An example what I want

1 个答案:

答案 0 :(得分:0)

如果您尝试链接到每个类别页面,可以使用DataTemplate,如下所示:

$category_page_link = get_term_link($term);

<h2><?php echo $term->name; ?><a href="<?php echo esc_url( $category_page_link ); ?>">see all</a></h2>

以上内部第二个foreach循环。

修改

这是完整的代码,我把函数get_term_link()放在应该的位置。打开/关闭html标签也遇到了一些问题:

<?php get_header(); ?>

<?php
/*
 * Loop through Categories and Display Posts within
 */
$post_type = 'recipe';
$category_link = get_category_link($cat->cat_ID);

// Get all the taxonomies for this post type
$taxonomies = get_object_taxonomies( array( 'post_type' => $post_type ) );
?>
<section class="recipe-wrap">

<?php foreach ( $taxonomies as $taxonomy ) :

    // Gets every "category" (term) in this taxonomy to get the respective posts
    $terms = get_terms( $taxonomy );

    foreach( $terms as $term ) :
        $term_page_link = get_term_link($term); ?>

        <div class="recipe-category owl-carousel-slide">
            <div class="row">
                <h2><?php echo $term->name; ?><a href="<?php echo esc_url ( $term_page_link ); ?>">see all</a></h2>
                <div class="recipe-category-carousel owl-carousel owl-theme">
                    <?php
                    $args  = array(
                        'post_type'      => $post_type,
                        'posts_per_page' => 10,  //show all posts
                        'tax_query'      => array(
                            array(
                                'taxonomy' => $taxonomy,
                                'field'    => 'slug',
                                'terms'    => $term->slug,
                            )
                        )

                    );
                    $posts = new WP_Query( $args );

                    if ( $posts->have_posts() ):
                        while ( $posts->have_posts() ) : $posts->the_post(); ?>
                            <div class="item recipe-box">
                                <a href="<?php the_permalink(); ?>">
                                    <img src="<?php echo( types_render_field( 'artwork', array( 'raw' => true ) ) ); ?>">
                                    <p><?php the_title(); ?></p>
                                </a>
                            </div>
                        <?php endwhile; ?>
                    <?php endif; ?>

                </div><!-- .owl-theme -->
            </div><!-- .row -->
        </div><!-- owl-carousel-slide -->

    <?php endforeach; // terms loop ?>

<?php endforeach; // taxonomies loop ?>

</section><!-- /recipe -->

<?php get_footer(); ?>

希望有所帮助。