(1)在catalog.php腳本中添加到彈出文件中一個(gè)鏈接,其實(shí)現(xiàn)代碼是下面代碼片段中的突出強(qiáng)調(diào)部分。注意,這里假設(shè)在之前中所創(chuàng)建的代碼基本之上進(jìn)行添加。如果還沒(méi)準(zhǔn)備好這些代碼,那么可以直接使用這一章下載的代碼。
<?php
require_once 'include/url_factory.inc.php';
?>
<li><a href="<?php echo make_category_product_url("Friends' Shed",2,"PHP E-Commerce Book",42);?>">Friends' Shed:PHP E-Commerce Book</a>
</li>
</ul>
<center><a href="popup.php" target="_blank">Find more about Professional Search Engine Optimization with PHP!</a>
</center>
</body></html>
(2)加載http://seophp.example.com/catalog.html,以確保腳本加載正確并且顯示了新的鏈接。注意,在這個(gè)例子中假設(shè)已經(jīng)建立了前面所示的簡(jiǎn)單種類。
(3)在seophp文件夾中創(chuàng)建新文件popup.php,代碼如下:
<?php
require_once 'include/popup_utils.inc.php';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd>
<html>
<head>
<title>Professionla Search Engine Optimization with PHP:Table of Contents</title>
</head>
<body onload="window.resizeTo(800,600);" onresize='setTimeout("window.resizeTo(800,600);",100);'>
<h1>Professional Search Engine Optimization with PHP:Table of Contents</h1>
<?php
display_navigation();
?>
<ol>
<li>You:Programmer and Search Engine Marketer</li>
<li>A Primer in Basic SEO</li>
<li>Provocative SE-Friendly URLs</li>
<li>Content Relocation and HTTP Status Codes</li>
<li>Duplicate Content</li>
</ol>
</body>
</html>
(4)在seophp/include文件夾中創(chuàng)建新文件popup_utils.inc.php,代碼如下:
<?php
require_once 'config.inc.php';
function display_popup_navigation()
{
$disp_nav=false;
if(!isset($_SERVER['HTTP_REFERER']))
{
$disp_nav=true;
}else{
$parsed_referer=parse_url($_SERVER['HTTP_REFERER']);
$parsed_local=parse_url(SITE_DOMAIN);
$referer_host=$parsed_referer['host'];
if($referer_host != $local_host)
{
$disp_nav=true;
}
}
if($disp_nav==true)
{
echo '<a href="catalog.html">Visit our catalog page!</a>';
}
}
?>
(5)后進(jìn)入http://seophp.example.com/catalog.html,單擊彈出窗口鏈接。沒(méi)有顯示任何導(dǎo)航。如何通過(guò)GOOGLE、YAHOO或者M(jìn)SN單擊而彈出網(wǎng)頁(yè),或者如果直接從瀏覽器地址進(jìn)入http://seophp.example.com/popup.php,導(dǎo)航的鏈接可以顯示出來(lái)。
(6)現(xiàn)在可以來(lái)測(cè)試在前面提到的Refcontrol Firefox插件程序。這個(gè)插件允許顯示和更改REFERER信息。安裝Plugin,并導(dǎo)航到http://seophp.example.com/catalog.html。在這個(gè)網(wǎng)頁(yè)中,單擊打開(kāi)彈出窗口的鏈接,并且注意在狀態(tài)欄顯示的HTTP REFERER。可以看到當(dāng)從站點(diǎn)內(nèi)部彈出窗口時(shí)種類鏈接不能顯示。
這里使用的代碼很多,并且都非常有用。只要彈出列表放對(duì)位置,它可以在任何需要的時(shí)候很方便地將導(dǎo)航鏈接顯示出來(lái)。這里使用的是模擬彈出窗口的方式,也可以用普通的JavaScript彈出頁(yè)面取得同樣的效果。
為了向任何彈出窗口增加導(dǎo)航鏈接,有兩個(gè)步驟需要做。首先,需要將popup_utils.inc.php腳本加入彈出頁(yè)面的腳本。如下即在popup.php里做的:
<?php
require_once 'include/popup_utils.inc.php';
?>
然后,需要調(diào)用定義在popup_utils.inc.php里的display_popup_navigation()函數(shù)。在希望包含導(dǎo)航鏈接的位置加入以下代碼:
<?php
display_popup_navigation();
?>
這個(gè)函數(shù)的作用是驗(yàn)證REFERER是否來(lái)自本地區(qū)域。如果是,則不顯示導(dǎo)航鏈接。如果這個(gè)REFERER來(lái)自另一個(gè)區(qū)域,則會(huì)顯示出來(lái)導(dǎo)航鏈接。
這個(gè)函數(shù)首先就要被告知是否存在REFERER。如果不存在,則設(shè)置一個(gè)臨時(shí)變量,取名為$display_nav,并設(shè)置為true。這個(gè)變量的默認(rèn)值是false。在這個(gè)函數(shù)的后,檢查它的值,并決定是否顯示這個(gè)導(dǎo)航鏈接:
function display_popup_navigation()
{
$disp_nav=false;
if(!isset($_SERVER['HTTP_REFERER']))
{
$disp_nav=true;
}
如果存在REFERER,檢查主機(jī)名字的REFERER是否與主機(jī)的SITE_DOMAIN常量一致。這個(gè)常量定義在config.inc.php里。如果主機(jī)名字不一樣,那么這個(gè)訪問(wèn)者是從外部網(wǎng)站到達(dá)這個(gè)彈出網(wǎng)頁(yè)的,這時(shí)就需要使用以下代碼顯示導(dǎo)航鏈接:
else{
$parsed_referer=parse_url($_SERVER['HTTP_REFERER']);
$parsed_local=parse_url(SITE_DOMAIN);
$referer_host=$parsed_referer['host'];
$local_host=$parsed_local['host'];
if($referer_host != $local_host)
{
$disp_nav=true;
}
}
到后,如果$display_nav的值是true,就使用以下代碼顯示導(dǎo)航鏈接:
if($disp_nav==true)
{
echo '<a href="catalog.html">Visit our catalog page!</a>';
}
}
希望以上的這些信息能夠幫助您,如果您還有關(guān)于大連網(wǎng)站制作,大連網(wǎng)站建設(shè)及企業(yè)郵箱等相關(guān)問(wèn)題,請(qǐng)與我們聯(lián)系,新圖聞科技將竭誠(chéng)為您服務(wù)!