WPをバージョンアップした時にget_postsのtagが効かない
-
こんにちは。
お世話になります。
よろしくお願いいたします。wordpress 4.7.13
で以下の書き方で問題なく動いていたのですが、
最新の5.2.2
にしたところ、意図した表示がされなくなってしまいました。
記事のタイトルが表示されません。-
<?php $myposts = get_posts( 'orderby=date&order=DESC&numberposts=5&cat=138');?>
- <?php the_title(); ?>
<?php if(count($myposts)):?>
<?php foreach($myposts as $post) :setup_postdata($post);?><?php
$posttags = get_the_tags();
$count=0;
if ($posttags) {
foreach($posttags as $tag) {
$count++;
if (1 == $count) {
$tag_id_name= $tag->name.'';
}
}
}
?>
<?php $tag_id_name=mb_ereg_replace(" ","-",$tag_id_name);?><?php if ( in_category(array('138'))): ?>
<?php
$postslist = get_posts('tag='.$tag_id_name.'&numberposts=1&cat=30');
foreach ($postslist as $post) :
setup_postdata($post);
?><?php endforeach; ?>
<?php endif;?>
<?php endforeach; ?>
<?php else:?>
<?php endif;?>以下のように、tag を tag_id の数字で扱うと意図した表示がされるのですが、
出来れば、今までのようにtag そのままで扱いたいのです。
何か方法はあるでしょうか?-
<?php $myposts = get_posts( 'orderby=date&order=DESC&numberposts=5&cat=138');?>
- <?php the_title(); ?>
<?php if(count($myposts)):?>
<?php foreach($myposts as $post) :setup_postdata($post);?><?php
$posttags = get_the_tags();
$count=0;
if ($posttags) {
foreach($posttags as $tag) {
$count++;
if (1 == $count) {
$tag_id_name= $tag->term_id.'';
}
}
}
?>
<?php $tag_id_name=mb_ereg_replace(" ","-",$tag_id_name);?><?php if ( in_category(array('138'))): ?>
<?php
$postslist = get_posts('tag_id='.$tag_id_name.'&numberposts=1&cat=30');
foreach ($postslist as $post) :
setup_postdata($post);
?><?php endforeach; ?>
<?php endif;?>
<?php endforeach; ?>
<?php else:?>
<?php endif;?>よろしくお願いいたします。
- トピック「WPをバージョンアップした時にget_postsのtagが効かない」には新たに返信することはできません。