这就是我现在拥有的!。
主题/ deliverHours.js:
更新
window.onload = function () {
getHour= new Date().toLocaleTimeString("en-US",{timeZone:"America/New_York",hour12: false});
getDay= new Date().toLocaleTimeString("en-US",{timeZone:"America/New_York",hour12: false,weekday:'short'});
day = getDay.split(' ');
arrayDate = getHour.split(':');
document.getElementById('shipping_method_0_local_pickup8').onclick=function() {
if(document.getElementById('shipping_method_0_local_pickup8').checked){
console.log('local Pickup!');
console.log(getDay);
if(!(arrayDate[0] >= 7 && arrayDate[0] <= 16 && day[0] == 'Sun')) {
document.getElementById('msg').innerHTML = "Sorry,We are Closed";
document.getElementById('checkOut').disabled = true
}else{
document.getElementById('checkOut').disabled = false
console.log('enjoy your food');
}
}
}
document.getElementById('shipping_method_0_flat_rate1').onclick=function(){
if(document.getElementById('shipping_method_0_flat_rate1').checked){
console.log('flat rate!');
console.log(getDay);
if(!(arrayDate[0] >= 7 && arrayDate[0] <= 16 && day[0] == 'Sun')) {
document.getElementById('msg').innerHTML = "sorry,we are closed. "
document.getElementById('checkOut').disabled = true
}else{
document.getElementById('checkOut').disabled = false
console.log('enjoy your food');
}
}
}
}
主题/ function.php:
function deliver_business_hours(){
wp_register_script('deliverHours', plugins_url('deliverHours.js'), array(),'1.0', true);
wp_enqueue_script('deliverHours');
}
add_action( 'wp_enqueue_script', 'deliver_business_hours');
Lorem Ipsum只是印刷和排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是业界标准的虚拟文本,当时一台未知的打印机采用了类型的厨房,并将其拼凑成一个类型的样本书。这段文字没用......
应该正常工作吗?。
答案 0 :(得分:1)
对于初学者来说,这是一个不幸的常见问题。让我们一起来看看为什么这不起作用:
echo
会将字符串中的所有内容注入要发送回用户的html。<?php>
。 浏览器不知道如何执行php。他们的默认设置是简单地忽略他们不理解的任何内容。这就是为什么它不起作用,通过回应php代码,你已经告诉浏览器做了它没有做的事情&# 39;理解。PHP是服务器端语言。如果要编写php,必须在HTTP请求过程中由服务器执行。如果您需要在客户端执行某些操作,则必须使用所有javascript编写。
所以这给你留下了两个选择:
在您的情况下,我认为一些javascript应该能够通知客户您的交货时间。
关于编程风格的附注:
你确实不应该回复任何html标记,尤其是<script>
和<style>
标记。您应该有单独的.js和.css文件,然后将这些文件包含在html文档中。 WordPress提供了一个方便的功能:wp_enqueue_script,它将以适当的方式为您完成此任务。
更新:
对于PHP:您需要将单选按钮放入提交的表单中。可能使用适当的钩子/过滤器进行woocommerce。之后,可以在$_POST['shipping_method']
提交时访问该值。
对于JS:Here是关于从浏览器获取特定于时区的日期时间的问题。看起来这是一个非常本地的网上商店,所以我提到实例化javascript的Date对象获取当前的本地日期时间。所以:
var now = new Date();
var hour = now.getHours();
var day = now.getDay();
当你在php中使用它们时,应该得到你的时间和日期。