2014-11-01 231 views
0

请原谅我,如果我的言论不正确!将参数添加到Wordpress PHP函数

我有一个工作函数,根据帖子的类别输出一个字体真棒图标。我正在寻找扩展函数,以便我可以根据函数中的数组指定我的调用中的大小。

这里的工作代码

<?php echo category_icon(); ?> -- html output is <i class="fa fa-desktop"></i>) 

我期待实现以下...

<?php echo category_icon($icon_size); ?> --output would be <i class="fa fa-desktop$icon_size"></i>) 

这里是我当前的功能

function category_icon($icon_size){ 
    $build_icon_cat = get_the_category(); 
    $choose_icon = $build_icon_cat[0]->cat_ID; 

      // chooses icon by category 
      if ($choose_icon == 19) $build_icon_dos = 'fa fa-desktop'; 
      elseif ($choose_icon == 15) $build_icon_dos = '<i class="fa fa-cog'; 

    //-------size array 
$icon_size = array(
    '' => '', 
    '1' => ' fa-lg', 
    '2' => ' fa-2x', 
    '3' => ' fa-3x', 
    '4' => ' fa-4x', 
    '5' => ' fa-5x', 
); 

//variables for building 
     $build_icon_uno = '<i class="'; 
     $build_icon_cuatro = '"></i>'; 
     $display_category_icon = $build_icon_uno . $build_icon_dos . $icon_size . $build_icon_cuatro; 

return $display_category_icon; 
+1

你'$ icon_size'作为参数,然后你重新声明它作为一个数组。将数组的名称更改为'$ icon_array',然后可以像这样获取大小:'$ icon_array [$ icon_size]',其中'$ icon_size'只是一个匹配索引(即:'',' 1','2'...) – maiorano84 2014-11-01 20:21:15

+0

经过几天的搜索,它完美的工作..谢谢! – mn8809 2014-11-01 20:30:49

+0

然后发布为答案。请尽可能接受。 – maiorano84 2014-11-01 20:31:36

回答

1

你有$icon_size设置为参数,然后将其重新声明为数组。将数组的名称更改为$icon_array之类的内容,然后可以像这样检索大小:$icon_array[$icon_size],其中$icon_size只是一个匹配索引(即:'','1','2'...)。

您可能还想考虑使用isset进行一些基本的验证,以及一些默认大小。

+0

创建这个函数示例用于一般学习,以便尽可能减少它。我想下一步的议程是学习isset。再次感谢 – mn8809 2014-11-01 20:37:11

0

感谢maiorano84提供的见解。这是工作代码。上的index.php

<?php echo category_icon('5'); ?> 

工作职能

回调

function category_icon($icon_size){ 
    $build_icon_cat = get_the_category(); 
    $choose_icon = $build_icon_cat[0]->cat_ID; 

      // chooses icon by category 
      if ($choose_icon == 19) $build_icon_dos = 'fa fa-desktop'; 
      elseif ($choose_icon == 15) $build_icon_dos = '<i class="fa fa-cog'; 

    //-------size array 
$icon_array = array(
    '' => '', 
    '1' => ' fa-lg', 
    '2' => ' fa-2x', 
    '3' => ' fa-3x', 
    '4' => ' fa-4x', 
    '5' => ' fa-5x', 
); 

//variables for building 
     $build_icon_uno = '<i class="'; 
     $build_icon_cuatro = '"></i>'; 
     $display_category_icon = $build_icon_uno . $build_icon_dos . $icon_array[$icon_size] . $build_icon_cuatro; 

return $display_category_icon; 
}