如何在WordPress

时间:2015-09-27 19:20:00

标签: php wordpress

我在WordPress的Admin(Dashboard)页面中创建了一个自定义选项菜单。

这个想法是允许管理员输入帖子ID以限制为仪表板中的逗号分隔值(例如" 100,102,104和#34;)。我希望将逗号分隔值作为数组传递,以限制使用帖子ID访问帖子。

为了限制访问,我试图在主题文件中获取值:

$restricted_ids = array();
$restricted_ids = get_option('_s_theme_options')['restricted_post_ids'];
if(is_single ($restricted_ids)) && !is_user_logged_in()) {
// My code here
}

我测试了它,发现变量" $ restricted_ids"没有得到预期的Post ID。例如,如果我输入' 123,456',$ restricted_ids会将其作为数组接收,其值为' 1,2,3 ...'不是' 123,456'。 如何更正" $ restricted_ids"的代码?正确接收输入的Post ID作为数组?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

尝试从字符串中删除空格,然后将其拆分为包含explode()的数组:

$restricted_ids = array();

$post_ids = str_replace(' ', '', get_option('_s_theme_options')['restricted_post_ids']);
$restricted_ids = explode(',', $post_ids);

if(is_single ($restricted_ids) && !is_user_logged_in()) {
  // Do the things
}