非拉丁字符的WordPress插件问题 时间:2012-05-08 作者:CodeOverload 我在WP中使用permalinks作为:domain.com/category/post_name问题是,帖子名称有非拉丁字符,如汉语、希伯来语和阿拉伯语。所以它将它们编码为:%20%18%6b%20 因此,它将每个符号的字符计算为实际字符,最终长度是截断一些非常短的段塞的3倍。如何解决这个问题?或者至少如何延长长度限制?我已经尝试将数据库字段“post\\u name”的长度从200扩展到500,但它仍然是短截短的。 2 个回复 最合适的回答,由SO网友:sam 整理而成 Permalinks类http://example/שָׁלוֹם 实际上是在我的WordPress 3.3中工作。可能是remove_accents() improvements for i18n permalinks.作为Sean&;Steve指出,确保您使用的是WordPress≥ 3.3确保您的。htaccess文件包含类似于以下内容的规则RewriteRule . /index.php [L]检查您的数据库是否为UTF-8编码(以及consider converting to UTF-8 如果没有)[下面是我的原始答案,现在不太相关,但可能仍然有用:]看见http://queryposts.com/function/sanitize_title/http://queryposts.com/function/remove_accents/http://queryposts.com/function/esc_url/如果您的帖子标题包含一些ASCII字符,您可以strip out non-ASCII characters when generating post slugs.一些插件可能会有帮助:http://wordpress.org/extend/plugins/strings-sanitizer/ 在上传过程中,积极清理干净、SEO友好的帖子标题和媒体文件名。通过转换常见的重音UTF-8字符,以及一些特殊的西里尔文、希伯来文、西班牙语和德语字符来工作。http://wordpress.org/extend/plugins/universal-slugs/ […]如果你说的语言使用的是英文字母表中没有的字符,那么你要么不得不忍受大量的、看起来奇怪的永久链接,要么在你写文章或页面时手动更新每个链接。[…]该插件还将从URL中删除常见单词,如“and”、“και”、“το”、“The”等,因为它们只会增加URL长度,而不会增加任何含义或SEO值。http://wordpress.org/extend/plugins/pinyin-slug/ 例如,当您发布标题为“汉语拼音”的帖子时,Wordpress会自动为您的帖子分配一个长文件名,称为帖子slug:/%e4%b8%ad%e6%96%87%e6%8b%bc%e9%9f%b3 […]激活汉语拼音插件后,我们的示例博客帖子的slug如下所示:/zhongwenpinyinhttp://wordpress.org/extend/plugins/remove-utf-8-from-slug/ 将所有UTF-8从标题中删除到永久链接http://wordpress.org/extend/plugins/pinyin-seo/ 将汉字转换为拼音永久拼音。此外,一些多语言插件可能能够自动将你的鼻涕虫翻译成英语(因此只能翻译成拉丁文字符),但我没有使用任何一个,所以我不确定。 SO网友:Jacek Kaniuk 除了消毒之外,扩展slug长度的唯一方法是修改WP代码在文件中wp-includes/formatting.php:代替200 因此:$title = utf8_uri_encode($title, 200); 在文件中:wp-includes/post.php 使用以下内容搜索3行:$alt_post_name = substr( $slug, 0, 200 - ( strlen( $suffix ) + 1 ) ) . "-$suffix"; 每次WP更新都会发现问题 结束 文章导航