2010-03-30 75 views
0

我有一個WordPress的博客,我需要使其中一個頁面安全。我被告知要將該頁面的鏈接指向https://claimpage.html而不是http://claimpage.html幫助與PHP代碼 - 需要添加條件,使一個鏈接https

問題是我實際上並沒有創建鏈接用戶到單個頁面的菜單。這由後臺代碼自動完成。我認爲我需要在某種IF聲明中說,如果頁面的標題是「立即聲明」,則使用https,否則使用http。

我在header.php中找到了這段代碼,所以我認爲我的修改需要在這裏進行,但我不確定該怎麼做。

<div id="navbar"> 
    <ul class="menu"> 
    <li class="<?php if (is_home()) { ?>current_page_item<?php } else { ?>page_item<?php } ?>"><a href="<?php echo get_settings('home'); ?>"><?php _e('Home'); ?></a></li> 
    <?php wp_list_pages('sort_column=id&depth=1&title_li='); ?> 
    <?php wp_register('<li>','</li>'); ?> 
    </ul> 
</div> <!-- end of #navbar --> 

任何建議,我怎麼可以讓一個網頁,我知道標題和URL或https,而別人都在用普通的HTTP保持?

該網站託管在一個安全的服務器上,所以我確實有一個SSL證書。

回答

0

在.htaccess中使用重寫規則或RedirectMatch。如果重定向鏈接而不修改代碼,這將很謹慎。

0

如果您只有一種語言,並且您到本網站的鏈接是靜態的,則將其靜態粘貼到您的主題中。

<div id="navbar"> 
    <ul class="menu"> 
    <li class="<?php if (is_home()) { ?>current_page_item<?php } else { ?>page_item<?php } ?>"><a href="<?php echo get_settings('home'); ?>"><?php _e('Home'); ?></a></li> 
    <?php wp_list_pages('sort_column=id&depth=1&title_li='); ?> 
    <?php wp_register('<li>','</li>'); ?> 
    <li><a href="https://yoursecurelink">my secure link</a></li> 
    </ul> 
</div> <!-- end of #navbar --> 

不需要正則表達式,IF或ELSE等等。你的鏈接是靜態的,我認爲,所以只需粘貼它。

2

繼prodigitalson的想法。您可以將其添加到您的.htaccess中:

RewriteCond %{SERVER_PORT} !^443$ 
RewriteRule ^claimpage.html https://claimpage.html [R=301,L] 

這應該有所斬斷。

+0

我會試試這個,看起來網站還沒有完全轉換到安全服務器,它仍然說安裝正在進行中。我將在完成安裝後添加此代碼 – Kaskade 2010-03-30 16:16:18

+0

感謝您的詳細介紹,我很忙:-) – prodigitalson 2010-03-30 17:48:02