2011-11-07 63 views
1

我想在我的URL中爲WordPress的網站有自定義變量。我已閱讀了像我一樣能找到關於這個問題,至今在我的功能頁面如下:Wordpress custorm的URL變量導致奇怪的重定向

function add_query_vars($aVars) { 
$aVars[] = "mrdrct"; 
return $aVars; 
} 

// hook add_query_vars function into query_vars 
add_filter('query_vars', 'add_query_vars'); 

而且我的頭頁上的以下:

if(isset($wp_query->query_vars['mrdrct'])) { 
$mVar = $wp_query->query_vars['mrdrct']; 
echo "variable is $mVar <br />"; 
} 

只是爲了測試出如果事情通過正確,他們是。但是,當我使用鏈接與url變量 - 說www.mydomain.com/?mrdrct=myVarable - 我沒有被定向到我的Wordpress網站的主頁設置爲一個靜態頁面上的模板 - 相反,我轉向了一個包含我最新帖子的頁面。我無法弄清楚爲什麼會發生這種情況 - 有什麼想法?希望我已經解釋得很好。

謝謝。

回答

0

當WP看到一個查詢字符串(URL後面的?)時,它將嘗試使用它的重寫規則顯示匹配的帖子。如果沒有帖子匹配,它會顯示404錯誤 - 我猜你沒有404.php文件,所以WP顯示的默認是index.php(有關更多詳細信息,請參閱Wordpress Template Hierarchy)。

我不是100%確定你想達到什麼目的,但我建議你在設置$wp_query->query_vars['mrdrct']時需要考慮更改查詢。如果您還不熟悉它,請參閱WP Codexquery_posts()是一個開始的好地方。

+0

謝謝我將檢查這些,我們確實有一個自定義的404頁面設置,所以我不知道爲什麼它沒有打到。我基本上試圖實現的是從我們的移動網站鏈接到我們的完整網站 - 我只是在鏈接中設置一個變量,表示用戶希望查看完整網站而不是移動網站。在我的腦海裏看起來很簡單。 – Chris

+0

沒有什麼是最簡單的!有很多適當的腳本用於檢測博客並添加交換鏈接,可能值得在Google上搜索。 –

+0

嗨克里斯 你能解決這個問題嗎? –