- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有这个网站:
example.com/watches( watch 是自定义帖子类型)
有两种可用语言:EN(默认语言)、GR。
当我更改为 GR 时(在页面 example.com/watches 上时) 它重定向到 example.com/el/watches 这是正确的。
当我在 example.com/watches/rolex 上时,我尝试更改语言,它会重定向到 example.com/el/taxwatches/rolex-el 但我希望它只是 example.com/el/watches/rolex/。
taxwatches 是我的自定义分类法。
rolex-el 是该分类中该术语的别名。
有人遇到过这样的问题吗?
我尝试再次保存永久链接并检查我的 WMPL 设置,但我看不出有什么问题。
编辑1:如果我手动转到example.com/el/watches/rolex,它将正常工作。example.com/el/watches/rolex 和 example.com/el/taxwatches/rolex-el 都可以。
编辑2:据我了解,WPML 采用段头,有没有办法更改它,以便它采用名称?
最佳答案
好的,对于任何在使用多语言网站时遇到问题 - 但希望在网址中拥有“相同的 slugs”(永远不会是相同的 slugs - 但看起来像那样)的人,请阅读以下内容。
WPML 使用从 WordPress 核心结构创建的 slugs - 不能有两个名称完全相同的 slugs。如果默认语言是 EN 并且您有辅助语言(在我的例子中是 GR),那么一个 slug 将是“myslug”,另一个是“myslug-gr”(您可以通过 WPML 设置自定义此“-gr”)。
在functions.php中,您可以过滤创建语言切换器时触发的“wpml_ls_filter”函数。
代码如下:
add_filter('icl_ls_languages', 'wpml_ls_filter');
function wpml_ls_filter($languages) {
foreach ($languages as $lang_code => $language) {
$mTempString = $languages[$lang_code]['url'];
echo $mTempString; // HERE
// If "tax" is found in that string, replace it with "" - remove it.
if (strpos($mTempString, "tax") !== false) {
$languages[$lang_code]['url'] = str_replace("tax", "", $mTempString);
}
}
return $languages;
}
上面的 echo
将向您显示每次访问页面/帖子时按下每种语言按钮时创建的 URL(并且您可以操作它)。
我还没有写出完整的解决方案,因为这实际上取决于您想要做什么。例如,上面的代码帮助我删除了在网址中找到的“tax”。
关于wordpress - WPML 相同的 slug(url) 不同的语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42577302/
在使用 get_posts() 时,您必须已经知道在 WordPress 中或 query_posts() 甚至 WP_Query ,无法通过按照我们想要的顺序指定帖子 ID 列表来对返回的帖子进行排
我正在尝试通过 ICL_LANGUAGE_CODE 获取当前语言代码在我的插件中 但我不能,它没有定义,这个结果 echo "Code: ".ICL_LANGUAGE_CODE; 是 Code: IC
我正在将 WPML 3.0.2-a 与 WordPress 3.8.1 结合使用 我定义了一个自定义帖子类型,如下所示: function add_custom_posts(){ $args
我尝试使用此代码检索当前的 ICL 语言,但它不起作用。 var getLangCode = ''; alert(getLangCode); 你知道如何使用 javascript 获取当前语言代码吗?
我正在使用 Woocommerce 插件和 WPML 多语言插件,但我无法像预期的那样开始工作。 我的产品有几个自定义字段,我需要在购物车、结帐、订单 View 和电子邮件通知中显示这些字段。 字段在
我正在使用 WPML 语言,但找不到下一步的解决方案: 在语言切换器上,我想隐藏语言,例如 - “he”,如果当前语言是“ar”,那么当我们在阿拉伯语网站上时,我们将不会在选择器上看到希伯来语,同样,
嗨,我正在使用 Timber,它曾经很简单 _e('string', 'theme') 用 WPML 翻译字符串,似乎没有在木材上工作关于如何翻译字符串的任何想法? 我尝试了以下方法,但没有任何效果
问题的简短描述 因此,问题基本上是,当我在带有wpml的网站的翻译版本中使用子类别时,它会生成404页面。在父类别中,我仍然可以看到该帖子并可以毫无问题地导航到该帖子。而且,在无翻译版本中,一切正常。
我正在使用带有 WPML 插件的 Wordpress(2 种语言)。我在所有页面的标题中执行以下 WP_Query 以获取我的自定义帖子类型(幻灯片)的结果: $slideshow = new WP_
我全新安装了 wordpress,我在 functions.php 中写了一些快速重写规则,如下所示 - // "rewrite" /assets/xyz to /assets/?asset=xyz
无论我是在法语版还是英语版的页面上使用它,wp_query() 都会返回所有语言的自定义帖子类型,而不仅仅是当前的。 Get_posts() 也做同样的事情。 当我访问我的法语页面时,我希望他们只返回
嗯,我的多语言 WordPress 网站的 header.php 中有这个 javascript 代码: 0 && height > 0){ var finalBmi = weight/(heig
我有一个 WordPress 项目,用于多语言、多国家/地区的网站。 我想要这样的结构: domain.com domain.com/es domain.com/de domain.com/fr do
我通过以下教程学习了如何制作自定义帖子类型: http://sixrevisions.com/wordpress/wordpress-custom-post-types-guide/ 它基本上包括将此
我正在开发一个与 WordPress 数据库配合使用的 Web 应用程序。在我的网站(与 WooCommerce 和 WPML 配合使用)中,我有两种语言的产品 - 英语(第一)、塞尔维亚语(第二)。
我已经在 WPML 论坛上提出了这个问题,但希望这里有人能够提供帮助。 我正在尝试为自定义帖子类型翻译 slug 英文网址为http://brigade-electronics.com/nl/prod
我在使用带有 WPML 的 wordpress 时遇到了一个小问题。以前的网站有这种格式的 url: domain.com/lang/title-inglish.html 例如: -> domain.
我有这个网站: example.com/watches( watch 是自定义帖子类型) 有两种可用语言:EN(默认语言)、GR。 当我更改为 GR 时(在页面 example.com/watches
是否可以在 jQuery 中实现 wordpress 函数 (_e) 以使用 WPML 翻译字符串?我想用 jQuery 将一些文本放在一些 div 中,并能够用 WPML 翻译这个字符串。 $('#
我正在使用 trego 主题。作为主题选项,您可以设置和更改将出现在站点中的文本(例如“版权文本”和“ Logo url”的文本)。我如何使用 WPML 制作多语言版本?我想通过 wpml-confi
我是一名优秀的程序员,十分优秀!