【问题标题】:WordPress Advanced Custom Fields - Using Select Field In An Array & Modify Array ElementsWordPress 高级自定义字段 - 在数组中使用选择字段并修改数组元素
【发布时间】:2015-01-14 18:05:15
【问题描述】:

我正在开发一个 WordPress 网站。我正在使用 ACF Pro 插件。我有一个选择字段,我想为每个选项分配第二个值。第一个值用作标题。第二个是百分比数字(目前只是一个字符串)。这将用作标签以及数据百分比值。我无法让选择值与我的数组一起使用。这是我的代码。

 <h4>Qualification: <?php echo $array_test; ?></h4>

然后是数组;

        <?php
            $myArray = array('$array_tests');
            $myArray[0]= '20%';
            $myArray[1]= '40%';
            $myArray[2]= '60%';
            $myArray[3]= '80%';
            $myArray[4]= '100%';

            echo "<h1> Test:";  
            echo $myArray;
            echo "<h1>";                    

        ?>

最后使用修改后数组的输出作为数据百分比;

<div class="skillbar clearfix" data-percent="<?php echo $myArray ?>%">

【问题讨论】:

    标签: php arrays wordpress advanced-custom-fields


    【解决方案1】:

    首先,你不能回显数组,而是做一个 print_r($array);

    点数2:您正在尝试显示 $array_test 但您没有事先声明它。

    因此,要在 HTML 中回显百分比,您应该执行以下操作:

    <?php
                $myArray = array('$array_tests');
                $myArray[0]= '20%';
                $myArray[1]= '40%';
                $myArray[2]= '60%';
                $myArray[3]= '80%';
                $myArray[4]= '100%';
    
                echo "<h1> Test:";  
                print_r ($myArray);
                echo "<h1>";                    
    
            ?>
    
    <div class="skillbar clearfix" data-percent="<?php echo $myArray[1] ?>%">
    

    在这里我们可以回显,因为您试图获取数组的一个值,而不是整个值。

    这应该在标记“data-percent”中回显 40%,但是我认为这种类型的 CSS 条不允许在内部使用 % 符号,这意味着您只需要回显“40”。

    【讨论】:

    • 嗨@nunorbatista 感谢您的帮助!这很棒,但不是很有效。唯一的事情是我不知道数组中的哪个项目需要作为百分比值。这现在给了我标题的代码; Array ( [0] =&gt; 20 [1] =&gt; 40 [2] =&gt; 60 [3] =&gt; 80 [4] =&gt; 100 ) 并且适用于百分比值,但仅当我硬编码我想要的项目时。是否可以在不指定我需要哪个项目的情况下工作?
    • 嗨@StuartNelson。这是另一个问题,您的数组内部具有该值,并且通过遵循一些外部条件,它应该显示所需的值。如果不指定您需要的项目,就无法工作,否则代码将不得不猜测要显示的值:) 我的回复回答了您的问题,所以我会要求您接受它。干杯!
    • 我想我可以使用开关?并为每个案例分配一个新变量,并将新变量作为我的百分比值回显。
    • 我认为您没有理解您所面临的问题。您正在请求一种在 HTML 中显示值的方法,以便使用 CSS 构建“技能栏”,这就完成了。您提供了一个包含多个值的数组,我不知道它们来自哪里或如何创建它们。您需要查看值的来源才能知道要显示哪一个。
    • 来自作为选择下拉列表的自定义字段的值。我已经通过使用开关解决了这个问题。感谢您的帮助!
    【解决方案2】:

    所以我已将此变量分配给我的选择自定义字段。

    $staff_qualification    = get_sub_field('qualification');
    

    我用它作为标题。

    <h4>Qualification: <?php echo $staff_qualification; ?></h4>
    

    我创建了一个开关,以便现在从下拉选择中为每个选项分配一个新值。

            <?php
    
            switch ($staff_qualification) {
            case "NVQ Level 1":
              $staff_qualification_percentage = 20;
              break;
            case "NVQ Level 2":
              $staff_qualification_percentage = 40;
              break;
            case "NVQ Level 3":
              $staff_qualification_percentage = 60;
              break;
            case "NVQ Level 4":
              $staff_qualification_percentage = 80;
              break;                                
            case "Degree In Childcare":
              $staff_qualification_percentage = 100;
              break;
            }                      
        ?>
    

    现在我将在每种情况下使用的变量作为我的数据百分比值。

    <div class="skillbar clearfix" data-percent="<?php echo $staff_qualification_percentage; ?>%">
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-21
      • 2019-02-25
      • 2013-11-25
      • 2012-11-26
      • 2012-08-10
      • 2015-01-21
      • 2017-05-01
      • 1970-01-01
      相关资源
      最近更新 更多