WordPress: как добавить запятые в эту функцию get_the_category

PHP

<?php $categories = get_the_category(); foreach ($categories as $category){ echo $category->cat_name;} ?> 

В настоящее время это отобразит категории как «cat1cat2cat3». Я хочу, чтобы это было «cat1, cat2, cat3»

Я попробовал это echo $category->cat_name . ', '; echo $category->cat_name . ', '; но это только добавляет запятую после каждой категории. Даже если сообщение имеет только одну категорию: пример. «cat1», а также добавляет запятую к последней категории в списке: Ex. «cat1, cat2, cat3»,

Итак, как я могу получить commмас, но отсутствует, если только одна категория и отсутствует в последней категории, если ее список?

Solutions Collecting From Web of "WordPress: как добавить запятые в эту функцию get_the_category"

Вы также можете использовать implode () для этого:

 $categories = get_the_category(); $category_names = array(); foreach ($categories as $category) { $category_names[] = $category->cat_name; } echo implode(', ', $category_names); 

Попробуйте следующее: (Начиная с PHP 5.3)

 $categories = array_map(function($category) { return $category->cat_name; }, get_the_category()); echo implode(', ', $categories); 

вы можете сделать что-то вроде:

 <?php $categories = get_the_category(); $cat = ''; foreach ($categories as $category){ $cat .= $category->cat_name . ', '; } $cat = substr($cat,0,-2); echo $cat; ?> 

с наилучшими пожеланиями,