Huy Hòa
  • Home
  • Lập trình
    • WordPress
    • Joomla
    • Marketing
    • Seo Web
    • Thiết kế Web
  • Mẹo Vặt
  • Sức khỏe
  • Làm đẹp
  • Du Lịch
  • Free Tools
    • Chuyển Số Thành Chữ
    • Sửa Lỗi Font Chữ Tiếng Việt Online
    • Phần Mềm Gõ Tiếng Việt Online
  • Liên hệ
Nổi bật
  • Nước vo gạo và những công dụng tuyệt vời mà bạn chưa biết
  • 21 Serum HA tốt nhất hiện nay cho da khô, da dầu nhờn và trị mụn
  • 15 cách làm trắng răng tại nhà cực kỳ hiệu quả và dễ áp dụng
  • 50+ website tải Sound Effects chất lượng cao miễn phí và có phí
  • Đánh giá 10 phần mềm SEO AI tốt nhất hiện nay
Thứ Sáu, Tháng Ba 31
Huy Hòa
  • Home
  • Lập trình
    • WordPress
    • Joomla
    • Marketing
    • Seo Web
    • Thiết kế Web
  • Mẹo Vặt
  • Sức khỏe
  • Làm đẹp
  • Du Lịch
  • Free Tools
    • Chuyển Số Thành Chữ
    • Sửa Lỗi Font Chữ Tiếng Việt Online
    • Phần Mềm Gõ Tiếng Việt Online
  • Liên hệ
Huy Hòa
Home»Thiết kế web»Hàm get_post_meta() WordPress: Cách sử dụng và ví dụ cụ thể

Hàm get_post_meta() WordPress: Cách sử dụng và ví dụ cụ thể

Facebook Twitter Pinterest LinkedIn Tumblr Email
Hàm get_post_meta() Wordpress: Cách sử dụng và ví dụ cụ thể
Hàm get_post_meta() Wordpress: Cách sử dụng và ví dụ cụ thể

get_post_meta() là hàm dùng để lấy các post meta value và post meta key trong WordPress. Bài viết này sẽ hướng dẫn các bạn cách sử dụng hàm get_post_meta để lấy giá trị của các trường mở rộng (custom fields) trong WordPress với các ví dụ cụ thể để bạn dễ thực hành.

Post Meta Keys và Post Meta Value là các thông tin mở rộng của bài viết như ngày viết, tác giả, danh mục, thẻ (tags), hoặc các dữ liệu tự thêm vào khác (Custom Fields). Tùy thuộc vào giao diện WordPress của bạn, các thông tin này có thể được hiển thị trên các vị trí khác nhau như đầu trang, cuối trang hay thậm chí là ở sidebar.

Hàm get_post_meta() WordPress: Cách sử dụng và ví dụ cụ thể
Hàm get_post_meta() WordPress: Cách sử dụng và các ví dụ cụ thể

Table of Contents

  • 1 Cách sử dụng get_post_meta():
  • 2 Một số ví dụ dùng get_post_meta
    • 2.1 Get the Post Thumbnail URL in WordPress
    • 2.2 Get post meta data of custom post type
    • 2.3 Get all post meta by post ID
    • 2.4 Get all post meta by key

Cách sử dụng get_post_meta():

get_post_meta là hàm nằm trong lõi của WordPress, bạn có thể tìm thấy hàm này ở trong file này: wp-includes/post.php

function get_post_meta( $post_id, $key = '', $single = false ) {
return get_metadata( 'post', $post_id, $key, $single );
}

Cách sử dụng:

get_post_meta( $post_id, $key = '', $single = false )

$post_id: ID của bài viết cần lấy post meta
$key: đối tượng cần lấy giá trị – cái này phân biệt chữ hoa chữ thường nhé.
$single: true or false – true thì trả về tất cả các giá thị theo array, còn false thì trả về giá trị đầu tiên
Nếu $post_id không được định nghĩa thì nó sẽ mặc định lấy ID của bài viết hiện tại bằng hàm get_the_ID().

Ví dụ:

<?php
$price = get_post_meta(get_the_ID(), 'Price', true);
echo 'Cost of the item : '.$price;
?>

Một số bài có thể bạn quan tâm:

Hàm get_template_part(): Cách sử dụng và ví dụ cụ thể

Hàm get_posts() WordPress: Cách sử dụng và ví dụ cụ thể

11 Plugin Thống Kê Truy Cập WordPress tốt nhất

Tiếp tục với các ví dụ để hiểu rõ hơn các tham số $key và $single trong hàm get_post_meta nhé:

Lấy tất cả các post meta key của bài viết hiện tại:

<?php $meta = get_post_meta( get_the_ID() ); ?>

Lấy tất cả các post meta của MỘT key cụ thể (ở đây là price) của bài viết hiện tại:

<?php $key_price_values = get_post_meta( get_the_ID(), 'price' ); ?>

Lấy giá trị đầu tiên của post meta key price của bài viết hiện tại:

<?php $key_price_value = get_post_meta( get_the_ID(), 'price', true ); ?>

Một số ví dụ dùng get_post_meta

Get the Post Thumbnail URL in WordPress

Có hai cách có thể lấy thumbnail URL của bài viết. Có thể dùng hàm get_the_post_thumbnail_url() để lấy:

$featured_img_url = get_the_post_thumbnail_url($post->ID, 'full');

Hoặc cách thứ 2 là dùng get_post_meta()

<?php echo esc_url( get_post_meta( get_the_ID(), 'thumb', true ) ); ?>

Get post meta data of custom post type

Mặc định thì WordPress có 2 post type là Post và Page. Nhiều bạn hỏi vậy nếu muốn lấy Post Meta của các Custom Post Type thì làm thế nào? Xin trả lời là nó không khác gì cả, vì get post meta nó lấy theo key nên không phụ thuộc vào post type. Các post meta đều được lưu vào bảng #_postmeta mà không liên quan gì tới post type. Nên cách lấy dữ liệu vẫn thế.
Ví dụ: Post type là Tour, meta là price_base thì lấy dữ liệu vẫn sẽ là:

<?php $price_base = get_post_meta( get_the_ID(), 'price_base', true ); ?>

Get all post meta by post ID

Nếu muốn hiện tất cả các Post Meta Keys và Post Meta Value cho 1 bài viết cụ thể (theo $post_ID) thì ta có thể dùng get_post_meta() để lấy dữ liệu rồi dùng foreach để show nó ra.
Ví dụ:

add_action('wp_head', 'output_all_postmeta' );
function output_all_postmeta() {
	$postmetas = get_post_meta($post_ID);
	foreach($postmetas as $meta_key=>$meta_value) {
		echo $meta_key ' : ' . $meta_value[0] . '<br/>';
	}
}

Cái add_action sẽ áp dụng cho tất cả các bài viết. Nghĩa là bài nào nó cũng show ra. Các bạn tự tìm hiểu thêm nhé.

Get all post meta by key

Một tình huống khá thú vị được đặt ra là: Nếu bạn muốn lấy tất cả Post Meta Value của một Post Meta Key nào đó trong tất cả các bài viết thì phải làm thế nào?

Mời các bạn tham khảo đoạn code bên dưới – key ở đây là rating nhé:

function get_meta_values( $key = '', $type = 'post', $status = 'publish' ) {
    global $wpdb;
    if( empty( $key ) )
        return;
    $return = $wpdb->get_col( $wpdb->prepare( "
        SELECT pm.meta_value FROM {$wpdb->postmeta} pm
        LEFT JOIN {$wpdb->posts} p ON p.ID = pm.post_id
        WHERE pm.meta_key = %s 
        AND p.post_status = %s 
        AND p.post_type = %s
    ", $key, $status, $type ) );
    return $return;
}

Sử dụng:

$tour_ratings = get_meta_values( 'rating', 'tours' );

Hoặc có thể phân tích dữ liệu trả về:

$tour_ratings = get_meta_values( 'rating', 'tours' );
if( !empty( $tour_ratings ) ) {
    $num_of_ratings = array();
    foreach( $tour_ratings as $meta_value )
        $num_of_ratings[$meta_value] = ( isset( $num_of_ratings[$meta_value] ) ) ? $num_of_ratings[$meta_value] + 1 : 1;
}

/*
Result:
Array(
    [5] => 10
    [9] => 2
)
// Có 10 tours được đánh giá 5 điểm và 2 tour được đánh giá 9 điểm.
*/

Tham khảo thêm hàm get_post_meta() tại https://developer.wordpress.org

4.7/5 - (12 bình chọn)
Wordpress
Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
Previous ArticleHoa dâm bụt: 10+ thông tin thú vị bạn chắc chắn CHƯA BIẾT!
Next Article Download bộ Font chữ viết tay đẹp nhất hiện nay
Huy Hoa
  • Website

Related Posts

Đánh giá 10 phần mềm SEO AI tốt nhất hiện nay

Hướng dẫn 2 cách xóa phông nền ảnh Online không cần Photoshop

Cách làm mịn da mặt bằng Photoshop mà vẫn giữ được lỗ chân lông

20 công cụ tách nền ảnh tốt nhất và hoàn toàn miễn phí

Cách hiển thị Category trong WordPress sử dụng get category với get_categories()

Hướng dẫn cài đặt, sử dụng, cấu hình Contact Form 7 đầy đủ nhất

Hướng dẫn sử dụng Cloudflare DNS, Cloudflare CDN và bảo mật từ A-Z

get_the_post_thumbnail_url – Get the post thumbnail URL with example

Hướng dẫn sử dụng wp_insert_user có ví dụ cụ thể

Leave A Reply Cancel Reply

Search
SEO - Marketing

get_the_post_thumbnail_url – Get the post thumbnail URL with example

get_the_post_thumbnail_url là hàm dùng để lấy đường dẫn file ảnh đại diện (post thumbnail) của bài viết. Trong Wordpress, hình đại diện của bài viết…

Hàm get_posts() WordPress: Cách sử dụng và ví dụ cụ thể

Cách dùng hàm get_post() trong WordPress để lấy dữ liệu bài viết

Hướng dẫn sử dụng hàm get_terms trong WordPress

Hướng dẫn sử dụng các hàm esc_html_e(), esc_html__(), esc_html() trong WordPress

Hàm get_post_meta() WordPress: Cách sử dụng và ví dụ cụ thể

Hướng dẫn sử dụng hàm get_the_date trong WordPress

Thiết kế Web - Đồ Họa

Hàm get_post_meta() WordPress: Cách sử dụng và ví dụ cụ thể

get_post_meta() là hàm dùng để lấy các post meta value và post meta key trong Wordpress. Bài viết này sẽ hướng dẫn các bạn cách…

WP_Query: Tất cả những thông tin bạn cần biết

get_the_post_thumbnail_url – Get the post thumbnail URL with example

Hướng dẫn sử dụng hàm get_terms trong WordPress

Đánh giá 10 phần mềm SEO AI tốt nhất hiện nay

get_user_by: Hướng dẫn sử dụng và ví dụ cụ thể

50+ website tải Sound Effects chất lượng cao miễn phí và có phí

Wordpress - Woocommerce

Hướng dẫn sử dụng hàm get_terms trong WordPress

Trước tiên, get_terms nó là một hàm (function), còn WP_Term_Query nó là một lớp (class), nên tùy mục đích sử dụng mà chúng ta có…

Cách hiển thị Category trong WordPress sử dụng get category với get_categories()

Cách dùng hàm get_post() trong WordPress để lấy dữ liệu bài viết

Hàm get_posts() WordPress: Cách sử dụng và ví dụ cụ thể

Hướng dẫn cài đặt, sử dụng, cấu hình Contact Form 7 đầy đủ nhất

Hàm get_post_meta() WordPress: Cách sử dụng và ví dụ cụ thể

WP_Query: Tất cả những thông tin bạn cần biết

Bài viết mới

Nước vo gạo và những công dụng tuyệt vời mà bạn chưa biết

21 Serum HA tốt nhất hiện nay cho da khô, da dầu nhờn và trị mụn

15 cách làm trắng răng tại nhà cực kỳ hiệu quả và dễ áp dụng

50+ website tải Sound Effects chất lượng cao miễn phí và có phí

Đánh giá 10 phần mềm SEO AI tốt nhất hiện nay

Hướng dẫn 2 cách xóa phông nền ảnh Online không cần Photoshop

Cách làm mịn da mặt bằng Photoshop mà vẫn giữ được lỗ chân lông

20 công cụ tách nền ảnh tốt nhất và hoàn toàn miễn phí

Sự khác nhau giữa Collagen và Axit Hyaluronic

Tác dụng cấp ẩm của Axit Hyaluronic cho làn da tươi trẻ, không nếp nhăn

© 2023 All Rights Reserved  by  HuyHoa.Net. DMCA.com Protection Status .
Hosted by Dreamhost. Follow us on  Google News.
  • Giới thiệu
  • Bảo mật
  • Quy định sử dụng
  • Liên hệ

Type above and press Enter to search. Press Esc to cancel.