Pergunta

I want my li menu link to be selected when I'm on www.example.com/folder1/?page=1

And it works when I have:

$current_page = $_SERVER['REQUEST_URI'];
echo ($current_page == '/folder1/' || isset($_GET['page'])) ? ' class="selected"' : '';

But I also have page like: www.example.com/folder2/?page=1 and when I'm on folder1 or folder2 page and $_GET['page'] is set, both li menu links are selected, I want only one to be selected.

How can I have selected only one li link when $_GET['page'] is set?

Foi útil?

Solução

Not an elegant way by any stretch, but here's a fix for your routine.

preg_match("/\/(.+?)(\/(.+?))?$/", $_SERVER['REQUEST_URI'], $m);
$current_page = !empty($m[1]) ? $m[1] : '';

echo $current_page == 'folder1' ? ' class="selected"' : '';
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top