-2

同じファイルの一部ではないキー/値を追加して、配列を追加しようとしています。

たとえば、次の配列があります。

$div_size = array(

    'Accordion' => array(
        'element1-4'=>'1/4',
        'element1-3'=>'1/3',
        'element1-2'=>'1/2',
        'element2-3'=>'2/3',
        'element3-4'=>'3/4',
        'element1-1'=>'1/1'
     ),
);

これを追加する必要があります:

    'blog' => array(
        'element1-4'=>'1/4',
        'element1-3'=>'1/3',
        'element1-2'=>'1/2',
        'element2-3'=>'2/3',
        'element3-4'=>'3/4',
        'element1-1'=>'1/1'
     ),

$div_size = array() はファイル foo.php にあり、追加されたキー/値 'Accordion' => array() はファイル bar.php にあります

2 つのアクションの結果は次のようになります。

$div_size = array(

    'Accordion' => array(
        'element1-4'=>'1/4',
        'element1-3'=>'1/3',
        'element1-2'=>'1/2',
        'element2-3'=>'2/3',
        'element3-4'=>'3/4',
        'element1-1'=>'1/1'
     ),

    'blog' => array(
        'element1-4'=>'1/4',
        'element1-3'=>'1/3',
        'element1-2'=>'1/2',
        'element2-3'=>'2/3',
        'element3-4'=>'3/4',
        'element1-1'=>'1/1'
     ),
);

私がやろうとしているのは、Wordpress 親テーマの管理セクションに追加のオプションを追加することですが、追加の配列値は子テーマの functions.php ファイルから取得する必要があります。

4

3 に答える 3

1

使用できますarray_merge()

$div_size = array_merge($div_size, $other_array)
于 2013-05-26T11:47:15.110 に答える
1

子テーマの function.php は、親テーマの直前にロードされます。したがって、関数を設定する必要があります。WP 情報を参照してください: functions.php の使用

子テーマの関数で、必要な配列を作成する関数を宣言して実装します。それをユニークなものと呼んでください。言うTHEMENAME_getBlogArray()

で設定している機能を確認してくださいif ( function_exists('THEMENAME_getBlogArray()')。設定されている場合は、それを使用してください。あなたの場合

$other_array = THEME_getBlogArray();
$div_size = array_merge($div_size, $other_array)

トリックを行う必要があります。(必要に応じて、関数を呼び出した後に検証できます。)

お役に立てれば。

于 2013-05-26T18:28:50.280 に答える
0

コメンターの助けを借りて...これを機能させるために私がしたことは次のとおりです。

子 Wordpress テーマで、このようなファイルを作成するか、それを functions.php ファイルに追加することができます。

// path to the parent theme with the array you want appended
include TEMPLATEPATH . '/whatever/some-file.php';

// the key/value you want appended
$div_size_merge = array(
    'blog' => array(
      'element1-4'=>'1/4',
      'element1-3'=>'1/3',
      'element1-2'=>'1/2',
      'element2-3'=>'2/3',
      'element3-4'=>'3/4',
      'element1-1'=>'1/1'
   ),
);

// now merge the two    
$div_size = array_merge($div_size, $div_size_merge);
于 2013-05-26T19:48:23.933 に答える