将变量作为参数传递给get_options()Wordpress函数

时间:2010-10-18 21:05:21

标签: php wordpress wpdb

我目前正在尝试插件,我遇到了一个问题。基本上,在插件选项页面中,我有一个表单,用户将在其中输入选择加入电子邮件的信息。但是,我需要为电子邮件表单的每个实例提供不同的表单。我试图快速将它们放在一起,所以不是重写它,而只是修改已经存在的代码。

这是问题所在。我将特定选择列表的id的变量传递给选项表单。我的目的是将它用作每个选项字段的后缀。

    $savedvar1 ='email_capture_signup_';
    $savedvar1 .=$savedformname;
    <input type="text" name="<?php echo $savedvar1;?>" class="regular-text code" value="<?php echo get_option($savedvar1); ?>" />

代码用于提交数据,但是我无法显示保存的值。通过get_option()传递变量似乎不起作用。我知道我对Wordpress代码没有太多经验,但有没有办法可以通过这些信息或者我必须通过wpdb进行数据库查询。不幸的是,列表的名称必须是动态的(由用户确定),所以我不能在那里硬编码。谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

您可能希望尝试更清晰的方式来存储分组选项。 get_option和set_option可以使用对象和数组,它们在数据库中被序列化并在检索时被反序列化。

因此选项名称本身永远不会改变,但其中的内容确实如此。这样,您不仅可以使用isset和empty等函数作为数组访问您的选项,而且还可以遍历它们。然后,如果您需要添加额外的字段,只需在数组中添加一个额外的变量并保存。