php - Wordpress - 模板部分中断 wordpress 列布局
问题描述
我认为一些帮助将不胜感激。我有这段代码将为 wordpres 自定义主题加载两个模板部分:
<div class="row m-0">
<?php get_template_part('assets/main', 'news'); ?>
<?php get_template_part('assets/side', 'news'); ?>
</div>
正如您在引擎盖下看到的那样,我使用的是 bootstrap 4,因此假设内容将在同一行内对齐。
我有一个col-8
insidemain-news.php
和一个col-4
inside,side-news.php
所以我想我会让内容对齐,但这不会发生,我的布局会中断。
这是main.news.php
teplate部分内的代码:
<?php $main_news = new WP_Query( array( 'post_type' => 'post', 'category_name' => 'main-news', 'posts_per_page' => 4) ); ?>
<!-- main -->
<div class="col-sm-12 col-md-8 col-lg-8 mt-2">
<p class="text-uppercase font-weight-bold mb-0 section-title"><?php _e('Last news') ?></p>
</div>
<?php if( $main_news->have_posts() ): while( $main_news->have_posts() ): $main_news->the_post(); ?>
<div class="col-sm-12 col-md-8 col-lg-8 mt-2 mb-2">
<div class="card rounded-0 p-0">
<img class="card-img-top w-100 h-100 rounded-0" src="<?php echo the_post_thumbnail_url(); ?>" />
<div class="card-img-overlay news-overlay">
<a class="h4 stretched-link" href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
</div>
</div>
</div>
<?php endwhile; endif; wp_reset_postdata() ?>
这是内容side-news.php
<?php $middle_news = new WP_Query( array( 'post_type' => 'post', 'category_name' => 'market-news', 'posts_per_page' => 4 ) ); ?>
<div class="col-sm-12 col-md-4 col-lg-4">
<p class="text-uppercase font-weight-bold mb-0 section-title"><?php _e('Side news') ?></p>
</div>
<?php if( $middle_news->have_posts() ): while( $middle_news->have_posts() ): $middle_news->the_post(); ?>
<div class="col-sm-12 col-md-4 col-lg-4 mt-2 mb-2">
<img class="img-fluid w-100" src="<?php echo the_post_thumbnail_url(); ?>" />
<a class="h4 stretched-link" href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
</div>
<?php endwhile; endif; wp_reset_postdata(); ?>
如何修复布局以使 col-8 和 col-4 在同一行上?也许我需要嵌套循环或什么?查看屏幕以了解正在发生的事情
解决方案
您的错误在main-news.php
文件中。看,您为文件(col-sm-12 col-md-8 col-lg-8 )
中的第一个 div 标签定义了这些,main-news.php
因此您的 div 采用这些列,然后您为同一文件(col-sm-12 col-md-8 col-lg-8 )
中的 div 标签定义了这些列,因此在您定义的情况下,两者都在文件内占用超过 12 列再次为文件内部的 div ,因此这些定义会破坏您的代码。loop
divs
main-news.php
(col-sm-12 col-md-4 col-lg-4)
side-news.php
解决方案:您应该从文件内部delete
之一定义列。divs
main-news.php
祝你好运!!!
推荐阅读
- filehelpers - 使用相同的类定义将 FixedLength 格式转换为 csv 的问题
- android - 使用 CameraAPI2 示例代码,相机未显示到 AutoFitTextureView 的完整宽度
- c# - 如何在我的 Xamarin.Forms 项目中集成 Firebase.Crashlytics
- performancecounter - 使用性能监视器单元在 Xilinx ZynqZC706 上生成中断
- powerbi - 如何部署 Power BI 报表并将它们连接到单个 Power BI 数据集
- spring-boot - SpringBoot @Autowire 在@Repository 中不起作用
- html - 为什么这些列的名称之间没有空格?
- reactjs - Tailwind CSS IntelliSense 不在 ReactJS 项目中提供建议?
- javascript - 在用户使用 id 或 class 选择的表单选项上显示 div
- c# - Azure 搜索服务比较要上传和删除的文档