【问题标题】:SEO Friendly links, js and/or php strippingSEO 友好链接、js 和/或 php 剥离
【发布时间】:2026-01-10 01:40:01
【问题描述】:

我已经看到这是在 wordpress 上完成的,但我无法访问 wordpress :)

但我需要返回一个 url 字符串,从中删除任何无效字符并将一些字符转换为适当的字符:)

例如

1+ characters should be converted (of the following)

[space]        = [dash] (1 dash) >>> (-)
[underscore]   = [dash] (1 dash) >>> (-)
$str = 'Hello WORLD this is a bad string';
$str = convert_str_to_url($str);
//output//NOTE: caps have are lowercase :)
//hello-world-bad-string

并删除常见且无意义的单词,例如“the”,“a”,“in”等cc

如果你没有 gd 代码,至少给我指出正确的方向:)

【问题讨论】:

    标签: php javascript url seo


    【解决方案1】:

    【讨论】:

    • 我一读到“slugged link”就+1,这让我想起了我正在寻找的东西,哈哈:)
    • 另外一个是多语言支持吗?
    【解决方案2】:

    strtr 可用于此:

    $replace = array(
       ' ' => '-',
       '_' => '-',
       'the' => '',
       ...
    );
    
    $string = strtr($string, $replace);
    

    【讨论】:

      【解决方案3】:

      我将使用 str_replace() 函数创建一个函数。例如:

      $str = 'Sentence with some words';
      $str = strtolower($str);
      
      $searchNone = array('the', 'a', 'in');
      $replaceNone = '';
      
      $str = str_replace($searchNone, $replaceNone, $str);
      
      $search = array(chr(32)); //use ascii
      $replace = '-';    
      
      $str = str_replace($search, $replace, $str);
      
      echo $str;
      

      使用以下网站获取特殊字符:http://www.asciitable.com/

      【讨论】:

        【解决方案4】:

        可能是这样的:

        function PrettyUri($theUri)
        {
            $aToBeReplace = array(' then ', ' the ', ' an '
            , ' a ', ' is ', ' are ', ' ', '_');
            $aReplacements = array(' ', ' ', ' '
            , ' ', ' ', ' ', '-', '-');
            return str_replace($aToBeReplace, $aReplacements, strtolower($theUri));
        }
        
        
        echo  PrettyUri('Hello WORLD this is a bad string');
        

        【讨论】: