“从最常用的标签中选择”按钮显示“未找到标签”,而不是显示最常用的标签

问题描述 投票:0回答:1

在WordPress后端中添加或编辑帖子时,我无法向帖子添加(分配)标签。当我单击“从最常用的标签中选择”按钮时,它显示“未找到标签”。但是,已经有十几个标签已添加到其他帖子中。使用文本框添加标签也不起作用。

仅当我更新WPML插件后,才会发生此问题。在更新插件之前,这已正常工作。我在网上搜索,但仍然无法解决该问题。

我需要更改或配置什么才能使添加标签功能再次与WPML插件结合使用?

php wordpress wpml
1个回答
1
投票

我已经解决了这个问题。默认情况下,我使用的WPML插件版本似乎存在此问题。

为了解决此问题,我在WPML插件(我开发的插件)之外添加了以下代码。

    // Code to fix 'No tags found' issue in admin backend
add_filter('icl_current_language', 'icl_current_language_preview_hack_filter_func',200);
function icl_current_language_preview_hack_filter_func($lang){

    if(isset($_GET['lang'])){
        $lang = esc_html($_GET['lang']);
    }
    elseif(isset($_COOKIE['_icl_current_admin_language']))
    {
        $lang=$_COOKIE['_icl_current_admin_language'];
    }
    else
    {
        $lang="en";
    }
    return $lang;
}

上面的代码可以添加到任何插件中。

说明当我们尝试向帖子添加标签时,WPML插件尝试获取当前所选语言的标签。默认情况下,对于每个操作,WPML都会将当前语言存储在Cookie中,并在需要时进行检索。但是在这种情况下,我不知道为什么WPML从$ _GET而不是Cookie获取当前语言,而$ _GET什么也不返回。

因此,如果$ _GET中没有当前语言,则通过使用Cookie提取当前语言来调整代码。

希望此答案对某些遇到此问题的人有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.