2016-08-02 96 views
0

我期望在所有頁面上出現的某些頁面上隱藏div。我已經使用一些PHP和CSS來分配每個頁面的唯一代碼,但我無法得到正確的CSS來隱藏或從這些網頁中刪除div。Joomla 3隱藏來自特定頁面的內容

.pageid111 .logo{ 
    display: none; 
    } 

是我正在嘗試使用。希望得到任何幫助

+0

你是什麼意思與「來自特定頁面」? 您是否試圖在主頁上隱藏徽標? – alfredopacino

+0

好的。我在主頁上有徽標,但不希望它出現在我們的頁面上 –

+0

您的HTML看起來像什麼?具體來說,PHP爲每個頁面分配一個唯一代碼的HTML代碼行是什麼樣的?在主頁的html中放置一個主頁類可能會更容易。 – gaynorvader

回答

1

相反直接在所有文件中調用徽標,您可以創建一個模塊並在需要時顯示它。您必須更改模板文件中的一些代碼。我會舉一個例子,以便您可以爲自己的模板做到這一點。

如果您看到Joomla附帶的默認模板protostar。它有一個名爲index.php的文件。 $徽標在行號67-78處定義爲

// Logo file or site title param 
if ($this->params->get('logoFile')) 
{ 
    $logo = '<img src="' . JUri::root() . $this->params->get('logoFile') . '" alt="' . $sitename . '" />'; 
} 
elseif ($this->params->get('sitetitle')) 
{ 
    $logo = '<span class="site-title" title="' . $sitename . '">' . htmlspecialchars($this->params->get('sitetitle')) . '</span>'; 
} 
else 
{ 
    $logo = '<span class="site-title" title="' . $sitename . '">' . $sitename . '</span>'; 
} 

您可以對此進行註釋。

下一頁上的同一個文件下面一點左右線140,你會發現這段代碼

<?php echo $logo; ?> 

此代碼調用徽標文件。只需將此代碼替換爲

<jdoc:include type="modules" name="logo" style="xhtml" /> 

您剛添加了帶有名稱徽標的新模塊位置。

這不會反映,直到您在templateDetails.xml文件中添加這個位置

,如果你打開文件,你會發現這些線

<positions> 
     <position>banner</position> 
     <position>debug</position> 
     <position>position-0</position> 
     <position>position-1</position> 
     ............. 
</positions> 

新增標誌位置到

<positions> 
     <position>banner</position> 
     <position>debug</position> 
     <position>logo</position> 
     <position>position-0</position> 
     <position>position-1</position> 
     ............. 
</positions> 

所以你現在有一個額外的模塊位置來代替硬編碼的標識圖像。你可以放置任何圖像模塊,或者只是創建一個html模塊。