Рассмотрим одно из регулярных выражений, обрабатывающих URL:
<?php
if (preg_match('#/page/([a-z0-9_-]+)#', $url, $params)) {
$page = include 'view/page/show.php';
}
?>
В данном случае получается, что наш параметр попадает в карман. Затем мы вытаскиваем значение параметра из кармана по его номеру:
<?php
$slug = $params[1];
?>
Это на самом деле не очень красиво, особенно если параметров будет несколько. Более удачной идеей будет сделать параметры с именами вместо номеров. Для этого используем именованные карманы в нашей регулярке:
<?php
if (preg_match('#/page/(?<slug>[a-z0-9_-]+)#', $url, $params)) {
$page = include 'view/page/show.php';
}
?>
В таком случае мы сможем получить значение параметра по его имени:
<?php
$slug = $params['slug'];
?>
Переделайте параметры в роутах вашего движка на именованные.