繁体   English   中英

在WordPress的PHP中添加前导和尾随空间

[英]adding a leading and trailing space in wordpress php

我使用以下代码:

<ul class="login-links">
    <li>
        <a href="/wp-login.php?redirect_to=<?php echo $_SERVER['REQUEST_URI']; ?>" class="simplemodal-login"><?php printf(__("Login"))?></a>
        <span id="space-login-string"><?php printf(__(" or "));?></span>
        <a href="/wp-login.php?action=register" class="simplemodal-register"><?php printf(__("Register"))?></a>
    </li>
</ul>

它是句子的一部分,必须由WPML翻译。
它应该看起来像这样:登录或注册

有谁知道为什么要修剪前后空间,因此看起来像这样:LOGINORREGISTER

它必须很简单,但是,愚蠢的我,我找不到它。 请帮忙。

有两种可能性:

  1. 函数__()可能会自行修剪输出或输入。
  2. 翻译的字符串中缺少空格。

恕我直言,空格不应位于要翻译的字符串中,因为只有“或”需要翻译,并且确保插入的空格不是翻译人员的工作。

编辑:事实证明,问题在于三个元素Login,or和Register向左浮动。 这将导致空格被忽略。

为了在将三个元素保持在一行中的同时保留空间,请对所有三个元素进行display: inline; 而不是浮动。

您应该参考I18n for WordPress Developers文档 使用printf()实现此目的的正确方法是:

printf( __( 'LOGIN %d REGISTER.', 'your-text-domain' ), 'or' );

您还可以通过许多其他方式来执行此操作,例如使用_e()__()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM