2014-03-02 60 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