Come suggeritoti da Mavi94 puoi fare una cosa del genere:

Codice PHP:
<div class="section" id="portfolio">
<div id="galleria">
     <ul class="filtro">[*]
            <ul>
                <li class="segment-1 selected-1">[url="pagina.php"]Tutto[/url]
                <li class="segment-1">[url="pagina.php?categoria=loghi"]Loghi[/url]
                <li class="segment-1">[url="pagina.php?categoria=print"]Print[/url]
                <li class="segment-1">[url="pagina.php?categoria=web"]Web[/url][/list]
        [/list]
    <ul style="height: 500px;" id="list" class="image-grid">
    <?php
    $categoria 
"";

    if (isset(
$_GET['categoria'])) {
        
$categoria $_GET['categoria']."/";
    }
    
    
$dirlog 'images/portfolio/'.$categoria;
    
$scanlog scandir($dirlog);
    
$loghi 'class="loghi"';
    
$count 0;
    for (
$i 0$i<count($scanlog); $i++) {
        
    if (
$scanlog[$i] != '.' && $scanlog[$i] != '..') {
        if (
strpos($scanlog[$i], '.png') !== false) {
        
$count++;
            echo 
'
                <li data-id="id-' 
$count .'" ' $loghi .'>
                <a rel="lightbox" href="' 
$dirlog $scanlog[$i] . '" title="' $scanlog[$i] . '">
                <span class="rollover" ></span>
                [img]' 
$dirlog $scanlog[$i] . '[/img]
                </a>
                '
;
        }
    }
    }; 
    
?>[/list]
</div>
</div>
Dove pagina.php è il nome della pagina contenente lo script.

P.S.
Ovviamente andrebbero aggiunti dei controlli di sicurezza.