【问题标题】:Internationalization of Labels Inside PHP CodePHP 代码中标签的国际化
【发布时间】:2016-06-17 12:39:17
【问题描述】:

我正在尝试将旧版 Wordpress 主题转换为多语言支持。到目前为止,我已经设法让它与大多数部分一起工作,但是 single.php 文件包含一些我需要你帮助的代码。 例如:

<?php wp_link_pages(array('before' => '<p><strong>Pages:</strong> ', 'after' => '</p>', 'next_or_number' => 'number')); ?>

我想从上面的代码中提取“Pages”这个词。

还有

如何从上面的代码中提取静态文本,例如“您的姓名”、“您的电子邮件”等?

<div class='create-comment'>
                        <?php $comment_args = array( 'title_reply'=>'Write a response',

'fields' => apply_filters( 'comment_form_default_fields', array(

'author' => '<div class="row"><div class="form-group col-sm-6"><label for="author">Your name</label> <span>*</span> <input id="author" name="author" type="text" class ="form-control" value="" size="30" /></div>',   

'email'  => '<div class="form-group col-sm-6"><label for="email">Your email</label> <span>*</span> <input id="email" name="email" class ="form-control" type="text" value="" size="30" /></div></div>',

'url'    => '' ) ),

'comment_field' => '<div class="form-group"><label for="comment">Your comment</label>  <span>*</span>  <textarea id="comment" name="comment" class ="form-control"  cols="45" rows="4" aria-required="true"></textarea>' .

            '</div>',

'comment_notes_after' => '',

);

comment_form($comment_args); ?>
                     </div>
                </div>

如果文本不在 php 标记内,则以下代码有效。

<?php _e( 'Contact Us', 'themeName' ); ?>

有什么想法吗? 谢谢。

【问题讨论】:

    标签: php wordpress internationalization translation


    【解决方案1】:

    您应该使用placeholder method

    例子:

    'before' => sprintf( '<p><strong>%s:</strong> ', esc_html__('Pages', 'textdomain') ),
    

    【讨论】:

    • 以上适用于Pages字符串,第二个代码中的其他怎么样?我尝试使用占位符方法,但上传更新文件后网站崩溃。如果它与占位符方法不同,您能否也提供第二个代码的示例?
    • @idealidentity 为什么url 文件中有两个右括号?
    • 我自己不确定,我没有修改那部分。我应该删除其中一个并重新尝试您的建议吗?
    猜你喜欢
    • 2012-02-26
    • 2010-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-15
    • 1970-01-01
    • 2018-05-12
    • 2021-05-17
    相关资源
    最近更新 更多