2013-07-21 29 views
2

我目前正在研究Wordpress拍賣插件。該插件將項目存儲在單獨的表中。我已成功創建插件並按預期工作(在管理區域中)。如何在wordpress主題/插件中將狀態標題設置爲200

現在我正在嘗試構建一個將利用插件的主題。我需要在網站的前端顯示所有拍賣項目。當用戶訪問url www.somesite.com/auctions/2時,我想顯示id爲2的拍賣詳情。

我已經成功地編寫了一個.htaccess重定向,它將獲得id,因此我可以使用id在表中找到拍賣並且顯示其細節。但問題不是Wordpress顯示404頁面,如果我訪問該網址。

這是我試過的。

.hatccess

RewriteRule ^(auction)/(.*)$ ?action=$1&id=$2 [L] 

所以,現在如果有人訪問/auction/1var_dump(id)會讓我1。我有一個Auction班,我打算通過在主題中做$auction->get(id)來獲得相應的拍賣。

到目前爲止,一切正常,除了我訪問網址時得到的404 page。如果有人訪問該網址,我試着去掉404 page

// code below this point doesnt work as intended. 

public function resolveURL(){ 
    global $wp_query; 

    $action = $_GET['action']; 
    $id = $_GET['id']; 

    if($action == 'auction' && !empty($id)){ 

     status_header(200); 
     $wp_query->is_page = $wp_query->is_singular = true; 
     $wp_query->is_404 = false; 
    } 
} 

在我的主題我base.php撥打:

global $wppa; // plugin object 
    $wppa->resolveURL(); 

我希望當我打電話的功能,網址爲/auction/someid拿不到404頁。任何幫助將不勝感激。

在此先感謝。

+0

'var_dump($ id)''應該爲'/ auction/1'返回'1',否?你說它返回'2'。你如何看到'var_dump'的結果,如果你得到了URL的404錯誤? – Kyle

+0

哦對不起。我的意思是1.我會編輯它。我有一個404頁面,網站被重定向到它。 – Subash

+0

你在哪裏看到'var_dump'的輸出? – Kyle

回答

2

我意識到 status_header(200);實際狀態設置爲200。因此,我不得不修改我index.php檢查is_404()並做相應處理。

+0

之上嗨 - 這是否意味着實際的404現在也返回200?假設你只是想讓自定義模板不是404。 – landed

相關問題