Việt hóa một số phần trong blog theme flatsome không cần plugin

Trong quá trình xây dựng trang blog của bạn bằng theme flatsome, bạn sẽ thấy trong trang hiển thị danh mục bài viết và trang chi tiết bài viết có một số phần chữ tiếng anh. Hôm nay mình sẽ hướng dẫn các bạn việt hóa một số phần trong blog theme flatsome không cần plugin

Cách 1 sửa code trong file theme

Sửa Category archive, Tag archive, Search Results for, Daily Archives , Monthly Archive, Yearly Archives.

Những phần này nó sẽ nằm trong file archive-title.php. Các bạn có thể vào file đó theo đường dẫn wp-content/ themes/ flatsome/ template-parts/ posts/ partials/ archive-title.php để chỉnh sửa trực tiếp.

Tuy nhiên mình không khuyến khích các bạn chỉnh sửa trực tiếp trong theme cha như vậy, mà các bạn hãy coppy folder template-parts bỏ sang child theme để chỉnh sửa nhé. Mục đích là để nếu theme của bạn có update thì nội dung bạn chỉnh sửa nó cũng không bị mất đi .

Nhìn ảnh trên bạn có thể biết được nên chỉnh phần nào rồi chứ. Nếu chưa mình sẽ ví dụ một đoạn như sau

printf( __( 'Category Archives: %s', 'flatsome' ), '<span>' . single_cat_title( '', false ) . '</span>' );

Bạn sửa thành

printf( __( 'Danh mục bài viết: %s', 'flatsome' ), '<span>' . single_cat_title( '', false ) . '</span>' );

Hoặc không muốn hiển thị chữ thì có thể sửa nó như sau

printf( __( ' %s', 'flatsome' ), '<span>' . single_cat_title( '', false ) . '</span>' );

Các bạn chỉnh lại tương tự đối với các phần còn lại nhé

Sửa posted on, by

Phần này nó sẽ nằm trong file structure-post.php . đường dẫn đến file của nó như sau: wp-content/ themes/ flatsome/ inc/ structure/ structure-post.php. 

Chữ Posted on và by nó sẽ nằm ở dòng 236, bạn sửa lại nó sang nội dung của bạn hoặc nếu không muốn hiển thị thì xóa chữ đó đi nhé.

Tuy nhiên với cách sửa ở theme cha như vậy mình không bao giờ khuyến khích các bạn làm nhé. Để không đụng chạm đến code của theme cha, mình có 1 function sau đây các bạn coppy vào file function.php của child theme nhé.

function flatsome_posted_on() {
$time_string = '<time class="entry-date published updated" datetime="%1$s">%2$s</time>';
if ( get_the_time( 'U' ) !== get_the_modified_time( 'U' ) ) {
$time_string = '<time class="entry-date published" datetime="%1$s">%2$s</time><time class="updated" datetime="%3$s">%4$s</time>';
}

$time_string = sprintf( $time_string,
esc_attr( get_the_date( 'c' ) ),
esc_html( get_the_date() ),
esc_attr( get_the_modified_date( 'c' ) ),
esc_html( get_the_modified_date() )
);

$posted_on = sprintf(
esc_html_x( '%s', 'post date', 'flatsome' ),
'<a href="' . esc_url( get_permalink() ) . '" rel="bookmark">' . $time_string . '</a>'
);

$byline = sprintf(
esc_html_x( '%s', 'post author', 'flatsome' ),
'<span class="meta-author vcard"><a class="url fn n" href="' . esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ) . '">' . esc_html( get_the_author() ) . '</a></span>'
);
echo '<span class="posted-on">Ngày đăng: ' . $posted_on . '</span><span class="byline">Bởi: ' . $byline . '</span>';

}

Cách 2 việt hóa bằng function

Để linh động và dễ dàng hơn trong việc việt hóa các chữ tiếng anh còn sót lại trên theme, bạn cũng có thể sử dụng hàm sau đây.

// Change text select option
function my_custom_translations( $strings ) {
$text = array(
'Posted in' => 'Xin chào',
);
$strings = str_ireplace( array_keys( $text ), $text, $strings );
return $strings;
}
add_filter( 'gettext', 'my_custom_translations', 20 );

Bạn coppy đoạn code trên bỏ vào file function.php của child theme. Sau đó bạn sửa lại nội dung cần dịch hoặc thêm nội dung cần dịch bằng cách sửa hoặc nhân thêm đoạn code này nhé

'Posted in' => 'Xin chào',

Lời kết

Như vậy trong khuôn khổ bài viết này mình đã hướng dẫn các bạn cách để việt hóa một số phần trong blog theme flatsome không cần plugin.

Mình khuyến khích các bạn nên dùng cách cuối cùng nhé nó có thể dịch được toàn bộ nội dung trên website chứ không chỉ riêng gì phần blog của theme nhé.

Trong quá trình làm nếu có thắc mắc gì bạn có thể liên hệ mình ở đây . Chúc các bạn thành công.