2012-07-02 41 views
1

我的開發人員是假期,我試圖找出如何從我的XML站點地圖生成器中刪除PHP擴展。從XML站點地圖生成器中刪除PHP擴展

下面是需要改變的是代碼如下:

//remaining main pages: 
$pages=array(); 
$query="SELECT DISTINCT strona FROM `sites_table`"; 
if($result=$GLOBALS['mysql']->query($query)) 
{ 
    $i=0; 
    while($row=$result->fetch_assoc()) 
    { 
     if($row['site']!="/index.php") 
     { 
      $pageName=substr($row['site'],1); 
      array_push($pages,$pageName); 
      write(insertIntoTemplate($pageName,"0.8","hourly")); 
     } 
    } 
    $result->free(); 
} 
else 
    echo $dbErrorMsg; 

MySQL查詢只是打印等網站的數組:news.php,sports.php,politics.php等

所有我需要的只是刪除這個.php擴展名;)我已經做了特殊的.htaccess文件,但現在我只需要通知谷歌我使用非.php網站。

回答

0

看來,$頁面名稱也使用一些其他的網頁,所以我就做了這種方式,現在沒有任何錯誤:

  //do a string replace of all occurrences of .php 
      $pageName=substr($row['site'],1); 
      array_push($pages,$pageName); 
      $pageName2=substr(str_replace('.php','',$row['site']),1); 
      array_push($pages,$pageName); 
      write(insertIntoTemplate($pageName2,"0.8","hourly")); 
+0

您是否與開發人員交談?你知道你可能會加入不存在的網址嗎?如果您的站點地圖充滿404,則會在Google的網站站長工具控制檯中收到錯誤。 – Travis

0

看起來你應該能夠改變線:

$pageName=substr($row['site'],1); 

到:

$pageName=substr($row['site'],1, -4); 

注:所有這些代碼所做的是刪除的最後四個字符 - 這可能會破壞其他章節該網站是否有預計擴展名的地方,不符合.php模型的項目等。

+0

幾乎接近,但現在我的網站地圖是所有' HTTP ://domain.com/'就是這樣。我需要'http:// domain.com/sports'等。還有這樣的警告:'警告:file_get_contents():文件名不能在/home/admin/domain.com/sitemap.php上在線189' – Spacedust

+0

那裏應該是這樣的東西,我想:'$ temp = str_replace(「。php」,「」,$ page);' – Spacedust

+0

沒有看到實際的數據,我真的不能做太多。 。 。我提供的代碼假設$ row ['site']充滿了諸如'/index.php','/sports.php'之類的東西。看起來我的警告也是如此,因爲它期望.php其他地方。 – ernie

0

這應該適合您,只要您可以更換所有發生的問題帶空字符串的.php文件。這並沒有考慮到應用程序中可能存在的任何邊緣情況,並且如果您不確定自己,您需要與開發人員進行交流以瞭解此情況。

//remaining main pages: 
$pages=array(); 
$query="SELECT DISTINCT strona FROM `sites_table`"; 
if($result=$GLOBALS['mysql']->query($query)) 
{ 
    $i=0; 
    while($row=$result->fetch_assoc()) 
    { 
     if($row['site']!="/index.php") 
     { 
      //do a string replace of all occurrences of .php 
      $pageName=substr(str_replace('.php','',$row['site']),1); 
      array_push($pages,$pageName); 
      write(insertIntoTemplate($pageName,"0.8","hourly")); 
     } 
    } 
    $result->free(); 
} 
else 
    echo $dbErrorMsg; 
+0

它的工作:)它彈出了很多像這樣的警告:警告:file_get_contents(索引):未能打開流:沒有這樣的文件或目錄在/home/admin/domain.com/sitemap.php 190行,但地圖生成正確:) – Spacedust