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; }
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; }
public static function getUrlString($string) { global $REX; return strtolower(seo42_parse_article_name($string, $REX['ARTICLE_ID'], $REX['CUR_CLANG'])); }