2013-05-10 22 views
1

在線,但只工作我正在一個WordPress插件頁面,允許用戶執行一些自定義信息的搜索上。搜索表單基於腳本ajax,當你點擊搜索按鈕時,腳本jquery攔截調用併爲wordpress創建ajax調用。這個調用會在一個有問題的wordpress插件類中啓動一個方法,該方法處理從搜索表單傳遞的$ _POST數據。 然後顯示結果並點擊其中一個您將發送到單個頁面。 我想要做的腳本應該允許用戶使用瀏覽器的後退按鈕從單個頁面返回搜索結果。問題是,這個腳本在我的電腦上正常工作,但一旦在線加載,這個插件停止工作。 (對不起,很長的介紹,但它確定了問題)。我的文章和會議的WordPress的PHP腳本不在本地

該腳本的工作原理如下:

  1. 填寫搜索表單和搜索按鈕,點擊
  2. $ _ POST填充表單數據和我填$ _SESSION用$ _SESSION = $ _ POST
  3. 打開結果並轉到單個頁面,然後回到瀏覽器
  4. 使用控件$ _POST = $ _SESSION 強制刷新頁面設置(騎行要複雜得多,但這是它的原理基於)。

    ajaxResult PHP函數 該功能被稱爲搜索按鈕,點擊

    // Check if user came from single page or from search page 
    if(!$_POST && $_SESSION['back_to_hardsoft_results']) { 
        if($_SESSION['back_to_page']) { 
         $_POST = $_SESSION['back_to_hardsoft_results']; 
         $_SESSION['back_to_page'] = null; 
        } 
    } else if($_POST && $_SESSION['back_to_hardsoft_results']) { 
        $_SESSION['back_to_hardsoft_results'] = null; 
    } 
    
    ...some controls with the $_POST data... 
    
    $search = $this->getQueryObject($this->type, $this->taxonomies, $this->historicalFilter()); 
    
    include_once TEMPLATE_PATH . CUSTOM_POST_SLUG . '-' . RESULTS_PAGE . '-page.php'; 
    
    } else if (...$_GET...) { ...other things... } 
    

當用戶訪問一個網頁,一個$ _SESSION [ 'back_to_page']被創建。通過ajaxResult

$args = array (...some args...);   
$q = new WP_Query ($args); 

// Save the query for back to results from single_mediateca_page 
$_SESSION['back_to_hardsoft_results'] = $_POST; 

return $q; } 

getQueryObject PHP函數我已經把對JS文件的後續字符串來強制頁面刷新。

history.navigationMode = 'fast'; 

我認爲這個問題可能還涉及到瀏覽器的緩存,但我不知道是否真的是由於它的問題。 非常感謝您的幫助!

+0

有使用'$ _SESSION'與WordPress的問題 - 參見[這個問題](http://stackoverflow.com/questions/1441240/wordpress-session-management)和[這一個](HTTP:// WordPress的。 stackexchange.com/questions/32646/how-to-use-my-own-custom-session-value-in-wordpress)。不確定它是否與您的問題有關,但可能值得檢查。 – Hobo 2013-05-10 11:33:53

回答

0

你可能想使用一個插頭從笨會話的適應這裏看看這個https://wordpress.stackexchange.com/a/72744

還你不應該使用類似$ _ POST [「結果」]把$ _SESSION ['back_to_hardsoft_results']在特定索引中。

相關問題