6

在 EE 1 下,我能够破解源代码以允许我保留标题的确切大小写的 url 标题。也就是说,我能够阻止它强制所有 url 标题为小写。

我需要在 EE 2 上复制相同的行为,但到目前为止我还没有完全管理。

到目前为止我所做的是:

In <system>/expressionengine/modules/channel/mod.channel_standalone.php:

commented out this line: NewText = NewText.toLowerCase();

added “A-Z” to this line: NewText = NewText.replace(/[^a-z0-9-_]/g,’‘);

In <system>/expressionengine/helpers/EE_url_helper.php:

removed strtolower() from this section:

  if ($lowercase === TRUE)
  {
  $str = strtolower($str);
  }

added “A-Z” to this line: [^a-z0-9\-\._]

我不确定是否真的需要所有这些更改,但我认为是的。从外观上看,mod.channel_standalone.php 的更改应该处理通过独立输入表单提交的任何提交,而对 EE_url_helper.php 的更改应该处理常规发布。

它几乎可以,除了实时 URL。我键入标题时生成的 URL 以小写形式生成。但是,如果我在保存帖子之前将其删除,它会在 url 标题中以与标题相同的大小写保存帖子。至少,它在大多数情况下都是这样做的。有时,它确实会使用小写 url 保存。

如果有人能告诉我如何让实时 URL 标题也能合作,我将不胜感激。

4

1 回答 1

5

这发生在themes/javascript/compressed/jquery/plugins/ee_url_title.js.

由于 Javascript 是压缩的,因此可能有点难以找到,但您要编辑的表达式是:a = (k + a).toLowerCase().replace(d, c);

于 2012-11-04T03:32:35.993 回答