2012-11-17 133 views
2

我想通過令牌訪問受WordPress保護的頁面。這種情況是:我在URL中傳遞一個標記,而不是檢查請求是否是一個頁面,如果是,那麼頁面是否受到保護,如果是,請檢查URL是否具有標記,是否檢查標記是否匹配或不。WordPress保護頁面

UPDATE

的解決方法是什麼,我發現,在我的情況下工作

function check_token() { 
     if (post_password_required() && (!empty($_GET['token']))){ 
      if($_GET['token'] == 'test'){ 
      global $post; 
       $post->post_password=null; 
      } 
     } 
    } 

add_action('wp_head','check_token'); 

回答

0

在頁面模板頂部試試這個,在循環之前:

if(get_query_var('token') == 'xyz') 
    query_posts('post_status' => array('publish', 'any')); 

我找不到對應於「受保護」的狀態 - 保護如何?找到實際的職位狀態在列表中,將「任何」的程度:http://codex.wordpress.org/Class_Reference/WP_Query#Status_Parameters

這是如何註冊「令牌」:

add_filter('query_vars', function($query_vars) { 
    $query_vars[] = 'token'; 
    return $query_vars; 
}); 
+0

感謝您的反饋。我想這不可能,因爲網頁工作保護保存後變量,據我所知,我應該首先註冊變量讓它在wordpress中工作,但也許我錯了 – fefe

+0

哦,是的!抓住那個錯誤很好。我更新了我的帖子。 –