0

wordpress オプションで配列の第 2 レベルの設定をエコーし​​ようとしていますが、変数の取得に問題があります。このコードは機能します:

 <?php foreach($area['fields'] as $field): ?>
 <?php if ($field['id'] == 'show_border')
  {echo ' show_border';} ?>
 <?php endforeach; ?>

これは、境界線を表示するかどうかを尋ねるフィールドがあるかどうかを確認するだけで、実際に境界線を表示するかどうかに関係なく、フィールドが設定されているかどうかに関係なく、必要なものがエコーされます。

私がやろうとしているのは、フィールド「show_border」に設定されている値をエコーすることです。

どうすればこれを行うことができますか?

編集

array(11) {
  [0]=>
  array(3) {
    ["name"]=>
    string(10) "# of posts"
    ["id"]=>
    string(5) "posts"
    ["type"]=>
    string(4) "text"
  }
  [1]=>
  array(5) {
    ["name"]=>
    string(13) "posts per row"
    ["id"]=>
    string(13) "posts_per_row"
    ["type"]=>
    string(6) "select"
    ["default"]=>
    int(3)
    ["options"]=>
    array(8) {
      [1]=>
      int(1)
      [2]=>
      int(2)
      [3]=>
      int(3)
      [4]=>
      int(4)
      [5]=>
      int(5)
      [6]=>
      int(6)
      [7]=>
      int(7)
      [8]=>
      int(8)
    }
  }
  [2]=>
  array(5) {
    ["name"]=>
    string(11) "header type"
    ["id"]=>
    string(13) "f_header_type"
    ["type"]=>
    string(6) "select"
    ["default"]=>
    string(2) "h4"
    ["options"]=>
    array(6) {
      ["h1"]=>
      string(2) "h1"
      ["h2"]=>
      string(2) "h2"
      ["h3"]=>
      string(2) "h3"
      ["h4"]=>
      string(2) "h4"
      ["h5"]=>
      string(2) "h5"
      ["h6"]=>
      string(2) "h6"
    }
  }
  [3]=>
  array(5) {
    ["name"]=>
    string(5) "icon?"
    ["id"]=>
    string(9) "show_icon"
    ["type"]=>
    string(5) "radio"
    ["default"]=>
    string(3) "yes"
    ["options"]=>
    array(2) {
      ["yes"]=>
      string(3) "yes"
      ["no"]=>
      string(2) "no"
    }
  }
  [4]=>
  array(5) {
    ["name"]=>
    string(13) "icon location"
    ["id"]=>
    string(13) "icon_location"
    ["type"]=>
    string(6) "select"
    ["default"]=>
    string(4) "left"
    ["options"]=>
    array(3) {
      ["left"]=>
      string(4) "left"
      ["right"]=>
      string(5) "right"
      ["top"]=>
      string(3) "top"
    }
  }
  [5]=>
  array(5) {
    ["name"]=>
    string(10) "show text?"
    ["id"]=>
    string(9) "show_text"
    ["type"]=>
    string(5) "radio"
    ["default"]=>
    string(3) "yes"
    ["options"]=>
    array(2) {
      ["yes"]=>
      string(3) "yes"
      ["no"]=>
      string(2) "no"
    }
  }
  [6]=>
  array(5) {
    ["name"]=>
    string(12) "show border?"
    ["id"]=>
    string(11) "show_border"
    ["type"]=>
    string(5) "radio"
    ["default"]=>
    string(2) "no"
    ["options"]=>
    array(3) {
      ["top"]=>
      string(3) "top"
      ["bot"]=>
      string(3) "bot"
      ["no"]=>
      string(2) "no"
    }
  }
  [7]=>
  array(5) {
    ["name"]=>
    string(8) "category"
    ["id"]=>
    string(8) "category"
    ["type"]=>
    string(6) "select"
    ["multiple"]=>
    bool(true)
    ["options"]=>
    array(2) {
      [4]=>
      string(7) "feature"
      [3]=>
      string(6) "slider"
    }
  }
  [8]=>
  array(4) {
    ["name"]=>
    string(14) "custom classes"
    ["id"]=>
    string(14) "custom_classes"
    ["type"]=>
    string(4) "text"
    ["default"]=>
    string(0) ""
  }
  [9]=>
  array(5) {
    ["name"]=>
    string(10) "read more?"
    ["id"]=>
    string(9) "read_more"
    ["type"]=>
    string(5) "radio"
    ["default"]=>
    string(3) "yes"
    ["options"]=>
    array(2) {
      ["yes"]=>
      string(3) "yes"
      ["no"]=>
      string(2) "no"
    }
  }
  [10]=>
  array(4) {
    ["name"]=>
    string(14) "read more text"
    ["id"]=>
    string(14) "read_more_text"
    ["type"]=>
    string(4) "text"
    ["default"]=>
    string(16) "Continue reading"
  }
}

["id"]=> "show_border" のような値を取得して、その値をエコーし​​ようとしています。

4

1 に答える 1

1

基本的に、サーバー側に既にロードされているフォームから選択しようとしているフォームの値を PHP で取得することはできません。

未来から過去へ行くようなものです。

PHP の代わりに Javascript コード + AJAX を使用する必要がありますが、はるかに複雑になります。サイトの完全なソースを知らなければ、簡単な答えを 1 つだけ伝えることはできません。

また、開発スキルにもよります。

于 2012-08-01T09:57:19.530 に答える