我想首先在产品类别中展示库存产品,或者如果可能的话,在任何地方展示库存产品,然后我也想在 Woocommerce 中展示缺货产品
实际上有很多产品没有数量但有库存,所以需要检查库存状态,但我更喜欢先有更多数量
在这种情况下,我怎样才能对当前的排序产生影响?非常感谢
echo woocommerce_get_product_thumbnail();
Run Code Online (Sandbox Code Playgroud)
输出整个图像标签,我怎么能只得到图像源。
仅使用 wordpress 解决相同的问题 - https://wordpress.stackexchange.com/questions/9175/how-do-i-get-image-url-only-on-the-post-thumbnail
woocommerce 有可能吗?
我有一个Woocommerce订阅网站,所以我的大多数客户角色是Subscriber。现在,我想向潜在客户提供一些免费的迷你试用版,并给予他们一些荣誉,Customer因为我们尚未吸引到潜在客户注册订阅。
问题是帐户资金(插件:WooCommerce的WooCommerce帐户资金)显示在其“我的帐户”区域中,允许他们在需要时存入10美元并绕开订阅。我该如何通过Woocommerce挂钩将其隐藏起来?
以下是与“已付款帐户资金”插件的“我的帐户”相关的源代码,摘自 /includes/class-wc-account-funds-my-account.php
<?php
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
/**
* WC_Account_Funds_My_Account
*/
class WC_Account_Funds_My_Account extends WC_Query {
/**
* Constructor
*/
public function __construct() {
add_action( 'init', array( $this, 'add_endpoints' ) );
add_filter( 'the_title', array( $this, 'change_endpoint_title' ), 11, 1 );
if ( ! is_admin() ) {
add_filter( 'query_vars', array( $this, 'add_query_vars' ), 0 );
add_filter( 'woocommerce_get_breadcrumb', array( $this, 'add_breadcrumb' ), 10 );
add_action( 'pre_get_posts', array( $this, 'pre_get_posts' ), …Run Code Online (Sandbox Code Playgroud) php wordpress woocommerce hook-woocommerce woocommerce-subscriptions
使用店面主题,我想在登录管理面板 WooCommerce|Products Store Activity| Inbox| Orders| Stock| Reviews| Notices|面包屑时删除面包屑。*请注意,如果您以当前用户而非管理员身份登录,我需要此功能。我使用 css 使用的代码
.woocommerce-layout__header-breadcrumbs {
display: none !important;
}
.woocommerce-layout {
display: none !important;
}
Run Code Online (Sandbox Code Playgroud)

我尝试在某些类别的产品页面上的 WooCommerce 添加到购物车按钮下方添加一个 div。
我在这里有点不知所措。这段代码没有破坏任何东西,但文本没有显示。
我试过:.woocommerce div.product form.cart::after,但这适用于所有产品。
这是 PHP 代码段:
function add_polarity_info() {
global $product;
if( is_product() && has_term( ['telecaster-pickups', 'strat-pickups', 'bass-pickups', 'p90-pickups', 'humbuckers', 'dynasonic-pickups', 'mini-humbuckers'], 'product_cat' )) {
echo 'If you are pairing with pickups from another manufacturer and are concerned about polarity and phasing, please let us know in the NOTES field on the checkout screen';
}};
add_action( 'woocommerce_after_add_to_cart_button', add_polarity_info() );
Run Code Online (Sandbox Code Playgroud)
有人可以指出我的代码的问题吗?
我想获取我在我的中使用以下代码的购物车总数functions.php:
function display_total(){
global $woocommerce;
$newTotal = $woocommerce->cart->get_total();
echo $newTotal;
};
add_action( 'woocommerce_review_order_before_order_total', 'display_total');
Run Code Online (Sandbox Code Playgroud)
它不是显示一次金额,而是像 那样显示两次$18.00$18.00。
执行 a 操作var_dump也会生成 2 行 HTML:
D:\Wordpress\wp-content\themes\new_theme\functions.php:161:string '<span class="woocommerce-Price-amount amount"><bdi><span class="woocommerce-Price-currencySymbol">$</span>18.00</bdi></span>' (length=128)
D:\Wordpress\wp-content\themes\new_theme\functions.php:161:string '<span class="woocommerce-Price-amount amount"><bdi><span class="woocommerce-Price-currencySymbol">$</span>18.00</bdi></span>' (length=128)
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
php wordpress woocommerce hook-woocommerce woocommerce-theming
我正在努力更改默认选择的运输选项。仅当客户购物车中的金额超过 70 美元以上时,才会显示“免费送货”送货选项。如果购物车中的金额低于 70 美元,运输选项将不会显示在运输选项中。
如果客户的金额超过 70 美元或以上,则会显示“免费送货”选项,并且它应该是默认选择的送货选项。
我尝试添加以下代码片段,但它似乎对我不起作用,或者修改 ID 时可能出现错误(不确定)。
add_action( 'woocommerce_before_cart', 'set_default_chosen_shipping_method', 5 );
function set_default_chosen_shipping_method(){
//
if( count( WC()->session->get('shipping_method_0')['rates'] ) > 0 ){
foreach( WC()->session->get('shipping_method_0')['rates'] as $rate_id =>$rate)
if($rate->method_id == 'free_shipping30'){
$default_rate_id = array( $rate_id );
break;
}
WC()->session->set('chosen_shipping_methods', $default_rate_id );
}
}
Run Code Online (Sandbox Code Playgroud)
我在这里得到了这个片段的想法
先感谢您!!
我收到以下错误:
[2021 年 11 月 30 日 16:08:47 UTC] PHP 致命错误:未捕获的 ArgumentCountError:函数 order_completed() 的参数太少,1 个传入 /home/brantsho/public_html/wp-includes/class-wp-hook.php在第 305 行和 /home/brantsho/public_html/wp-content/themes/glowing/functions.php:28 中预期的第 4 行堆栈跟踪:#0 /home/brantsho/public_html/wp-includes/class-wp-hook。 php(305): order_completed() #1 /home/brantsho/public_html/wp-includes/class-wp-hook.php(327): WP_Hook->apply_filters() #2 /home/brantsho/public_html/wp-includes /plugin.php(470): WP_Hook->do_action() #3 /home/brantsho/public_html/wp-content/plugins/woocommerce/includes/class-wc-order.php(364): do_action() #4 / home/brantsho/public_html/wp-content/plugins/woocommerce/includes/class-wc-order.php(222): WC_Order->status_transition() #5 /home/brantsho/public_html/wp-content/plugins/woocommerce/包括/class-wc-order.php(334): WC_Order->save() #6 /home/brantsho/public_html/wp-content/plugins/woocommerce/includes/class-wc-ajax.php(530): WC_Order ->update_status() #7 /home/brantsho/public_html/wp-incl 在 /home/brantsho/public_html/wp-content/themes/glowing/functions.php 第 28 行
但我的functions.php 看起来不错:
<?php
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
define('GLOWING_VERSION', '1.0.0');
define('GLOWING_FILE_HANDLER', basename(get_template_directory()) . '-');
/**
* Inlcude …Run Code Online (Sandbox Code Playgroud) 我们的场景是:
访客用户无需注册即可进入网站并下一个或多个订单。一段时间后,他决定在该网站上注册。
现在注册后如何将客人订单链接到客户帐户?
我使用以下代码,但此代码仅适用于已经注册但购买时未登录的用户。有什么建议吗?
//assign user in guest order
add_action( 'woocommerce_new_order', 'action_woocommerce_new_order', 10, 1 );
function action_woocommerce_new_order( $order_id ) {
$order = new WC_Order($order_id);
$user = $order->get_user();
if( !$user ){
//guest order
$userdata = get_user_by( 'email', $order->get_billing_email() );
if(isset( $userdata->ID )){
//registered
update_post_meta($order_id, '_customer_user', $userdata->ID );
}else{
//Guest
}
}
}
Run Code Online (Sandbox Code Playgroud) hook-woocommerce ×10
woocommerce ×10
wordpress ×9
php ×6
orders ×3
product ×2
css ×1
sorting ×1
woothemes ×1