Ich verwende WooCommerce für WordPress und liste Artikel ohne Steuern auf.
Ich muss zeigen separat der Preis (ohne Steuer)die Steuer und der PREIS + Steuer auf der Produktseite (wie auf der Checkout-Seite).
Ich habe kein Plugin gefunden, das dies tut.
Wie kann ich das machen?
WooCommerce v3.0.0 und höher
Ab WooCommerce Version 3.0 ist die Funktion woocommerce_price() ist ebenso wie die Methode veraltet get_price_inclusive_tax(). Stattdessen sollten Sie verwenden wc_get_price_inclusive_tax:
<?php echo wc_price( wc_get_price_including_tax( $product ) ); ?>
Vor WooCommerce v3.0.0
Sie müssen eine Vorlage ändern. Nicht Ändern Sie die WooCommerce-Kernvorlage, sondern erstellen Sie eine Kopie davon in Ihrem Design, indem Sie das WooCommerce-Vorlagenüberschreibungssystem verwenden. Hilfe dazu finden Sie in der WooCommerce-Dokumentation zur Verwendung von Vorlagenüberschreibungssystem.
In dem price.php
Vorlage, fügen Sie diesen Codeabschnitt dort hinzu, wo Sie den Preis einschließlich Steuern (MwSt.) wünschen:
<?php echo woocommerce_price( $product->get_price_including_tax() ); ?>
Beachten Sie das price.php
Vorlage, die Sie ändern, sollte sich hier befinden wp-content/themes/[your theme folder]/woocommerce/single-product/price.php
Update 2018/2019 (für Woocommerce 3+)
Anzeige des Preises ohne MwSt. + MwSt.-Betrag + Preis inkl. MwSt (auf getrennten Zeilen):
Zuerst lesen “So überschreiben Sie Woocommerce-Vorlagen über Ihr Design”
1) Ein single-product/price.php
Vorlagendatei (einzelne Produktseiten).
Ersetzen Sie den Code durch:
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
global $product;
// Get the prices
$price_excl_tax = wc_get_price_excluding_tax( $product ); // price without VAT
$price_incl_tax = wc_get_price_including_tax( $product ); // price with VAT
$tax_amount = $price_incl_tax - $price_excl_tax; // VAT amount
// Display the prices
?>
<p class="price-excl"><?php echo wc_price( $price_excl_tax ); ?></p>
<p class="tax-price"><?php echo wc_price( $tax_amount ); ?></p>
<p class="price-incl"><?php echo wc_price( $price_incl_tax ); ?></p>
2) Ein loop/price.php
Vorlagendatei (Shop- und Archivseiten).
Ersetzen Sie den Code durch:
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
global $product;
if ( $product->get_price_html() ) :
// Get the prices
$price_excl_tax = wc_get_price_excluding_tax( $product ); // price without VAT
$price_incl_tax = wc_get_price_including_tax( $product ); // price with VAT
$tax_amount = $price_incl_tax - $price_excl_tax; // VAT amount
// Display the prices
?>
<span class="price price-excl"><?php echo wc_price( $price_excl_tax ); ?></span><br>
<span class="price tax-price"><?php echo wc_price( $tax_amount ); ?></span><br>
<span class="price price-incl"><?php echo wc_price( $price_incl_tax ); ?></span>
<?php endif ?>
Dokumentation:
• Vorlagenstruktur und wie Sie Woocommerce-Vorlagen über Ihr Thema überschreiben
• wc_get_price_including_tax()
Produktpreisfunktion
• wc_get_price_excluding_tax()
Produktpreisfunktion
• wc_price()
Preisfunktion formatieren
• wc_get_price_to_display()
Produktpreisfunktion
Ursprüngliche Antwort (vor woocommerce 3):
Überprüfe vorher, ob deine WooCommerce Allgemeine Steuereinstellungen mit Ihren Bedürfnissen übereinstimmen.
Wie cale_b vorgeschlagen hat, müssen Sie die von woocommerce kopieren templates
Ordner in deinem aktiven Child-Theme oder Theme. Benennen Sie es dann um woocommerce
. In diesem woocommerce
Vorlagenordner finden Sie darin single-product
Unterordner der preis.php Vorlage zum Bearbeiten in Bezug auf die Preisanzeige auf einzelnen Produktseiten.
Im single-product/price.php
Template-Datei gleich danach global $product;
ersetzen Sie den Code durch:
?>
<div itemprop="offers" itemscope itemtype="http://schema.org/Offer">
<?php
$price_excl = $product->get_price_excluding_tax(); // price without VAT
$price_incl = $product->get_price_including_tax(); // price included VAT
$tax_amount = $price_incl - $price_excl; // VAT price amount
?>
<p class="price"><?php echo woocommerce_price( $price_excl ); /* without VAT */ ?></p> (formatted)
<p class="price-vat"><?php echo woocommerce_price( $tax_amount); /* VAT */ ?></p>
<p class="price-and-vat"><?php echo woocommerce_price( $price_incl); /* With VAT */ ?></p>
<meta itemprop="price" content="<?php echo esc_attr( $product->get_price() ); ?>" />
<meta itemprop="priceCurrency" content="<?php echo esc_attr( get_woocommerce_currency() ); ?>" />
<link itemprop="availability" href="http://schema.org/<?php%20echo%20$product->is_in_stock()%20?%20'InStock'%20:%20'OutOfStock';%20?>" />
</div>
Da die zusätzlichen Preise unformatiert sind, müssen Sie möglicherweise einige andere Elemente mit diesen zusätzlichen Preisen mischen, indem Sie einige Woocommerce-PHP-Funktionen verwenden, wie:
get_price_suffix( ) // Get the suffix to display after prices > 0.
$currency = esc_attr( get_woocommerce_currency( ) ) // Get the currency code.
get_woocommerce_currency_symbol( $currency ) // Get the currency symbol.
get_tax_class( ) // Returns the tax class.
get_tax_status( ) // Returns the tax status.
Referenz: WooCommerce WC_Product-Klasse
Im Moment müssen Sie keine Vorlage mehr ändern. Dies können Sie in den Woocommerce-Einstellungen festlegen:
- Woocommerce: Registerkarte „Steuern“: Preise im Shop anzeigen / Preise im Warenkorb und an der Kasse anzeigen
Ja, Sie müssen Vorlagen nicht bearbeiten, um die Mehrwertsteuer anzuzeigen. Gehen Sie zu Woocommerce-Einstellungen > MwSt. > Preisanzeige-Suffix. Sie können Folgendes hinzufügen: {price_exclusiv_tax}, um ohne Mehrwertsteuer anzuzeigen.
Tippfehler: separat
– Nuri Akman
27. April 2017 um 7:47 Uhr