Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
824 views
in Technique[技术] by (71.8m points)

wordpress - 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>
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

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"]


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...