web-dev-qa-db-ja.com

カスタムページにWoocommerce製品の価格をID番号で表示する方法

Woocommerceの製品の価格をカスタムページに表示しようとしています。そのための短いコードがありますが、製品の価格を提供し、「カートに追加」ボタンも追加します。ボタンは必要ありません。特定の製品の価格をIDで取得したいだけです。

これは可能ですか?

ありがとう。

コード:

<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>
40
MosesTheTool

製品のIDをお持ちの場合は、それを使用して製品オブジェクトを作成できます。

$_product = wc_get_product( $product_id );

次に、オブジェクトからWooCommerceの製品メソッドを実行できます。

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

更新
独自のショートコードを書く の方法については、コーデックスの記事をご覧ください。

WooCommerce製品データの統合は、次のようになります。

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' );

ショートコードは[woocommerce_price id="99"]のようになります

88
helgatheviking

Woocommerceでは、

通常価格を取得:

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

販売価格を取得:

$sale = get_post_meta( get_the_ID(), '_sale_price', true);
// $sale will return sale price
23
Ash Patel