使用wp_list_pages()格式化帮助

时间:2009-12-07 09:02:14

标签: php wordpress wordpress-theming

我在wordpress论坛上发布了这个问题,但没有点击。也许你们中的一个人可能会指出我正确的方向。

我正在为我正在制作的网站整理一个wp主题。我想让布局尽可能地与网站的其余部分匹配,并且使用wp_list_pages/categories/bookmarks/etc()方法遇到麻烦。我仔细阅读了文档,但实际上并没有看到如何将其翻译成适合我的东西。

调用没有args的函数我得到:

<li class="pagenav">Pages
  <ul>
    <li class="page_item page-item-2"><a href="_site_url_/?page_id=2" title="About">About</a></li>
    <li class="page_item page-item-5"><a href="_site_url_/?page_id=5" title="Parent 1">Parent 1</a>
      <ul>
        <li class="page_item page-item-10"><a href="_site_url_/?page_id=10" title="Child 1">Child 1</a>
          <ul>
            <li class="page_item page-item-26"><a href="_site_url_/?page_id=26" title="Grandchild 1">Grandchild 1</a></li>
          </ul>
        </li>
        <li class="page_item page-item-16"><a href="_site_url_/?page_id=16" title="Child 2">Child 2</a></li>
      </ul>
    </li>
    <li class="page_item page-item-7"><a href="_site_url_/?page_id=7" title="Parent 2">Parent 2</a>
      <ul>
        <li class="page_item page-item-22"><a href="_site_url_/?page_id=22" title="Child 1">Child 3</a></li>
        <li class="page_item page-item-24"><a href="_site_url_/?page_id=24" title="Child 2">Child 4</a></li>
      </ul>
    </li>
    <li class="page_item page-item-14"><a href="_site_url_/?page_id=14" title="Parent 3">Parent 3</a>
      <ul>
        <li class="page_item page-item-18"><a href="_site_url_/?page_id=18" title="Child 1">Child 5</a></li>
        <li class="page_item page-item-20"><a href="_site_url_/?page_id=20" title="Child 2">Child 6</a></li>
      </ul>
    </li>
  </ul>
</li>

虽然我想要更像的东西:

<div class="nav-link">Pages
  <div id="Pages_children">
    <div class="nav-link"><a href="_site_url_/?page_id=2" title="About">About</a></div>
    <div class="nav-link"><a href="_site_url_/?page_id=5" title="Parent 1">Parent 1</a>
      <div id="Parent 1_children">
        <div class="nav-link"><a href="_site_url_/?page_id=10" title="Child 1">Child 1</a>
          <div id="Child 1_children">
            <div class="nav-link"><a href="_site_url_/?page_id=26" title="Grandchild 1">Grandchild 1</a></div>
          </div>
        </div>
        <div class="nav-link"><a href="_site_url_/?page_id=16" title="Child 2">Child 2</a></div>
      </div>
    </div>
    <div class="nav-link"><a href="_site_url_/?page_id=7" title="Parent 2">Parent 2</a>
      <div id="Parent 2_children">
        <div class="nav-link"><a href="_site_url_/?page_id=22" title="Child 1">Child 3</a></div>
        <div class="nav-link"><a href="_site_url_/?page_id=24" title="Child 2">Child 4</a></div>
      </div>
    </div>
    <div class="nav-link"><a href="_site_url_/?page_id=14" title="Parent 3">Parent 3</a>
      <div id="Parent 3_children">
        <div class="nav-link"><a href="_site_url_/?page_id=18" title="Child 1">Child 5</a></div>
        <div class="nav-link"><a href="_site_url_/?page_id=20" title="Child 2">Child 6</a></div>
      </div>
    </div>
  </div>
</div>

有没有办法让我用args系统实现这一目标?如果没有,我是否可以从wp_list_TYPE()请求带有链接和标题的数组?

是否有更好的方法来做这样的事情?

1 个答案:

答案 0 :(得分:2)

尝试查看get_posts,它会返回一个数组。然后你可以遍历数组并打印出你想要的任何内容。

例如:

            <?php $posts = get_posts("numberposts=5&order=DESC&orderby=date"); ?>

            <h5>Latest posts</h5>

            <?php foreach($posts as $post): ?>

              <?php setup_postdata($post); ?>

              <div class="content">

                <a class="title" href="<?php the_permalink(); ?>"><?php the_title(); ?></a>

                <span style="float:right" class="date"><?php the_time(__('F jS, Y', 'inove')); ?></span>

              </div>

            <?php endforeach; ?>