2014-03-02 64 views
0

我正在建设基于WordPress的网站为我的客户需要专辑/画廊认证。 我制作了自定义插件,用于将库和图像存储在数据库中的自定义表格中。 现在我想为客户创建一个简单的页面,以便他们可以使用图库名称和 密码登录并浏览他们的画廊。 我正在考虑在wp admin和自定义模板中创建一个页面,然后在那里处理认证。WordPress的自定义认证页面

你会如何做这样的认证?

+0

为什么不尝试使用阻止某些内容的wp插件?并允许认证。 –

+0

投票结束*太宽泛*,有太多可能的答案(见[帮助/话题]),他们会*太长,基本上是一个完整的插件。路线图:1)使用WP本地用户的系统。 2)找到一个插件来处理用户和权限(有几个伟大的和好的),或者编写你自己的规则。 3)创建界面(通过前端的主题模板或后端的插件页面)。 – brasofilo

+0

有一种方法可以通过http://wordpress.org/plugins/shortcode-exec-php/将您的登录代码设置为简码,并通过在wp-admin中创建一个“新页面”来创建图库登录页面,并设置登录页面设计以及简码来处理登录。 – Lab

回答

0

的基本方法是:

  1. 注册功能与admin_menu事件
  2. 添加您的页面和子页面
  3. 验证权限

阅读roles and capabilities法典的细节。

add_action('admin_menu', 'pluginprefix_admin_menu'); // 1 

function pluginprefix_admin_menu() { 
    //2 
    $plugurl = plugin_dir_url(__FILE__); 
    /* 
    add_menu_page($page_title, $menu_title, $capability, $menu_slug, 
        $function, $icon_url, $position); 

    add_submenu_page($parent_slug, $page_title, $menu_title, $capability, 
         $menu_slug, $function); 

    for example: */ 

    add_menu_page('Statistikk', 'Statistikk', 'edit_plugins', 
        'pluginprefix_main', 'pluginprefix_page_main', 
        "$plugurl/img/stats-menu.png", 25); 

    add_submenu_page('pluginprefix_main', 'Statistikk - Instillinger', 
         'Instillinger', 'edit_plugins', 'pluginprefix_fields', 
         'pluginprefix_page_fields'); 

function pluginprefix_page_main() { 
    // 3 
    if (!current_user_can('manage_options')) { 
    wp_die(__('You do not have sufficient permissions to access this page.')); 
    } 
    include(MY_TEMPLATES . 'settings_page.tpl.php'); 

} 

。 。 。

我明白了。在这种情况下;

  1. 创建一个带登录名/密码字段的表单,并将其发布到"wp-ajax"
  2. 另一端,比较登录名和密码与存储和salted hashes
  3. 并最终设置session variable表示用户可以浏览某个相册。
+0

这是管理员的一面。我的意思是前端。 让我更加清楚。这是自定义插件,画廊在数据库中有自己的表格,每个画廊都有自己的登录名和密码。在前端客户端只需输入登录名和密码即可浏览该图片库:) – RlyDontKnow