Wordpress 弹头变音变音

Posted

技术标签:

【中文标题】Wordpress 弹头变音变音【英文标题】:Wordpress Slug Umlaut 【发布时间】:2015-08-21 18:13:57 【问题描述】:

我有两个相互关联的问题!

如何让 slugs 为漂亮的 URL 工作,例如:ä、ü、ö、â、á 或那里曾经存在的任何东西。

我不希望他们重写它!我真的很想让它与它一起工作。我发现的唯一方法是一个名为 123Echt Laut 的过时插件,它仍然可以工作,但我更喜欢有一些最新的东西,或者让它工作的 php 代码无需将其从例如 ä 重写为 ae!我希望 ä 在 url 中显示为 ä!

另外我想找回那个蛞蝓……我在谷歌上发现的是这样的:

?php global $post;
$post_slug=$post->post_name;?>

我想让它检索单词:fünkel 我得到的是:f%c3%bcnkel

【问题讨论】:

URL 中的元音变音,真的吗? @Unheilig - 为什么不呢? cira.ca/news/ca-takes-french-accent 我只是好奇/好奇。通常,德语变音符号可以等效地替换/表示为添加 -e 结尾(与带有“ss”的 ß 相同),而法语口音或西班牙语不能,因此(对我而言)URL 有法语口音是合理的,因为它们不像德语变音符号那样用英语表示。我也很想知道如何做到这一点。 对不起。我以为你指的是在 URL 中有重音符号。 【参考方案1】:

这可能是 this post 的副本,尽管它在 WordPress Stack Exchange 上。事实上,这个问题也应该在那里发布,因为它在技术上是一个 WordPress 问题。话虽如此,我认为这是您正在寻找的答案。

remove_filter( 'sanitize_title', 'sanitize_title_with_dashes');
add_filter( 'sanitize_title', 'restore_raw_title', 9, 3 );
function sweURLtoCHAR($text)

  $url=array(
    "%C3%84","%C3%A4",
    "%C3%9C","%C3%BC",
    "%C3%96","%C3%B6",
    "%C3%82","%C3%A2",
    "%C3%81","%C3%A1"
  );
  $char=array(
     "Ä","ä",
     "Ü","ü",
     "Ö","ö",
     "Â","â",
     "Á","á"
  );
  $str = str_replace($char,$url,$text);
  $str_new = str_replace(" ", "", $str);
  return strtolower($str_new);

function restore_raw_title( $title, $raw_title, $context ) 
  if ( $context == 'save' )
   return sweURLtoCHAR($raw_title);
  else 
   $title_new = str_replace(" ", "", $title);
   return strtolower($title_new);
  

编辑:哦,要从“f%c3%bcnkel”获取“fünkel”,请使用urldecode()。就此而言,想想看,您也许可以用类似这样的东西(未经测试)替换 sweURLtoCHAR 函数:

function sweURLtoCHAR($text)

  $str = urldecode($text);
  $str_new = str_replace(" ", "", $str);
  return strtolower($str_new);

【讨论】:

以上是关于Wordpress 弹头变音变音的主要内容,如果未能解决你的问题,请参考以下文章

Wordpress 5.4。 REST API通过子弹无法工作

wordpress打开速度变慢怎么解决

主要解决录音时候不能让当前app内音外放

Wordpress网站变灰/黑白主题

WordPress响应时间突然变慢了怎么回事

妈蛋,googleapi用不了了,wordpress博客加载超慢,怎么破