【发布时间】:2019-10-15 23:44:44
【问题描述】:
我正在制作具有 3 个变量的产品。客户可以在我们的地方取货,或者我们可以交付产品。出于实际考虑,我们选择在那里销售的产品应该以包含 30、60 或 90 件产品的包装形式交付。
在显示价格之前,需要选择所有 3 个变量。所以问题来了。如果有人想在我们的地方取货,只需选择 2 个变量:长度(米)和取货或送货。但这不会付出代价。因此,我需要在“包裹”中再次插入“取货”以获取价格。
但我想在包裹中隐藏“提货”,所以我不会让访客感到困惑。图片描述了我正在寻找的内容:
该页面可以[在这里看到][2]
这是我到现在为止的代码,但正如我所见,要么我的代码没有执行,要么代码完全错误。该页面看起来与我将代码添加到functions.php之前完全相同,并且没有执行任何函数。
根据我的描述,有人知道我的代码有什么问题吗?
HTML:
<ul class="variable-items-wrapper button-variable-wrapper" data-attribute_name="attribute_pa_packages">
<li data-wvstooltip="pickup" class="variable-item button-variable-item button-variable-item-pickup" title="pickup" data-value="pickup">
<span class="variable-item-span variable-item-span-button">pickup</span>
</li>
</ul>
<ul class="variable-items-wrapper button-variable-wrapper" data-attribute_name="attribute_pa_packages">
<li data-wvstooltip="pickup" class="variable-item button-variable-item button-variable-item-pickup selected" title="pickup" data-value="pickup">
<span class="variable-item-span variable-item-span-button">pickup</span></li>
</li>
</ul>
PHP 和脚本:
function custom_script_name(){
?>
<script>
jQuery("ul[data-attribute_name=attribute_pa_pickup-og-delivery] li").click(function(){
var selectedDelivery = jQuery("ul[data-attribute_name=attribute_pa_pickup-og-delivery]").find("li.selected").attr("data-value");
if (selectedDelivery == "pickup"){
jQuery("ul[data-attribute_name=attribute_pa_packages] li[data-value=pickup] span").click();
jQuery("ul[data-attribute_name=attribute_pa_packages] li[data-value=pickup]").hide(); // hide the "pickup" option in "Packages" if you like
}
});
</script>
<?php
}
add_action('wp_head', 'custom_script_name');
【问题讨论】:
-
如果您提供取货和送货的下拉菜单并根据您的选择显示更多选项,这很容易。
-
感谢您的评论。我需要将其保留为按钮,因为客户需要这样做。 Wordpress 中没有条件逻辑。然后你需要购买客户不想要的重力表格等。因此,我正在尽力寻找替代解决方案:-)
-
不明白是什么问题?
-
感谢您的评论@stefo91。如果我不够清楚,我很抱歉。我刚刚再次更新了我的问题,我希望它更清楚。
-
您可以添加 display: none 到包裹拾取或添加一个 css 类到他们有 display: none;然后通过jquery检查是否有人从“提货”中点击以显示从包裹中提货
标签: javascript php jquery css wordpress