Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to display Woocommerce product price by ID number on a custom page?

I'm trying to display a price of a product in Woocommerce, on a custom page. There is a short code for that, but it gives product price and also adds an "Add to cart button", I don't want the button, i just want to get the price of a specific product by ID.

Is this possible?

Thanks.

CODE:

<table class="unlockTableBorder">  <tbody>  <tr>  <td>  <h2>פתיחת מכשירי Alcatel כלל עולמי</h2>  <h4>אנא קראו והבינו את תנאי השירות הבאים לפני הזמנת שירות זה:</h4>  <ul>  	<li>שירות זה תומך בפתיחת מכשירים סלולריים מסוג Alcatel מארה"ב, קנדה ומקסיקו.</li>  	<li>מכשירי CDMA וספקיות שירות CDMA לא נתמכים בידי שירות זה, אנא אל תשתמשו בשירות זה בשביל מכשירים אלו - במידה ותשמשו בשירות זה למכשירי CDMA, אתם תקבלו קוד שלא תוכלו להשתמש בו, ולא תוכלו לקבל החזר כספי! - אנא <a title="פתיחת מכשירי CDMA לכל הרשתות" href="http://www.unlocker.co.il/sim-unlock-cdma-mobile-device/">ראו פתיחת מכשירי CDMA לכל הרשתות בישראל.</a></li>  </ul>  <h5><strong>זמן הספקה: 1-24 שעות</strong></h5>  <form id="unlock1" class="cart" enctype="multipart/form-data" method="post" name="unlock"><input class="the_imei" style="width: 80%; border-radius: 15px;" name="the_imei" type="text" value="" placeholder="מספר סידורי IMEI של המכשיר (חייג #06#*)" /> <input class="add-to-cart" name="add-to-cart" type="hidden" value="76" /> <button class="unlockButton" type="submit" value="submit">פתח לכל הרשתות בישראל </button></form>*בלחיצה על הפתור, אתם מסכימים ל<a title="תנאי השירות" href="http://www.unlocker.co.il/terms-and-conditions/">תנאי השירות</a>.</td>  </tr>  </tbody>  </table>  <script src="http://www.unlocker.co.il/checkimei1.js" type="text/javascript"></script>
like image 606
MosesTheTool Avatar asked May 11 '15 10:05

MosesTheTool


People also ask

How do I get product information by product ID in WooCommerce?

$productId = 164; echo $p_title = get_the_title( $productId ); looking for Short Description, Price, Product Image, Product Url, Product Brand. Or might be loop will be better but that loop should work with product static ID.


2 Answers

If you have the product's ID you can use that to create a product object:

$_product = wc_get_product( $product_id ); 

Then from the object you can run any of WooCommerce's product methods.

$_product->get_regular_price(); $_product->get_sale_price(); $_product->get_price(); 

Update
Please review the Codex article on how to write your own shortcode.

Integrating the WooCommerce product data might look something like this:

function so_30165014_price_shortcode_callback( $atts ) {     $atts = shortcode_atts( array(         'id' => null,     ), $atts, 'bartag' );      $html = '';      if( intval( $atts['id'] ) > 0 && function_exists( 'wc_get_product' ) ){          $_product = wc_get_product( $atts['id'] );          $html = "price = " . $_product->get_price();     }     return $html; } add_shortcode( 'woocommerce_price', 'so_30165014_price_shortcode_callback' ); 

Your shortcode would then look like [woocommerce_price id="99"]

like image 125
helgatheviking Avatar answered Sep 21 '22 17:09

helgatheviking


In woocommerce,

Get regular price :

$price = get_post_meta( get_the_ID(), '_regular_price', true); // $price will return regular price 

Get sale price:

$sale = get_post_meta( get_the_ID(), '_sale_price', true); // $sale will return sale price 
like image 44
Ash Patel Avatar answered Sep 22 '22 17:09

Ash Patel