希望我能解释这一点,我现在弄糊涂了。
我有一个名为“Landing”的模板,它是Wordpress中许多不同页面的模板。
使用此模板的每个页面将包含不同的信息块。
这些块包含标题、图像、文本和链接,我称它们为Content\\u小部件,它们不是Wordpress意义上的小部件。
我的Content\\u小部件是每个帖子,我创建了一个称为Content\\u小部件的自定义帖子类型。
现在我需要在正确的页面上加载正确的帖子。
我想我可以在Wordpress的页面上设置一个类别,然后在该页面的帖子上设置相同的类别。
因此,这就像加载与此页面具有相同类别的帖子一样。
这是在正确页面上加载正确帖子的好方法吗?
这就是我正在使用的代码,但它没有输出任何东西。(我正在自定义帖子类型中使用高级自定义字段。)
h1中输出的是正确的类别名称,而不是其他名称。
任何人都知道为什么这不起作用,或者这是一种错误的方式吗??
<div id="contentWidgets">
<?php
// get category name for page
$cat = get_the_category($post->ID);
$catName = $cat[0]->name;
echo $catName;
$content_args = array(
\'post_type\' => \'Content_Widget\',
\'category_name\' => $catName
);
$content_loop = new WP_Query($content_args);
if($content_loop->have_posts()):
while($content_loop->have_posts()):
$content_loop->the_post();
$linkImg = get_field(\'image\');
$txt = get_field(\'text\');
$link = get_field(\'link\');
?>
<h1><?php echo $catName;?></h1>
<dl>
<dt><?php the_title(); ?></dt>
<dd><img src="<?php echo $linkImg; ?>" alt=""></dd>
<dd><?php echo $txt; ?></dd>
<dd><a href="<?php $link; ?>">Find out more</a></dd>
</dl>
<?php
endwhile;
endif;
wp_reset_postdata();
?>
</div><!--contentWidgets-->