首页 > 解决方案 > 网站切换到其他语言时如何禁用图片链接?

问题描述

当网站导航出原始语言时,我正在尝试禁用图像链接。它的 wordpress 和我正在使用 Polylang 进行翻译。该网站使用葡萄牙语、英语、德语和法语。无论语言如何,我都有一个位于通用包装中的小部件。该小部件显示带有指向使用类(class =“modal-link”)的插件命令的弹出窗口的链接的图像不能禁用该类,因为它会破坏其他页面中的链接。切换到英语/德语/法语时,我需要禁用链接。

小部件中的代码是这样的:

<a class="modal-link" href="http://moldetefa.com/wp2018/index.php/pt2020/">
<img border="0" alt="Centro2020" src="http://moldetefa.com/wp2018/wp- 
content/uploads/2018/08/c2020.png"></a>
<a class="modal-link" href="http://moldetefa.com/wp2018/index.php/pt2020/">
<img border="0" alt="Portugal2020" src="http://moldetefa.com/wp2018/wp- 
content/uploads/2018/08/pt_2020.png"></a>
<a class="modal-link" href="http://moldetefa.com/wp2018/index.php/pt2020/">
<img border="0" alt="FEDR" src="http://moldetefa.com/wp2018/wp- 
content/uploads/2018/08/FEDR.png"></a>

这个 CSS 有效,但我不知道如何只用特定语言调用它

[href="http://moldetefa.com/wp2018/index.php/pt2020/"]{
pointer-events: none;
}

此 CSS 仅适用于在该语言下执行操作,但我不知道如何编写代码来禁用该特定链接。

:lang(en)   {

}

刚做了这个,它奏效了!:O

:lang(en) > [href="http://moldetefa.com/wp2018/index.php/pt2020/"]{
pointer-events: none;
}   

有什么想法吗?谢谢JF

标签: wordpresshyperlinkpolylangdisable

解决方案


您可以尝试什么,在您的 functions.php 文件中添加一个小函数来检查当前语言并返回一些内容:

function check_languages($pt, $fr, $en, de) {
    $cuurent_language = get_locale();
    if($cuurent_language == 'pt_PT'){
        return $pt;
    }
    if($cuurent_language == 'fr_FR'){
        return $fr;
    }
    if($cuurent_language == 'en_GB'){
        return $en;
    }
    if($cuurent_language == 'de_DE'){
        return $de;
    }
}

由于英语、法语等有超过 1 个语言环境,您可以检查 Polilang 中所选语言的当前版本 - http://joxi.ru/Vm6ZjvEHDqeMkm 并在需要时在此示例函数中替换它。添加此功能后,您可以像这样使用它:

<a class="<?=check_languages('modal-link', '', '', '');?>" href="http://moldetefa.com/wp2018/index.php/pt2020/">
<img border="0" alt="Centro2020" src="http://moldetefa.com/wp2018/wp- 
content/uploads/2018/08/c2020.png"></a>

因此,对于葡萄牙语,您将添加模态类,对于其他语言 - 没有任何内容或您放置的任何类。我能想到的另一个选择是使用Polilang 字符串翻译(比自定义函数更好,如果您的模板中有很多字符串需要翻译)并注册一个字符串,例如:

<a class="<?pll_e('modal-link');?>" href="http://moldetefa.com/wp2018/index.php/pt2020/">
<img border="0" alt="Centro2020" src="http://moldetefa.com/wp2018/wp- 
content/uploads/2018/08/c2020.png"></a>

在 Polilang 中的字符串翻译之后,您将只为葡萄牙语离开课程。如果您想尝试使用 jQuery,请在主页模板文件的末尾添加以下内容:

<script>
    if($('html').attr('lang') !== 'pt-PT'){
      $(".modal-link").css("pointer-events", "none !important");
    }
<\script>

推荐阅读