2010-10-18 164 views
0

我目前正在尝试使用插件,并且遇到问题。基本上,在插件选项页面中,我有一个表单,用户可以在其中输入选择加入电子邮件的信息。但是,对于电子邮件表单的每个实例,我需要不同的表单。我试图很快将它们放在一起,所以不是重写它,而只是修改已存在的代码。将变量作为参数传递给get_options()Wordpress函数

这是问题所在。我将特定选择列表的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

您可能想尝试一种更清晰的存储分组选项的方式。 get_option和set_option可以与对象和数组一起工作,它们在数据库中被序列化,并在检索时被反序列化。

所以选项名称本身永远不会改变,但它内部的东西呢。这样,你不仅可以使用isset和empty等函数作为数组访问选项,而且还可以循环访问它们。然后,如果您需要添加额外的字段,只需将一个额外的变量添加到您的数组并保存。

相关问题