我是wordpress和php的新手,我正在尝试向插件添加一些自定义功能。定义了一个自定义帖子类型,用于在其中添加广告和循环以在帖子内容中添加内容。目标是在符合条件的帖子后追加,但我的代码似乎插入到每个帖子中。
我试图添加第二个wp_query来过滤我需要根据_categs中的类别更新的帖子。为了简化代码,在下面的示例中,我尝试将内容仅添加到某个ID。
<?php
$ads = new WP_Query(array(
'post_type' => $this->plugin->posttype,
'post_status' => 'publish',
'posts_per_page' => - 1,
));
if ($ads->have_posts())
{
while ($ads->have_posts())
{
$ads->the_post();
$adID = get_the_ID();
$adIntro = get_post_meta($adID, '_ad_intro', true);
$adCategs = get_post_meta($adID, '_categs', true);
$adPosition = get_post_meta($adID, '_ad_position', true);
$adTemplate = '<h4 class="ad-banner">' . $adIntro . '</h4>';
foreach($adCategs as $adCateg)
{
echo 'Cat: ' . $adCateg . ' | Posts: ';
}
$posts = new WP_Query(array(
'cat' => '8'
));
$show_ad = false;
if ($posts->have_posts())
{
while ($posts->have_posts())
{
$posts->the_post();
echo ' ' . get_the_ID();
if (get_the_ID() === 246)
{
switch ($adPosition)
{
case 'top':
$content = $adTemplate . $content;
break;
case 'bottom':
$content = $content . $adTemplate;
break;
}
}
}
}
}
}
wp_reset_postdata();
return $content;
对于此代码,我在所有帖子中都得到以下输出:
猫:8 |帖子:246216178159164326102 55 55插入!
因此该代码有效,但是我只希望插入!在第246条中,而是我在所有帖子中都看到了它
谢谢!