W systemach zarządzania treścią adresy URL często nie zawsze są ustalane z wyprzedzeniem i dlatego nie są tworzone statycznie z wyprzedzeniem (jako wkład lub pozycja menu), ale adresują obiekty z bazy danych. Podobnie jak w przypadku WordPressa ( jak opisano tutaj ), w Joomla można również budować dynamiczne struktury adresów URL (niezależnie od wewnętrznego systemu aliasów). Można tutaj użyć JRoutera - lub można użyć jednowierszowego pliku .htaccess.
Najpierw utwórz pozycję menu (np. Z aliasem „podfolder”) i pozwól jej wskazywać na przygotowany artykuł (np. O ID 1337). Następnie ustaw następującą regułę w .htaccess bezpośrednio po linii wprowadzającej RewriteEngine On:
RewriteRule ^subfolder/([^/]*)\.html$ /index.php?option=com_content&view=article&id=1337&name=$1 [L]
Następnie otrzymasz adres URL po wywołaniu
https://tld.com/subfolder/foo.html
zawartość strony
https://tld.com/subfolder/?name=foo
W powyższym artykule (lub modułach połączonych z pozycją menu) dokładny adres URL można łatwo sprawdzić za pomocą $ _GET ["name"]. Jeśli pracujesz z IIS zamiast Apache, dodaj następującą instrukcję do odpowiednika .htaccess (w web.config):
<rule name="custom route 1" stopProcessing="true">
<match url="^subfolder/([^/]*)\.html$" ignoreCase="false" />
<action type="Rewrite" url="/index.php?option=com_content&view=article&id=1337&name={R:1}" appendQueryString="false" />
</rule>