循环访问自定义字段中的类别

时间:2015-01-14 作者:Chris

具体来说,我使用add_image_attachment_fields_to_edit 作用我有我的标签声明,输入。。

$form_fields["custom4"]["label"] = __("Custom Select");
$form_fields["custom4"]["input"] = "html";
但是,当我尝试迭代select的类别时,会出现错误,或者是一个空的html select。到目前为止我有。。

$form_fields["custom4"]["html"] = "
<select name=\'attachments[{$post->ID}][custom4]\' id=\'attachments[{$post->ID}][custom4]\'>" .
    foreach ($categories as $category) {
        return "<option value=$category>$category</option>";
    } . "
</select>";
是否可以在$form_fields 作业,如何创建用类别名称构造的html选择?

2 个回复
SO网友:Sjors Roelofs

将foreach循环附加到变量的方式是不可能的。

尝试以下操作:

$form_fields["custom4"]["html"] = "<select name=\'attachments[{$post->ID}][custom4]\' id=\'attachments[{$post->ID}][custom4]\'>";

foreach ($categories as $category) {
     $form_fields["custom4"]["html"] .= \'<option value="$category">\' . $category . \'</option>\';
}

$form_fields["custom4"]["html"] .= "</select>";

SO网友:Sjors Roelofs

嗯,我看到您正在使用get\\u categories()函数检索所有类别。该函数返回一个包含类别对象的数组。

这意味着您必须编辑foreach循环,因为$category是一个对象。

$form_fields["custom4"]["html"] .= \'<option value="\' . $category->term_id . \'">\' . $category->name . \'</option>\';
您是否在WordPress中启用了调试模式?它将显示php代码中的错误。看看http://codex.wordpress.org/Debugging_in_WordPress

我还认为你的保存功能不起作用。您正在使用“restaurant”,但输入的名称为“custom4”。

结束

相关推荐

加载CSS文件的子主题中的Functions.php中断网站

我创建了一个子主题并创建了一个函数。子主题目录中也具有所需样式的php文件。css文件和我要加载的单独自定义css文件。这是我使用的代码:<? php add_action(\'wp_head\', \'add_landing_css\'); function add_landing_css() { wp_enqueue_style(\'landing_css\', get_stylesheet_directory_uri().\'/landing.cs