1

我是数组新手,需要一点帮助。

基本上我想做的是随时随地注册菜单。所以我做了一个我认为会解决这个问题的循环。现在的问题是我真的不知道如何正确注册数组。

$lim = array(); 

foreach ( $new_menus as $menu => $value ) {

    $rname = get_post_meta(1,"$menu",true);                 
    $slugpath = preg_replace('/[^a-zA-Z0-9]/', '_', $rname );

    $lim[] = $slugpath => __( $rname );

    }
}

在上面的例子中,$slugpath 是 header-menu,$rname 是 Header Menu。最终我想要一个像下面这样的数组。我该怎么做呢?

array(
  'header-menu' => __( 'Header Menu' ),
  'footer-menu' => __( 'Footer Menu' ),
  'left-menu' => __( 'Left Menu' )
);
4

1 回答 1

1

你应该把它分配给这样的数组:

$lim[$slugpath] = __($rname);

此外:

除非你的$new_menus数组在键中有它的值,否则你应该$value在函数中使用 varget_post_meta而不是 key $menu,所以它看起来像这样:

$rname = get_post_meta(1,$value,true); 

如果你想要-slugged 文本中的符号,你应该用它替换你的_符号,如果你想要它全部小写,请使用它:preg_replacestrtolower()

$slugpath = preg_replace('/[^a-zA-Z0-9]/', '-', $rname );
$slugpath = strtolower($slugpath);
于 2013-10-27T10:18:34.490 回答