PHP 代码中标签的国际化
Internationalization of Labels Inside PHP Code
我正在尝试将旧版 Wordpress 主题转换为多语言支持。到目前为止,我已经设法让它与大部分部分一起工作,但是 single.php 文件包含一些代码,我需要你的帮助。
例如:
<?php wp_link_pages(array('before' => '<p><strong>Pages:</strong> ', 'after' => '</p>', 'next_or_number' => 'number')); ?>
我想从上面的代码中提取 "Pages" 个单词。
还有
如何从上面的代码中提取 "Your name"、"Your email" 等静态文本?
<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' ); ?>
有什么想法吗?
谢谢
你应该使用 placeholder method。
示例:
'before' => sprintf( '<p><strong>%s:</strong> ', esc_html__('Pages', 'textdomain') ),
我正在尝试将旧版 Wordpress 主题转换为多语言支持。到目前为止,我已经设法让它与大部分部分一起工作,但是 single.php 文件包含一些代码,我需要你的帮助。 例如:
<?php wp_link_pages(array('before' => '<p><strong>Pages:</strong> ', 'after' => '</p>', 'next_or_number' => 'number')); ?>
我想从上面的代码中提取 "Pages" 个单词。
还有
如何从上面的代码中提取 "Your name"、"Your email" 等静态文本?
<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' ); ?>
有什么想法吗? 谢谢
你应该使用 placeholder method。
示例:
'before' => sprintf( '<p><strong>%s:</strong> ', esc_html__('Pages', 'textdomain') ),