Tổng hợp các hàm hiển thị dữ liệu cho Woocommerce
Tổng hợp các hàm hiển thị dữ liệu cho Woocommerce cho các bạn mới tìm hiểu và muốn tự tùy biến cách hiển thị sản phẩm cho website của mình
Chào các Bạn,
Khi sử dụng Plugin Woocommerce làm trang bán hàng trên website WordPress, ngoài việc dùng các widget có sẵn của plugin này thì chúng ta cũng cần tìm hiểu thêm các hàm hiển thị dữ liệu cho Woocommerce để có thể tự tùy biến được nó nữa.
Đây là bài viết mình muốn chia sẻ tới những bạn mới tìm hiểu và tự tùy biến hiển thị sản phẩm Woocommerce. Mong rằng nó sẽ giúp các bạn được phần nào đó!
Tổng hợp các hàm hiển thị dữ liệu cho Woocommerce:
– Hiển thị tiêu đề sản phẩm
<?php the_title() ;?>
– Hiển thị Link Sản phẩm
<?php the_permalink() ;?>
– Hiển thị hình ảnh sản phẩm
<?php the_post_thumbnail("thumbnail",array( "title" => get_the_title(),"alt" => get_the_title() ));?>
Trong đó thumbnail
chính là kích thước của ảnh, bạn có thể thay bằng medium
, large
, full
– Hiển thị mô tả sản phẩm
<?php the_excerpt() ;?>
– Hiển thị nội dung sản phẩm
<?php the_content() ;?>
– Hiển thị Danh sách hình ảnh sản phẩm
<?php global $product; $attachment_ids = $product->get_gallery_attachment_ids(); foreach( $attachment_ids as $attachment_id ) { ?> <?php echo wp_get_attachment_image($attachment_id, 'thumbnail'); ?> <?php } ?>
– Hiển thị nút mua hàng
<?php echo apply_filters( 'woocommerce_loop_add_to_cart_link', sprintf( '<a href="%s" rel="nofollow" data-product_id="%s" data-product_sku="%s" class="add-cart button %s product_type_%s buynow">Mua hàng</a>', esc_url( $product->add_to_cart_url() ), esc_attr( $product->id ), esc_attr( $product->get_sku() ), $product->is_purchasable() ? 'add_to_cart_button' : '', esc_attr( $product->product_type ), esc_html( $product->add_to_cart_text() ) ), $product ); ?>
– Hiển thị Giá của Sản phẩm
<?php echo get_post_meta( get_the_ID(), '_regular_price', true ); ?>
– Hiển thị Giá khuyến mại của Sản phẩm
<?php echo get_post_meta( get_the_ID(), '_sale_price', true ); ?>
– Hiển thị Mã Sản phẩm
<?php echo get_post_meta( get_the_ID(), '_sku', true ); ?>
– Hiển thị Tình trạng sản phẩm
<?php echo get_post_meta( get_the_ID(), '_stock_status', true ); ?>
– Hiển thị Hình thức giao hàng
<?php echo $product->get_shipping_class(); ?>
– Hiển thị khối lượng sản phẩm
<?php echo get_post_meta( get_the_ID(), '_weight', true ); ?>
– Hiển thị số lượng(chỉ áp dụng với trang chi tiết sản phẩm)
<form enctype="multipart/form-data" method="post" class="cart"> <div class="quantity"><label>Số lượng: </label><input type="number" size="4" class="input-text qty text" title="SL" value="1" name="quantity" min="1" step="1"></div> <input type="hidden" value="<?php echo $vnid = the_ID(); ?>" name="add-to-cart"> <button class="add-cart single_add_to_cart_button alt buynow" type="submit">Đặt mua</button> </form>
– Hiển thị Rating sản phẩm
<?php echo $product->get_rating_html(); ?>
– Hiển thị Từ khóa sản phẩm
<?php global $post, $product; $tag_count = sizeof( get_the_terms( $post->ID, 'product_tag' ) ); echo $product->get_tags( ', ', '<span class="tagged_as">' . _n( 'Tag:', 'Tags:', $tag_count, 'woocommerce' ) . ' ', '</span>' ); ?>
Hiển thị Danh mục của sản phẩm
<?php global $post, $product; $cat_count = sizeof( get_the_terms( $post->ID, 'product_cat' ) ); echo $product->get_categories( ', ', '<span class="posted_in">' . _n( 'Category:', 'Categories:', $cat_count, 'woocommerce' ) . ' ', '</span>' ); ?>
– Hiển thị Comment sản phẩm(áp dụng cho trang chi tiết sản phẩm)
<?php if ( comments_open() || get_comments_number() ) : comments_template(); endif; ?>
– Hiển thị Tiêu Đề Danh mục sản phẩm
<?php echo get_cat_name(ID_Của_Danh_Mục_Sản_Phẩm);?>
– Hiển thị Link của Danh mục sản phẩm
<?php echo get_term_link(ID_Của_Danh_Mục_Sản_Phẩm);?>
– Hiển thị Mô tả của Danh mục sản phẩm
<?php echo category_description(ID_Của_Danh_Mục_Sản_Phẩm);?>
Khi sử dụng nếu có bất cứ khó khăn nào, bạn có thể để lại câu hỏi dưới phần comment của website để chúng ta cùng giải quyết.
Chúc các bạn thành công!
Bài liên quan
- Tự tạo hiển thị sản phẩm theo danh mục Woocommerce
- Hiển thị danh mục sản phẩm theo hình ảnh WooCommerce
- Tự tạo tìm kiếm nâng cao cho sản phẩm Woocommerce
- Tạo khung tìm kiếm chỉ hiển thị ra sản phẩm Woocommerce
- Căn giữa hình ảnh sản phẩm Woocommerce bằng CSS
- Thêm giỏ hàng Woocommerce ở vị trí bạn muốn trên wordpress
Hiển thị mô tả danh mục nữa cho chọn bộ anh ợ
😛
Ok cảm ơn ý kiến đóng góp của em nhé
Anh ơi. hiển thị Custom Fields của sản phẩm sao ạ
Bạn lấy Custom Fields như Post bình thường bạn nhé
Cảm ơn anh.
Em chào anh.
Em thấy những đoạn code mà anh nêu trên rất bổ ích. Em học được nhiều thứ trên này.
Hiện tại em đang mày mò về woocommerce nên có nhiều chỗ nó không hiển thị và thắc mắc. Mong anh có thể giúp em được không ạ.
Hiện tại em làm thì shortcode của woocommerce không hoạt động. Nên trang cart không hiển thị được. Anh giúp em phần này với.
Em cảm ơn anh.
Chào bạn, Thực tế có 1 số hàm cho phép bạn gọi ở file này nhưng ở file khác lại không hoạt động, ngoài ra có 1 số hàm phải nằm trong vòng lặp While thì mới chạy bạn ạ, bạn có thể gửi screenshot vấn đề của bạn gặp phải nếu cần tư vấn cụ thể hơn bạn nhé!
chào bạn! m gà bạn có thể hướng dẫn cho m biết là đặt đoạn code này ở đâu đc k ak?
Bạn đặt các đoạn code này ở file php như : index.php, category.php, single.php trong thư mục theme đang sử dụng bạn nhé
Làm sao để thêm hình ảnh hoặc text dưới buton ” add to cart ”
Bác có thể hướng dẫn không ạ?
Nếu bạn biết về code thì mình có thể hướng dẫn bạn thế này :
Bạn dùng notepad++ search từ khóa : “add_to_cart_button” trong theme đang sử dụng /woocomerce
Đây chính là class trong nút add to cart. tiếp tục mở file đã tìm được và thêm text hay ảnh xuống phía dưới của thẻ có class đó là được
Bài viết rất hay, xin gửi lời cám ơn đến nhóm BQT Vnkings
Cảm ơn bạn, mong rằng Vnkings giúp được phần nào các bạn đến với thành công!
Mình cài plugin và sử dụng theme của mình nhưng không hiểu sao không gọi được các file trong JS của woocomerce ra. Sử dụng theme mặc định của wordpress thì thấy gọi được js ra, bạn có biết lỗi do đâu chỉ mình với
Bạn kiểm tra các file trong theme này :
File header.php có đoạn:
wp_head();
File footer.php có đoạn :
wp_footer();
Ngoài ra nếu bạn đã thấy nó có file js của Woo nhưng không hoạt động thì bạn cần lưu ý. phải có div này ôm code woo của bạn:
Web em sử dụng woocommerce làm trang bán hàng, hiện tại có một vấn đề là nó không hiện title ở ảnh thumbnail trên trang sản phẩm. E ko biết đặt vào vị trí nào để nó có thể hiển thị cả. bc xem giúp e phát. Thank bác trước!
ok bạn, bạn cho mình link web bạn nhé
Bạn ơi cho mình hỏi làm sao hiển thị được mã sản phẩm ra bên ngoài trang sản phẩm được (tức là hiển thị tên sản phẩm, rồi mã sản phẩm bên dưới luôn). Mình mới dùng woo nên không rõ lắm. Mong được giúp đỡ. Cảm ơn bạn nhiều!!
Cho mình hỏi chút đoạn code hiển thị nút mua hàng. Không biết mình sai sót chỗ nào nhưng khi mình chèn vào thì không hiển thị. Bạn có thể hướng dẫn mình không?
Bạn vào http://notepad.cc rồi paste nội dung file và đoạn bạn thêm vào sau đó gửi mình link vừa rồi để mình kiểm tra nhé.
Giả sử mình có: 0 item – 0 VNĐ. Bạn giúp mình đoạn code, khi thêm sản phẩm vào giỏ. Thì số item và giá VNĐ sẽ tự động tăng lên.
Cám ơn bạn.
[…] Tổng hợp các hàm hiển thị dữ liệu cho Woocommerce: […]
Bạn cho mình hỏi muốn tạo thêm 1 nút bên dưới nút thêm vào giỏ hàng trong một sản phẩm thì làm sao nhỉ
Bạn có thể vào file trong theme: /woocommerce/loop/add-to-cart.php
Rồi chèn vào dưới cùng của file:
AD ơi mình muốn lấy select thuộc tính sản phẩm nên sài hàm nào vậy?
Trong đó pa_site chính là thuộc tính mình tạo demo thuộc tính Size, bạn thay bằng thuộc tính của bạn nhé.
Mình làm theo mà ko ra ! tên thuộc tính của mình là hair_lenght ! mình thay vào chỗ pa_site ! mà ko ra giá trị
ad cho mình hỏi có plugin nào cố định cái dòng title và giá cho nó đều nhau (nếu tên dài thì nhảy xuống 2 dòng thì giá bị đẩy xuống dưới) không ạ. chứ nó nhảy lên nhảy xuống thấy xấu quá. em hơi gà code nên ad giúp em nhé
Chào bạn, muốn đều nhau thì bạn dùng CSS để căn lại thuộc tính style của các thẻ. Bạn không cần dùng đến Plugin.
Bạn cho mình hỏi, bình thường thì woocommerce sẽ không hiện rating trong phần comment edit như hình này http://prntscr.com/jvwyan.
Mình muốn phần rating luôn hiển thị như vầy http://prntscr.com/jvwz7t thì phải làm sao hở bạn.
Mình muốn bình luận sản phẩm có tốt hay k? Nhưng trang sản phẩm của mình k có chỗ bình luận. Bạn chỉ giúp mình vs 🙁
Mình muốn xóa phần giá sản phẩm trên trang sản phẩm và đổi từ add to card thành báo giá thì ntn vậy ad Thank
Chào bạn,
Xóa giá sản phẩm
Bạn vào đường dẫn này trong thư mục theme đang sử dụng:
Thay từ Add to Cart
Bạn vào đường dẫn này trong thư mục theme đang sử dụng:
chào bạn , mình sử dụng hàm hiển thị giá sản phẩm thì nó hiển thị 1500000 chứ không phải là 1.500.000 đ như hiển thị trên sản phẩm , mình đã cài đặt tiền tệ cho nó rồi á . Bán có cách nào lấy đúng như mình đã setup trong woomcomerce không ? ,giúp mình với nhé
Mình cũng đang vướng chỗ này, nhờ Ad hỗ trợ giúp ạ. Hiển thị 15000 mà ko phải là 15,000, tks
Mình phân quyền cho thành viên nhưng ko hiểu sao add hình vào chi tiết sản phẩm bị lỗi sau khi f5 lại : nó ko hiện hình lên, mình kiểm tra trong trạng thái của Woo nó ghi như vậy:
Giao diện của bạn có một tập tin woocommerce.php, bạn không thể ghi đè tập tin giao diện woocommerce/archive-product.php cho đến khi woocommerce.php có thứ tự ưu tiên cao hơn archive-product.php. Điều này là nhằm ngăn chặn các vấn đề hiển thị.
Xem giúp mình nhé
Bạn đã dùng code gì trong bài này, và bạn thêm nó vào đâu?
Mình có một form đặt hàng ở bên dưới mô tả sản phẩm bình thường là nó không có số lượng sản phẩm cần mua khi bấm mua hàng thì các thông tin tên , điện thoại , địa chỉ giao hàng thì trong woocomerce có thông tin . Tuy nhiên số lượng mặc định luôn là 1 , mình thêm code số lương của bạn vòa form thì khi bấm đặt hàng thì các dữ thông tin khách hàng không gửi về woocomerce , bạn có cách nào giúp mình với !
Chào bạn, Form đặt hàng của bạn được tạo từ Contact form 7 hay từ code gì bạn?
mình sử dụng code á bạn , code mình như sau :
// id);
$id = $product->id;
$name = get_the_title( $id );
$_product = wc_get_product($id);
$price = $_product->get_price();
$thumb = get_the_post_thumbnail( $id, ‘shop_catalog’, array(
‘title’ => $name,
‘alt’ => $name,
) );
?>
Miễn phí giao hàng – Thanh toán tận nơi
<input type="hidden" name="product" value="”>
Tên bạn *
Địa chỉ giao hàng *
Số điện thoại *
Số lượng:
<input type="hidden" value="” name=”add-to-cart”>
Ghi chú giao hàng
Hoàn tất <img class="loading" src="/images/AjaxLoader.gif” alt=”loading”>
\
khi bấm vào đặt hàng thì thông tin đơn hàng trong womcomerce vẫn là 1 không thay đổi gì hết á
Bạn ơi cho mình hỏi. Muốn hiển thị phần mô tả của danh mục sản phẩm xuống phía dưới các sản phẩm trong danh mục thì làm thế nào dc vậy. Cảm ơn bạn !
ad cho em hỏi em hỏi gắn đoạn code hiện mã sản phẩm vào file nào vậy ạ, em cảm ơn!
Chào bạn, bạn muốn hiển thị ở đâu?
Ở chi tiết bài viết, trang chủ hay danh mục?
Chào bạn. Mình dùng đoạn code này để hiển thị khung comment. Nhưng ở phần đánh giá thì nó không hiển thị sao mà lại hiển thị số 12345 để mình chọn. Bạn có biết cách nào để nó hiển thị sao ko ?
Chào bạn,
giao diện này là giao diện tự code đúng không bạn, nếu tự code thì cần thêm div có class là woocommerce để bo các thẻ bên trong thì nó mới nhận được css và js form và đánh giá,… của woocommerce.
mình cho hiển thị tình trạng sản phẩm thì nó hiện instock với outofstock chứ không hiện còn hàng hay hết hàng còn các chỗ khác hiện bình thường thì phải sửa thế nào ạ
Mình muốn tạo label cho sản phẩm ngoài trang chủ thì làm sao ạ. Ví dụ như: label [hình ảnh giảm giá nhấp nháy ạ ]. Cảm ơn admin
Xin chào admin, Mình cũng tự code cho trang chi tiết sản phẩm. Mình đang gặp khó khăn khi muốn hiển thị giá sản phẩm. Tức là nếu giá sản phẩm trống thì hiển thị nút liên hệ. Còn nếu có giá thì hiển thị giá.
Ad có thể hỗ trợ mình được không? Cảm ơn ad. Dưới đây là đoạn code mình code hiển thị thông tin sản phẩm:
Mã sản phẩm: get_sku();?>
get_short_description(); ?>
Giá:
get_regular_price(), 0, ‘,’,’.’);?>
(Giá đã bao gồm thuế VAT)
Số lượng
<button type="submit" name="add-to-cart" value="” class=”btn btn-fafult cart btn-cart add_to_cart” title=”Cho vào giỏ hàng”> Thêm vào giỏ
Xin chào bạn!
Mình muốn custom function sau đó móc vào hook woocommerce_after_shop_loop_item trong woocommerce. mình tạo 1 thẻ
<a href="” > Chi tiết nhưng tình huống là khi chuyển sang trang đa ngôn ngử thì chữ “chi tiết” nó không được dịch để trở thành detail (do code cứng trong code) vậy nhờ bạn hướng dẩn giải quyết thì trường hợp này có cách nào giải quyết được vấn đề này không ạ ? Xin cảm ơn ạ
Bạn ơi mình muốn hiển thị đánh giá sao ngay ở chỗ giá của sản phẩm trên trang shop thì làm sao ạ! mong bạn giúp đỡ
Chào bạn, mình chưa hiểu ý bạn lắm?
Mình muốn thêm sản phẩm vào 1 hàng ở woo nhưng mặc định nó là 4 mình có edit lại theo như bạn hướng dẫn mà không được! bạn có thể xem qua và chỉ giúp mình với được ạ?
Trong phần danh mục sản phẩm, Em có dùng acf để tạo thêm 1 ô nhập thông tin, Bây h làm sao để hiện nó ra ngoài được anh nhỉ. Em cảm ơn ạ!
phần mô tả sản phẩm chuyển xuống dưới sản phầm mà nó bị dính vô sản phẩm làm sao để cách hàng nó ra bạn
Chào bạn, bạn có thể dùng CSS để chỉnh cách ra so với các vị trí khác bạn nhé.
Ví dụ bạn có một div mô tả sản phẩm như sau:
CSS bạn sẽ viết bên dưới div trên là:
Trang sản phẩm của em không hiển thị giá sản phẩm dù trước đó em có nhập giá rồi..làm sao để hiển thị giá của sản phẩm ra đươc ạ..em cảm ơn
Chào em, em có thể kiểm tra xem theme gốc demo của họ có hiển thị giá không, nếu họ có hiển thị giá thì em thử tìm trong các thiết lập tùy chọn Theme là được. Còn tùy vào từng theme để giải quyết vấn đề này.
Mình muốn biến những cái này thành shortcode để gọi ra ở bất kì đâu cho tiện thì có cách nào làm được không ban nhỉ?
Được bạn, nếu bạn có thể tạo shortcode thì đều có thể đưa các hàm này vào shortcode bạn muốn.
Em dùng Flatsome, không hiểu vì lỗi gì khi tùy biến, mà gần đây khi click vào sản phẩm, nó không dẫn đến trang mô tả chi tiết sản phẩm, chỉ load và dừng lại.
Bác có thể giúp em vu này được không?
Cho mình hỏi làm sao để hiển thị được thuộc tính Thương hiệu ra ngoài vậy ạ? Mình có các thuộc tính khác nữa dùng để chọn chất liệu sản phẩm thì hiển thị được. Nếu mình cho hiển thị thương hiệu ra thì khi chọn loại cần mua thì bắt buộc khách phải chọn Thương hiệu nữa -> rất phiền