3

リンクなしで投稿のタグを一覧表示する次のスクリプトがありますが、最後のタグを含むすべてのタグの後にコンマを置きます。スクリプトがリストの最後のタグにコンマを追加しないようにする方法はありますか?私はそれを調べてみましたが、この特定のwp文字列については実際にはそれほど多くはありません。

<?php
    $posttags = get_the_tags();
    if ($posttags) {
        foreach($posttags as $tag) {
            echo $tag->name . ', '; 
        }
    }
?> 
4

5 に答える 5

5

rtrimを使用します。最後に指定した文字をトリミングします。

    $posttags = get_the_tags();
    if ($posttags) {
       $taglist = "";
       foreach($posttags as $tag) {
           $taglist .=  $tag->name . ', '; 
       }
      echo rtrim($taglist, ", ");
   }
于 2013-01-03T19:37:55.990 に答える
3
if ($posttags) {
    echo implode(
        ', ', 
        array_map(
            function($tag) { return $tag->name; },
            $posttags
        )
    );
}
于 2013-01-03T19:35:20.840 に答える
1

可変数の要素を連結する必要がある場合は、これを行う傾向があります。

$posttags = get_the_tags();
if ($posttags) {
    foreach($posttags as $tag) {
        $temp[] = $tag->name; 
    }
}
if (!empty($temp)) echo implode(', ',$temp);
于 2013-01-03T19:49:59.680 に答える
0

そのカンマの配置を変えてちょっとした条件をつけて

<?php
    $posttags = get_the_tags();
    if ($posttags)
    {
        $first=true;
        foreach($posttags as $tag) 
        {
            if($first)
            {
                echo $tag->name; 
                $first=false;
            }
            else
            {
                echo ', '.$tag->name; 
            }
        }
    }
?> 
于 2013-01-03T19:49:07.203 に答える
0

ワードプレス機能が必要ですthe_tags。タグをエコーするので、ループ全体は必要ありません。

于 2013-01-03T19:51:36.297 に答える