Ejemplo n.º 1
0
function seo42_appendToPath($path, $name, $article_id, $clang)
{
    global $REX;
    if ($name != '') {
        if (isset($REX['ADDON']['seo42']['settings']['lang'][$clang]['rewrite_mode']) && $REX['ADDON']['seo42']['settings']['lang'][$clang]['rewrite_mode'] == SEO42_REWRITEMODE_URLENCODE) {
            // trim stuff
            $name = trim($name, " \t\r\n.");
            $name = preg_replace('/ {2,}/', ' ', $name);
            // convert multiple spaces to one
            $name = str_replace(' ', $REX['ADDON']['seo42']['settings']['urlencode_whitespace_replace'], $name);
            // spaces
            $name = str_replace('/', $REX['ADDON']['seo42']['settings']['urlencode_whitespace_replace'], $name);
            // slashes
            $name = str_replace('-', $REX['ADDON']['seo42']['settings']['urlencode_whitespace_replace'], $name);
            // dashes
            $name = preg_replace('/' . $REX['ADDON']['seo42']['settings']['urlencode_whitespace_replace'] . '{2,}/', $REX['ADDON']['seo42']['settings']['urlencode_whitespace_replace'], $name);
            // convert multiple whitespaces replacments to one
            // lowercase conversion
            if ($REX['ADDON']['seo42']['settings']['urlencode_lowercase']) {
                $name = mb_strtolower($name, 'UTF-8');
            }
            // finally do url encode
            $name = rawurlencode($name);
        } else {
            $name = strtolower(seo42_parse_article_name($name, $article_id, $clang));
            $name = str_replace('+', $REX['ADDON']['seo42']['settings']['url_whitespace_replace'], $name);
        }
        // SANITIZE LAST CHARACTER
        $name = rtrim($name, '-');
        $path .= $name . '/';
    }
    return $path;
}
Ejemplo n.º 2
0
 public static function parseInternalUrl($url)
 {
     global $REX;
     $sanitizedUrl = ltrim($url, './');
     $sanitizedUrlParts = explode('/', $sanitizedUrl);
     for ($i = 0; $i < count($sanitizedUrlParts); $i++) {
         $sanitizedUrlParts[$i] = seo42_parse_article_name($sanitizedUrlParts[$i], $REX['ARTICLE_ID'], $REX['CUR_CLANG']);
     }
     $sanitizedUrl = implode('/', $sanitizedUrlParts);
     $sanitizedUrl = strtolower($sanitizedUrl);
     $sanitizedUrl = str_replace('-htm', '.htm', $sanitizedUrl);
     return $sanitizedUrl;
 }
Ejemplo n.º 3
0
 public static function getUrlString($string)
 {
     global $REX;
     return strtolower(seo42_parse_article_name($string, $REX['ARTICLE_ID'], $REX['CUR_CLANG']));
 }