在木材中渲染循环(用于WordPress的树枝)

时间:2016-12-30 作者:Xroad

我想用木材渲染这个循环。

$query = get_posts(array(\'post_type\' => \'lexique\',\'posts_per_page\' => -1));

$by_letter = array();
while( $query->have_posts() ) { $query->the_post();
  global $post;
  $letter = substr($post->post_name, 0, 1);
  if ( ! isset($by_letter[$letter]) ) $by_letter[$letter] = array();
  $by_letter[$letter][] = $post;
}
wp_reset_postdata();
所以用木头把这个环系上

$context = Timber::get_context();
Timber::render(\'lexique.twig\', $context);
但我不知道该怎么做。

1 个回复
SO网友:Jared

@Xroad,这是最简单的方法。根据具体情况,事情可能会变得更加复杂,但这是最简单的方法:

$query = get_posts(array(\'post_type\' => \'lexique\',\'posts_per_page\' => -1));

$by_letter = array();
while( $query->have_posts() ) { $query->the_post();
  global $post;
  $letter = substr($post->post_name, 0, 1);
  if ( ! isset($by_letter[$letter]) ) $by_letter[$letter] = array();
  $by_letter[$letter][] = $post;
}

$context = Timber::get_context();
$context[\'posts_by_letter\'] = $by_letter;
Timber::render(\'lexique.twig\', $context);

lexique.twig

{% for letter in posts_by_letter %}
  {% for post in letter %}
    <li><a href="{{ post.link }}">{{ post.title }}</a></li>
  {% endfor %}
{% endfor %}

相关推荐

当in_the_loop()为假时,何时以及为什么is_Single(‘my_cpt’)为真?

我正在使用模板系统的示例代码。此地址的页码:http://project.test/my_cpt/hello-post/.无法理解原因is_singular( \'my_cpt\' ) 是true 虽然in_the_loop() 是false.在页面模板中The Loop "E;“工程”:if ( have_posts() ) { while ( have_posts() ) { the_post(); ?>