当前位置: 首页 > 知识库问答 >
问题:

WordPress-自定义存档页

阚乐湛
2023-03-14

我创建了一个自定义超文本标记语言归档博客页面,我想在其中放置WordPress帖子。自定义页面有几个不同的布局,因此在帖子中循环只是重新生成我试图避免的整个页面。我想做的是循环通过每个帖子,然后将该帖子放在相关的档案中。

因此,第1列进入第1列第1列,第2列进入第2列第1列,第3列进入第2列第2列,第4列进入第2列第3列,以此类推。。。

如果这是不可能的,有没有一种方法,我可以有一个代码块,例如,只有第一行和列如下,随着每个PHP循环迭代CSS标记的变化。例如,在第一次迭代中,col是100%宽度,在第二次迭代中,col是50%宽度。

这是很难解释的,所以希望上面的说法有一定的道理。

下面是一个标记示例。

<?php if (have_posts()) : while(have_posts()) : the_post(); ?>


<!-- ROW 1 -->
<div class="card mt-5 row-card-shadow">
            <div class="row no-gutters">
                <div class="col-md-6">
                    <img src="//placehold.it/450x350" class="img-fluid" alt="">
                </div>
                <!-- COL 2 POST-1 -->
                <div class="col-md-6">
                    <div class="card-block p-3">
                        <h4 class="card-title"><?php the_title(); ?></h4>
                        <p class="card-text"><?php the_excerpt(); ?></p>
                        <p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p>
                        <a href="<?php the_permalink(); ?>" class="btn btn-sm btn-primary">Read more..</a>
                    </div>
                </div>
            </div>
        </div>



        <!-- ROW 2 -->
        <div class="row py-5 row-three-cards">
            <!-- COL 1 POST-2 -->
            <div class="col-md-4 d-flex align-items-stretch">
                <div class="card" style="width: auto;">
                    <img class="card-img-top" src="//placehold.it/200" alt="Card image cap">
                    <div class="card-body">
                        <h5 class="card-title">TEST</h5>
                        <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p>
                        <a href="#" class="btn btn-sm btn-primary">Read more..</a>
                    </div>
                </div> 
            </div>
            <!-- COL 2 POST-3 -->
            <div class="col-md-4 d-flex align-items-stretch">
                <div class="card" style="width: auto;">
                    <img class="card-img-top" src="//placehold.it/200" alt="Card image cap">
                    <div class="card-body">
                        <h5 class="card-title">Card title</h5>
                        <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p>
                        <a href="#" class="btn btn-sm btn-primary">Read more..</a>
                    </div>
                </div> 
            </div>
            <!-- COL 3 POST-4 -->
            <div class="col-md-4 d-flex align-items-stretch">
                <div class="card" style="width: auto;">
                    <img class="card-img-top" src="//placehold.it/200" alt="Card image cap">
                    <div class="card-body">
                        <h5 class="card-title">Card title</h5>
                        <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p>
                        <a href="#" class="btn btn-sm btn-primary">Read more..</a>
                    </div>
                </div> 
            </div>                
        </div>
   <?php endwhile; endif; ?>

共有2个答案

匡祖鹤
2023-03-14

正如我所看到的,你想把帖子分成不同的类别。因此,您可以更改您的标记,以生成一些列,这些列将由一些CSS类定义(您可以设置条件,检查当前帖子是否在类别中,然后添加CSS类或类似的内容)。如果您想将它们拆分到一个Wordpress循环之外,您可以使用多个Wordpress循环为不同类别创建自定义模板。

这里是wordpress循环文档的链接。希望这对你有帮助。

焦苏燕
2023-03-14

这是我在WP初学者中发现的,但我正在根据您的需要修改它。

我是WordPress开发的新手。因此,请在本地主机上验证这一点,然后再在生产中使用。

    <?php

    $archieve_post = new WP_Query(array('post_type'=>'post', 'post_status'=>'publish', 'posts_per_page'=>-1)); ?>

    <?php if ( $archieve_post->have_posts() ) : ?>

    <ul>
        <?php while ( $archieve_post->have_posts() ) : $archieve_post->the_post(); ?>
            <li>
<div class="card mt-5 row-card-shadow">
            <div class="row no-gutters">
                <div class="col-md-6">
<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('thumbnail'); ?></a>
</div>
<div class="col-md-6">
                    <div class="card-block p-3">
                        <h4 class="card-title"><?php the_title(); ?></h4>
                        <p class="card-text"><?php the_excerpt(); ?></p>
                        <a href="<?php the_permalink(); ?>" class="btn btn-sm btn-primary">Read more..</a>
                    </div>
                </div>
            </div>
        </div>
        <?php endwhile; ?>
    </ul>

        <?php wp_reset_postdata(); ?>

    <?php else : ?>
        <p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p>
    <?php endif; ?>
 类似资料:
  • 我有一个自定义的帖子类型设置,有许多类别和子类别。 我试图做的是创建一个页面,显示特定类别中的所有帖子,并使用一个菜单列出所有类别子类别,以便可以过滤帖子。 我已尝试复制存档模板并将其重命名为分类法-(我的自定义分类法)。php,如果我转到slug,它会显示某些帖子,并使用

  • 我正在我的Wordpress公文包网站上工作,并为我的公文包部分创建了一个自定义帖子类型。当用户单击my portfolio链接时,会将他们带到archive-portfolio.php,其中显示我所有项目的图库;当用户单击项目时,会将他们带到single-portfolio.php,其中显示关联的项目。 一切都正常工作,样式正确,但现在我想让archive-portfolio.php上的gall

  • 我有一个自定义分类法分配给一个自定义帖子类型。我创建了一个名为“taxonomy brands.php”的模板,当我访问自定义分类法存档时会调用该模板,但是当我调用该模板中的循环时,它认为我没有任何帖子(它跳过if(have_posts())并执行else{}).我的自定义帖子类型为“has_archive”= 代码中是否有可能导致这种情况?提前感谢你的帮助。 这是我用来注册CPT的代码。 这是我

  • 我有一个自定义的文章类型“author”,我已经成为了归档作者。php,这里是我使用wp pagenavi插件时遇到的问题,我在这个自定义帖子类型中有15篇帖子,我已经使用了

  • 我正在尝试为我的自定义文章类型页面、归档和术语页面编写一个小的分类过滤器。因此,我试图找出当前页面上使用的分类法。 例如:http://www.domain.de/taxonomy,或自定义帖子类型的存档,如http://www.domain.de/portfolio 示例:我用自定义后类型构建了一个投资组合页面。我给了这个分类法“技能”和“类别”。page-portfolio.phparchiv

  • 我创建了一个归档页面,我的'事件'自定义帖子猿archive-event.php.我使用的内容从标准archive.php模板,它列出了我的4个事件的顺序,他们被张贴。 下一步是按自定义字段event_date更改订单。我这样做没有问题。然后我不想显示任何事件的日期已经过去。下面的代码完美地实现了这一点。 我现在的问题是我的分页都搞砸了。我的默认阅读设置为每页2篇文章,我有一个“加载更多”按钮来显