2011-04-14 57 views

回答

1

您可以通過修改組件的模板覆蓋來做到這一點。

模板覆蓋項存在於模板的/html/子文件夾下。 例如如果你想改變搜索條目的標題(com_search),你正在使用的模板rhuk_milkyway,調整下在這裏找到的文件:

templates/rhuk_milkyway/html/com_search/ 

打開PHP文件,(如default.php),然後修改通過用您自己的標籤替換H1標籤來標題。

如果你的模板不包含任何覆蓋文件或文件夾,您可以複製從該文件夾默認搜索覆蓋:

components/com_search/view/search/tmpl 

並粘貼到你的HTML模板文件夾:

rhuk_milkyway/html/com_search/search/ 

然後進行如上所述的修改。

你可以閱讀更多的在這裏覆蓋,雖然這些文章1.5編寫,概念仍然適用1.6:

  1. http://docs.joomla.org/Understanding_Output_Overrides
  2. http://docs.joomla.org/How_to_override_the_output_from_the_Joomla!_core
+0

比方說,我爲組件「com_component」製作模板覆蓋,併成功從搜索結果的鏈接中刪除單詞「Articles」。但顯然,從第一頁鏈接的文章中顯示的h1標題中的「首頁」一詞不能通過這種方式刪除。我需要什麼組件來製作輸出覆蓋?無論如何,我發現一個更簡單和骯髒的解決方案使用JavaScript。對於那些感興趣的,請看下面我自己的答案。 – 2011-05-06 14:46:19

0

我刪除了使用JavaScript這些頭,只需檢查所有h1標題並在其內容中搜索不需要的單詞,而不是將其顯示屬性設置爲none。

window.onload = function() { 
    var h1s = document.getElementsByTagName('h1'); 
    for(var i=0; i<h1s.length; i++) { 
     var home = h1s[i].innerHTML.substr(2, 4); 
     var articles = h1s[i].innerHTML.substr(2, 8); 
     if(home == "Home" || articles =="Articles") 
      h1s[i].style.display = "none"; 
    } 
} 

雖然它似乎不是一個非常優雅的解決方案,在實踐中效果很好,效率很高。此外,如果我們認爲這些h1真的與頁面內容有關,而不表示的決定僅僅是一個模板問題,這個解決方案是相當合理的。 JavaScript代碼如下:

我希望它對其他人有用。的確,我不明白爲什麼沒有成千上萬的其他Joomla!用戶拼命地試圖擺脫這些標題。