问题描述
当在URL中为页面上的帖子设置查询,然后通过polylang插件更改语言时,它将重置链接并摆脱参数和查询。该页面基于我开发的自定义主题的wordpress构建。 ./en/projects/?tag_kem_en%5B%5D=three-springs
更改为./projekty/
我使用以下代码更改语言:
pll_the_languages($args);
解决方法
您可以通过调整Polylang通过pll_the_languages()
提供的URL来包含查询参数。
我使用此代码段来工作。
/**
* Filter the translation url of the current page before Polylang caches it.
*
* @param null|string $url The translation url,null if none was found.
*/
function url_query_string( $url ) {
if ( ! empty( $_SERVER['QUERY_STRING'] ) ) {
return $url . '?' . $_SERVER['QUERY_STRING'];
}
return $url;
}
add_filter( 'pll_the_language_link','url_query_string' );
P.s确保为函数添加前缀或使用名称空间。