Panowie chcę usunąć spacje i polskie znaki z adresów.
Funkcja odpowiedzialna za adresy:
public function get_blog_url($query=FALSE)
{
$blogurl = $this->getSettingsData("blogurl");
$data = getXML(GSDATAPAGESPATH . $blogurl . '.xml');
$url = find_url($blogurl, $data->parent);
if($query)
{
if($query == 'rss')
{
$url = $SITEURL.'plugins/blog/rss.php';
}
elseif($PRETTYURLS == 1 && $this->getSettingsData("prettyurls") == 'Y')
{
$url .= $query . '/';
}
elseif($blogurl == 'index')
{
$url = $SITEURL . "index.php?$query=";
}
else
{
$url = $SITEURL . "index.php?id=$blogurl&$query=";
}
}
return $url;
}
Niestety nie funkcjonuje poprawnie gdyż adresy są ze spacjami i z polskimi znakami...
Poniżej mam funkcję która działa w innym serwisie:
$id = lowercase($id);
} else {
$id = "index";
}
I ta funkcja działa prawidłowo. Polskie znaki zamieniane są na zwykłe litery bez ogonków a spacje na myślinki.
I teraz pytanie jak dodać do tego pierwszego skryptu dodatki aby linki nie miały polskich znaków a spacje były zamieniane na myśliniki.
W htaccess mam coś takiego:
RewriteEngine on
# Usually RewriteBase is just '/', but
# replace it with your subdirectory path
RewriteBase /
RewriteRule ^post/([^/.]+)/?$ index.php?id=index&post=$1 [L]
RewriteRule ^tag/([^/.]+)/?$ index.php?id=index&tag=$1 [L]
RewriteRule ^page/([^/.]+)/?$ index.php?id=index&page=$1 [L]
RewriteRule ^archive/([^/.]+)/?$ index.php?id=index&archive=$1 [L]
RewriteRule ^category/([^/.]+)/?$ index.php?id=index&category=$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule /?([A-Za-z0-9_-]+)/?$ index.php?id=$1 [QSA,L]
Może ktoś zerknąć i nakierować?