PDA

View Full Version : Custom Menu - How add a class to current page?


sergio00
09-24-2013, 01:50 PM
Hi!

I have a simple custom menĂº at my Header linked to the most important parts of my forum.

( for example: Calendar.php , forumdisplay.php?f=7, etc etc ).

For this, I have a list

<ul class="header-buttons">
<li><a href="video.php" class="videos"></a></li>
<li><a href="calendar.php" class="calendar"></a></li>
<li><a href="forumdisplay.php?f=7" class="articles"></a></li>

</li>

How can add a new class to the current page when I visit it?. For example hightlight the text?

.currentclass {
font-weight: bold;
}

Exist a conditional class? a Script? a PHP code to add this new class?

BEst regards!

kh99
09-28-2013, 01:17 PM
If you know the value of THIS_SCRIPT for each page (should be defined near the beginning of the php script), then you should be able to do something like:
<li><a href="video.php" class="videos<if condition="THIS_SCRIPT == 'video'"> currentclass</if>"></a></li>
<li><a href="calendar.php" class="calendar<if condition="THIS_SCRIPT == 'calendar'"> currentclass</if>"></a></li>
<li><a href="forumdisplay.php?f=7" class="articles<if condition="THIS_SCRIPT == 'forumdisplay' && $GLOBALS['forumid'] == 7"> currentclass</if>"></a></li>


I just guessed at the conditions, you might have to adjust them. There is no video.php in the original vb files, so if that's a custom script you might have to add a definition for THIS_SCRIPT if it doesn't have one already.

Also, you need to add your CSS for currentclass somewhere, maybe add it to the additional.css template.

sergio00
09-28-2013, 01:45 PM
If you know the value of THIS_SCRIPT for each page (should be defined near the beginning of the php script), then you should be able to do something like:
<li><a href="video.php" class="videos<if condition="THIS_SCRIPT == 'video'"> currentclass</if>"></a></li>
<li><a href="calendar.php" class="calendar<if condition="THIS_SCRIPT == 'calendar'"> currentclass</if>"></a></li>
<li><a href="forumdisplay.php?f=7" class="articles<if condition="THIS_SCRIPT == 'forumdisplay' && $GLOBALS['forumid'] == 7"> currentclass</if>"></a></li>


I just guessed at the conditions, you might have to adjust them. There is no video.php in the original vb files, so if that's a custom script you might have to add a definition for THIS_SCRIPT if it doesn't have one already.

Also, you need to add your CSS for currentclass somewhere, maybe add it to the additional.css template.
THanks!!!!!!!!!!!!!!!!!!!!!!!!:up::up::up::up::up: