I’m looking for solution to display products current date on the shop page.
I have tried with this, but it shows nothing at all
JavaScript
x
add_action( 'woocommerce_single_product_summary','bloomer_echo_product_date',25 );
function bloomer_echo_product_date() {
if ( is_product() ) {
echo get_the_date('', '<span class="date_published">Updated on: ', '</span>', false);
}
}
Any help is appreciated.
Advertisement
Answer
The following code shows the date the product was created and modified on the single product page and archive/Shop page
Note: the time/date display can be adjusted based on DateTime::format PHP function.
Currently used:
- Y – A full numeric representation of a year, 4 digits
- m – Numeric representation of a month, with leading zeros
- d – Day of the month, 2 digits with leading zeros
- H – 24-hour format of an hour with leading zeros
- i – Minutes with leading zeros
- s – Seconds with leading zeros
So you get:
JavaScript
function woocommerce_product_date() {
// Get the global product object
global $product;
// Is a WC product
if ( is_a( $product, 'WC_Product' ) ) {
// Output date created & date modified
echo sprintf( '<p>' . __( 'Date created: %s', 'woocommerce' ) . '</p>', $product->get_date_created()->date( 'Y-m-d H:i:s' ) );
echo sprintf( '<p>' . __( 'Date modified: %s', 'woocommerce' ) . '</p>', $product->get_date_modified()->date( 'Y-m-d H:i:s' ) );
}
}
// Display on single product page
add_action( 'woocommerce_single_product_summary', 'woocommerce_product_date', 10, 0 );
// Display on archive/shop page
add_action( 'woocommerce_after_shop_loop_item', 'woocommerce_product_date', 10, 0 );