我正处于一场小危机中。我需要你的帮助!我做了几个小时的研究,但这是我的最后一招。切入故事,我试图列出所有的页面'来自Wordpress中的活动类别。
以下是我迄今为止所做的步骤。我可以通过在 functions.php 文件中添加以下代码来为我的网页启用类别:
function jh_cats() {
register_taxonomy_for_object_type('post_tag', 'page');
register_taxonomy_for_object_type('category', 'page');
}
add_action( 'init', 'jh_cats' );
接下来,我需要做到这一点,以便网站有类别&子类别。子类别仅显示在父类别页面上。我已将以下内容添加到 category.php 文件中,以获取所有子类别的列表。
<?php
$categories = get_categories( array(
'orderby' => 'name',
'parent' => $cat,
'hide_empty' => FALSE
) );
if ($categories)
{
foreach ( $categories as $category )
{?>
<li><a href="<?php echo $category->slug ?>"><?php echo $category->name ?></a></li>
<?php
}
} ?>
现在,当您访问特定的子类别时(考虑不会将任何内容分配给主要类别),我需要能够列出分配该子类别的所有页面。
接下来我该怎么办?我的 index.php 中有这个,但这只列出了所有页面。无论您是否属于特定类别,都可以。
<ul>
<?php
global $post;
$myposts = get_posts( array(
'post_type' => 'page',
'posts_per_page' => 5
) );
if ( $myposts ) {
foreach ( $myposts as $post ) :
setup_postdata( $post ); ?>
<li>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
<?php the_content(); ?>
</li>
<?php
endforeach;
wp_reset_postdata();
}
?>
</ul>
希望你能帮忙!谢谢。 :) 在此处回复其他人的回复/代码,以帮助我解决一些早期问题。
答案 0 :(得分:0)
你有没有尝试过这样的东西,对于你的index.php代码:
$myposts = get_posts( array(
'post_type' => 'page',
'taxonomy' => 'category'
) );
另外,我会尝试避免“get_categories”,最好尽可能尝试使用“get_terms”函数。
答案 1 :(得分:0)
在您希望过滤帖子的页面上,您可以尝试使用from re import sub
name = ['Nora', 'John', 'Jack', 'Jessica']
html = """
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Names</title>
</head>
<body>
<ul>
<li>Mother: <%= name[0] %></li>
<li>Father: <%= name[1] %></li>
<li>Son: <%= name[2] %></li>
<li>Daughter: <%= name[3] %></li>
</ul>
</body>
</html>
"""
html = sub(r"<%=\s*(\S+)\s*%>", lambda l: eval(l.group(1)), html)
print(html)
返回数组。然后使用foreach或者只获得第一项:
$cat = get_the_category($post->id);
然后更新WP查询以显示使用该类别的所有帖子。
按ID:
$cat_id = $cat[0]->cat_ID;
按名称:
$query = new WP_Query( array(
'post_type' => 'page',
'cat' => $cat_id
) );
来源:https://codex.wordpress.org/Class_Reference/WP_Query#Category_Parameters