用于填充自定义帖子选择字段的选项页面文本区域

时间:2015-11-12 作者:John Lucey

我创建了一个插件,允许输入自定义帖子类型。在该帖子类型中,我有一个select metabox作为name。我还有一个选项页面,其中有一个文本区域框,其中有一个名称列表。我未能成功地将2个连接在一起。想法是让文本区域中的列表显示为插件中选择框的选项。对于如何实现这一目标的任何指导都将不胜感激。

Textarea的选项页中的代码

<th scope="row">Name</th>
    <td><textarea id="name" name="name" rows="5" cols="36"><?php echo esc_attr( get_option(\'name\') ); ?></textarea></td>
选择框插件中的代码

$options = get_option( \'name\' );

$names = explode( "", $options[\'name\'] );
?>

<select name="Name">
<?php foreach ( $names as $name ) {
printf(
    \'<option value="%s">%s</option>\',
    $name,
    $name
);
} ?>

Image of the admin area not the var_dump shows Michelle but the name in the select box is John.

1 个回复
最合适的回答,由SO网友:ville6000 整理而成

您可以使用get_option 获取选项值。下面是一个示例

<?php
$selected_name = get_post_meta( get_the_ID(), \'your_meta_key\', true );
$options = get_option( \'your_options\' );
// If your names are separeated with comma
$names = explode( PHP_EOL, $options);
?>

<select name="your-select-name">
<?php foreach ( $names as $name ) {
    printf(
        \'<option value="%s" %s>%s</option>\',
        $name,
        selected( $name, $selected_name, false ),
        $name
    );
} ?>
</select>

相关推荐

如何为wp-admin/options.php模板中的媒体白名单_选项加值?

我想在我的多站点上设置媒体变量的默认值。如果我想在一个网站上这样做,很简单,我会在mysite上添加值。com/wp管理/选项。php到image\\u default\\u align、image\\u default\\u link\\u type和image\\u default\\u size,但我无法为这些添加网络全局值。所以我想手动编辑核心文件:/wp admin/options。php,但我不知道如何做到这一点,这个级别的php不在我的范围之内。下面是列出变量的代码,但对于这些最初不按顺序排