类别双方

时间:2016-07-01 16:19:03

标签: php wordpress widget

I want to make category widget like this.

我想创建一个像这张图片的小部件。我创建了一个小部件。但我的所有类别都显示出来,但我想并排显示它们。

这是我的动态PHP代码:

<div class="row">
            <div class="col-sm-6">
                <ul class="arrow">
                    <?php
                        $args = array(
                          'orderby' => 'name',
                          'parent' => 0,
                            'hide_empty'    =>  0
                          );
                        $categories = get_categories( $args );
                        foreach ( $categories as $category ) {
                            echo '<li><a href="' . get_category_link( $category->term_id ) . '">' . $category->name . '</a></li>';
                        }
                    ?>
                </ul>
            </div>
        </div>

这是我的输出HTML代码:

<div class="row">
  <div class="col-sm-6">
    <ul class="arrow">
      <li><a href="">bootstrap</a></li>
      <li><a href="">csss</a></li>
      <li><a href="">Habi Jabi</a></li>
      <li><a href="">HTCSS</a></li>
      <li><a href="">html</a></li>
      <li><a href="">Ki Kpi</a></li>
      <li><a href="">Laravel</a></li>
      <li><a href="">lol</a></li>
      <li><a href="">Lolop</a></li>
      <li><a href="">new</a></li>
      <li><a href="">Php</a></li>
      <li><a href="">Uncategorized</a></li>
      <li><a href="">Web Design</a></li>                </ul>
  </div>
</div>

但我想这样创作:

<div class="row">
  <div class="col-sm-6">
    <ul class="arrow">
      <li><a href="#">Development</a></li>
      <li><a href="#">Design</a></li>
      <li><a href="#">Updates</a></li>
      <li><a href="#">Tutorial</a></li>
      <li><a href="#">News</a></li>
    </ul>
  </div>
  <div class="col-sm-6">
    <ul class="arrow">
      <li><a href="#">Joomla</a></li>
      <li><a href="#">Wordpress</a></li>
      <li><a href="#">Drupal</a></li>
      <li><a href="#">Magento</a></li>
      <li><a href="#">Bootstrap</a></li>
    </ul>
  </div>
</div>

我如何编写代码?请帮帮我。

1 个答案:

答案 0 :(得分:0)

您的PHP代码应如下所示:

<?php
    $args = array(
        'orderby' => 'name',
        'parent' => 0,
        'hide_empty'    =>  0
    );
    $categories = get_categories( $args );
    $split = sizeof( $categories ) / 2;
    foreach ( $categories as $index => $category ) {
        if( $index == $split ) {
            echo '</ul></div><div class="col-sm-6"><ul class="arrow"></ul></div>';
        }
        echo '<li><a href="' . get_category_link( $category->term_id ) . '">' . $category->name . '</a></li>';
    }
?>

您可能需要通过减去1来调整$ split变量,以适应​​大小将给出$ categories数组中元素数量的事实,但$ index(在foreach循环中)将从0开始。