使用语义网格在响应列中显示自定义分类术语

时间:2018-06-18 18:01:01

标签: php wordpress woocommerce grid multiple-columns

我正在使用包含语义网格的WP主题。

例如,如果我想创建3个响应列,我可以在帖子或页面中使用以下标记:

<div class="grid-33">
Column 1
</div>
<div class="grid-33">
Column 2
</div>
<div class="grid-33">
Column 3
</div>

我正在使用php来抓取并显示我使用Woocommerce的自定义分类中的术语链接列表。它可以很好地创建一个列表。问题是列表很长。

php的echo部分如下:

echo "<h1 class='vendor-title'>MY TITLE</h1>"; 
        echo "<p class='vendor-subtext'>My subtext.</p>";
        echo "<ul class='vendor-list'>";
        foreach ( $terms as $term ) {
            echo '<li><a href="' . get_term_link( $term ) .'">' . $term->name . '</a></li>';
        }
        echo "</ul>";

我想要做的是格式化PHP,以便使用语义grid-33 class div在3个响应列中显示结果列表。

我该如何编码?

2 个答案:

答案 0 :(得分:1)

我没有看到难度在哪里......现在你可能需要更正容器的类:

echo '<h1 class="vendor-title">MY TITLE</h1>
<p class="vendor-subtext">My subtext.</p>
<div class="vendor-list grid-container">';

foreach ( $terms as $term ) {
    echo '<div class="grid-33"><a href="' . get_term_link( $term ) .'">' . $term->name . '</a></div>';
}
echo '</div>';

答案 1 :(得分:0)

我为此找到了更好的解决方案。您可以使用column-countcolumn-gap CSS来设置列表的样式。

您可以使用@media断点更改列数,以减少平板电脑和手机视图上的列。

例如:

.vendor-list {
    -moz-column-count: 4;
    -moz-column-gap: 10px;
    -webkit-column-count: 4;
    -webkit-column-gap: 10px;
    -ms-column-count:4;
    -ms-column-gap:10px;
    column-count: 4;
    column-gap: 10px;
}

@media (max-width: 768px) {
    .vendor-list {    
    -moz-column-count: 2;
    -moz-column-gap: 5px;
    -webkit-column-count: 2;
    -webkit-column-gap: 5px;
    -ms-column-count:2;
    -ms-column-gap:5px;
    column-count: 2;
    column-gap: 5px;
}
}