在 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 标题以进行合作,我将不胜感激。
最佳答案
这发生在 themes/javascript/compressed/jquery/plugins/ee_url_title.js
.
由于 Javascript 被压缩,因此可能有点难以找到,但您要编辑的表达式是:a = (k + a).toLowerCase().replace(d, c);
关于expressionengine - 在 ExpressionEngine 中保留标题的大小写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13213985/