/** * @param (string) $name - rawurlencoded post name or other slug (not permastruct). * @return string - multilingual urldecoded value for post name or other slug. */ function qtranxf_slug_multilingual($name) { global $q_config; $name = urldecode($name); $slugs = qtranxf_slug_get_translations(qtranxf_slug_encode($name)); if (empty($slugs)) { return $name; } foreach ($q_config['enabled_languages'] as $lang) { if (isset($slugs[$lang])) { //$slugs[$lang] = urldecode($slugs[$lang]); } else { $slugs[$lang] = $name; } } return urldecode(qtranxf_join_b($slugs)); }
/** * @param (string) $path - arbitrary url. * @return array - subsequent rawurlencoded parts of $path between '/'. */ function qtranxf_slug_split_path($path) { $path = qtranxf_slug_encode($path); //$path = rawurlencode(urldecode($path)); //$path = str_replace('%2F', '/', $path); //$path = str_replace('%20', ' ', $path); $slugs = explode('/', $path); //foreach($slugs as $k => $v){ // if(empty($v)) unset($slugs[$k]); //} return $slugs; }