十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
你好!wordpress英文主题是可以汉化成中文主题的,下面是汉化工具以及方法:
创新互联长期为成百上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为延寿企业提供专业的成都网站设计、成都网站建设,延寿网站改版等技术服务。拥有十多年丰富建站经验和众多成功案例,为您定制开发。
汉化工具:
联网电脑一台
电脑软件:Poedit
汉化方法:
一般国外的英文主题会带有语言目录《languages》,用于储存各国语言文件的,打开主题包/languages目录,如下图:
英文主题里面都会有en_US。po这个文件的,用poedit打开这个文件,另存为zh_CN.po
备注:
中文的 Gettext 语言代码为 zh ,国别代码为 CN,所以最终保存的简体中文语言包为 zh_CN.po,POEdit 会自动生成一个名为 zh_CN.mo 的文件。
po 和 mo 的最直接的区别在于:po文件是给人看的,也是可以直接通过 POEdit 编辑的,mo 文件则是给服务器识别的,是用来显示翻译内容所必需的。
如图所示,红色框左边是源语言,右边就是翻译出来的中文,点击你想翻译的词条,逐条逐条翻译成中文,然后保存,wordpress会自动识别并且优先使用中文语言文件(因为你本地安装环境是中文的)
如果英文水平不是特别好的,建议下载pro破解版可以自动翻译,不用这么麻烦
wordpress中文主题和英文主题区别:
1、字符和字体库:因为英文字符和中文字符显示不同,浏览器对不同语言最小字符的支持也不同,所以默认英文字符大小并不适合中文字符。WordPress针对不同级别的标题,字符大小都有一定的规定,需要针对CSS类进行修改。比如斜体,英文字符斜体很正常,但是中文字体用斜体可能会导致看不清文字。
2、行距和段落距离:因为字符的原因,英文文章美观和中文文章美观,行距和段落距离标准是不一样的。
3、宽度和版面:国内访问者使用浏览器的情况非常复杂,IE各个版本,还有Chrome、Firefox、360浏览器等,这些浏览器对HTML 5、CSS3等网页代码解析能力不同,所以有时候比较旧版本浏览器有时候加载网页不正常。
1、 在comments.php评论表单中添加自己想要的字段,如:
电话
tabindex 这个属性按照从小到大排,为什么要这样?你可以自己试试….
2、如果评论表单是使用系统自带的,那么请用以下方法添加表单字段,如果不是,请略过
add_filter('comment_form_default_fields','comment_form_add_ewai');
function comment_form_add_ewai($fields) {
$label1 = __( '国家/地区' );
$label2 = __( 'Skype账号' );
$label3 = __( '电话' );
$label4 = __( '传真' );
$label5 = __( '地址' );
$value1 = isset($_POST['guojia']) ? $_POST['guojia'] : false;
$value2 = isset($_POST['skype']) ? $_POST['skype'] : false;
$value3 = isset($_POST['tel']) ? $_POST['tel'] : false;
$value4 = isset($_POST['fax']) ? $_POST['fax'] : false;
$value5 = isset($_POST['address']) ? $_POST['address'] : false;
$fields['guojia'] =HTML
{$label1}
HTML;
return $fields;
}
3、 接收表单字段并写入数据库
在主题目录的 functions.php添加以下代码
add_action('wp_insert_comment','wp_insert_tel',10,2);
function wp_insert_tel($comment_ID,$commmentdata) {
$tel = isset($_POST['tel']) ? $_POST['tel'] : false;
//_tel 是存储在数据库里的字段名字,取出数据的就会用到
update_comment_meta($comment_ID,'_tel',$tel);
}
这两步就可以将数据写入数据库了,不信你试试看
add_action()参数中的10和2分别表示该函数执行的优先级是10(默认值,值越小优先级越高),该函数接受2个参数。
4、在后台显示额外字段
前面两步只是接收和写入到数据库,那么要怎么在后台评论列表中显示呢?将以下代码复制到主题目录的functions.php 中:
add_filter( 'manage_edit-comments_columns', 'my_comments_columns' );
add_action( 'manage_comments_custom_column', 'output_my_comments_columns', 10, 2 );
function my_comments_columns( $columns ){
$columns[ '_tel' ] = __( '电话' ); //电话是代表列的名字
return $columns;
}
function output_my_comments_columns( $column_name, $comment_id ){
switch( $column_name ) {
case "_tel" :
echo get_comment_meta( $comment_id, '_tel', true );
break;
}
如果要在前台的留言列表中调用,就用以下代码,_tel就是你在数据库中存储的字段名字
?php
$tel = get_comment_meta($comment-comment_ID,'_tel',true);
if( !empty($tel)){
echo "电话".$tel;
}
?
5、 大功告成,看看后台的评论列表,是不是多了一列电话,那样的话就没错了。
6、如果要移除某一个自带的表单字段,可以使用以下代码
function tel_filtered($fields){
if(isset($fields['tel']))
unset($fields['tel']);
return $fields;
}
add_filter('comment_form_default_fields', 'tel')