从类别基准和标记基准中删除尾部斜杠

时间:2017-05-05 作者:RT Cunningham

我正在使用WordPress开发一个自定义静态站点生成器。我不知道如何删除类别基和标记基之后的斜杠。我想用破折号替换每个破折号。

我目前使用的是一个后处理PHP脚本和str\\u替换,但这意味着我只能在那里使用硬代码(现在是“category”和“tag”)。

有什么建议吗?

1 个回复
SO网友:RT Cunningham

我做了大量的挖掘工作,我想出了这段代码来解决这个问题,并将“.html”添加到页面、类别和标记中。permalink设置负责POST。

function hpct_page_rewrite($rules) {
  foreach ($rules as $key => $value) {
    $newrules[str_replace(\'/?\', \'.html\', $key)] = $value;
  }
  return $newrules;
}
function hpct_page_link($link) {
  return $link . \'.html\';
}
function hpct_category_rewrite($rules) {
  foreach ($rules as $key => $value) {
    $newrules[str_replace(\'/?\', \'.html\', $key)] = $value;
  }
  return $newrules;
}
function hpct_category_link($link) {
  return str_replace(\'category/\', \'category-\', $link) . \'.html\';
}
function hpct_tag_rewrite($rules) {
  foreach ( $rules as $key => $value ) {
    $newrules[str_replace(\'/?\', \'.html\', $key)] = $value;
  }
  return $newrules;
}
function hpct_tag_link($link) {
  return str_replace(\'tag/\', \'tag-\', $link) . \'.html\';
}
add_filter(\'page_rewrite_rules\', \'hpct_page_rewrite\', 3);
add_filter(\'page_link\', \'hpct_page_link\', 1);
add_filter(\'category_rewrite_rules\', \'hpct_category_rewrite\', 3);
add_filter(\'category_link\', \'hpct_category_link\', 1);
add_filter(\'tag_rewrite_rules\', \'hpct_tag_rewrite\', 3);
add_filter(\'tag_link\', \'hpct_tag_link\', 1);
是的,它也是硬编码的,我最终会处理好的。但至少我可以在WordPress中做到这一点。

相关推荐

Two urls for one website

我有一位客户,他用一个名为“firstname lastname.ch”的url开始了他的小生意。因为他很幸运能够成长,现在需要一个合适的URL,所以他希望自己的网站有另一个URL,名为“businessype lastname.ch”在没有太多管理和SEO问题的情况下,实现这一目标的最佳方式是什么。谢谢