更改div的每个第二个实例的类?

时间:2015-03-24 15:32:36

标签: javascript html wordpress list class

我正在使用Wordpress网站,我想创建一个包含类别的无序列表。这些类别包括以下主题:数学,英语,科学等。用户可以上传与这些类别之一相关的文件,并给出该文件的简要说明。但是,我并不希望类别为每个例子重复自己:

- 英语
    莎士比亚的哈姆雷特     每周阅读1章并做笔记

- 英语
    阅读作业
阅读所有12个问题,并用完整的句子回答。

相反,我希望显示此类别的第一个实例,并将其他类别的帖子附加到第一个实例。 例如:

-English

- 莎士比亚的汉姆郎     每周阅读1章并做笔记

- 阅读作业
阅读所有12个问题,并用完整的句子回答。

这是我到目前为止所做的:

cat = document.getElementsByClassName("catname"); 

for(var i =0; i < cat.length ; i++){
  if (cat[i].innerHTML == "General"){
    cat[i].className = "hide";
   }
  else if(cat[i].innerHTML == "English"){
    cat[i].className = "hide"; 
   }
  else if(cat[i].innerHTML == "French"){
    cat[i].className = "hide"; 
   }
  else if(cat[i].innerHTML == "Math"){
    cat[i].className = "hide"; 
   }
  else if(cat[i].innerHTML == "Science"){
   cat[i].className = "hide";
  }
}

任何帮助将不胜感激! 谢谢!

1 个答案:

答案 0 :(得分:1)

为什么不在后端明确存储类别,而不是在生成页面后操作类别标签?使每个主题成为Wordpress类别,然后按类别显示帖子列表。您可以使用plugin或在模板中使用自己的PHP代码(基于this post)来实现这一点:

<?php $cats = get_categories(); 
foreach ($cats as $cat) {
    $cat_id= $cat->term_id;
    echo "<h2>".$cat->name."</h2>";
    query_posts("cat=$cat_id&posts_per_page=100");
    if (have_posts()) : while (have_posts()) : the_post(); ?>
        <a href="<?php the_permalink();?>"><?php the_title(); ?></a>
    <?php endwhile; endif; ?>
<?php } ?>