将$_Post搜索结果更改为单词而不是类别编号


Changing $_Post Search Results To Words Rather Than Category Number

在我的自定义搜索结果页面上,我有一行显示类别和价格。我使用的代码是

Displaying results for <?php echo $_POST['category_name']; ?>

这段代码的输出是" display results for 18120"。

我希望显示单词"Audio"而不是"18120",以及大约10个其他类别。

我当前的尝试,如下所示,不能正常工作。

<?php $cat = $_POST['category_name']; ?>
<?php if ($cat == 18120) echo 'Audio';
  elseif ($cat == 18121) echo 'Television';
?>

else/if中,存储新名称,而不是回显它。然后在display中使用该变量:

<?php $cat = $_POST['category_name']; ?>
<?php if ($cat == 18120) $cat = 'Audio';
  elseif ($cat == 18121) $cat = 'Television';
?>
Displaying results for <?php echo $cat; ?>

为了节省大量的elseif,为什么不使用旧的switchcase呢?

switch ($_POST['Category_name']){
    case 18120:
        $Cat = "Audio";
        break;
    case 18121:
        $Cat = "Television";
        break;
    case 18122:
        $Cat = "Something Else";
        break;
}
echo $Cat;

使用get_category() wordpress函数:

<?php 
$catCode = $_POST['category_name']; 
if(is_numeric($catCode)) {
    $cat = get_category($catCode);
    echo $cat->name;
} else {
  echo $catCode;
}
?>

享受你的代码!