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ć?