function cart_empty_redirect_to_shop() { global $woocommerce; $shop_page_url = get_permalink( woocommerce_get_page_id( 'shop' ) ); if ( is_page('cart') && !sizeof($woocommerce->cart->cart_contents) ) { wp_redirect( $shop_page_url, 301 ); exit; } }
# -*- coding: utf-8 -*- """ Created on Sat Apr 3 14:12:04 2021 @author: KG """ # Import modules import pandas as pd import math from pulp import * # Define variables current_cost = 0.0 food_dict = {} # Load food data into food pandas dataframe food = pd.read_excel('diet.xls', skipfooter=3) # Get a preview of our food dataframe print(food) # Create a list of Protein food choices protein_list = ['Roasted Chicken', 'Poached Eggs', 'Scrambled Eggs', 'Bologna,Turkey', 'Frankfurter, Beef', 'Ham,Sliced,Extralean', 'Kielbasa,Prk', 'Pizza W/Pepperoni', 'Hamburger W/Toppings', 'Hotdog, Plain', 'Pork', 'Sardines in Oil', 'White Tuna in Water', 'Chicknoodl Soup', 'Splt Pea&Hamsoup', 'Beanbacn Soup,W/Watr'] # Load minimum and maximum values into the min_max table min_max = pd.read_excel('diet.xls', skiprows = food.shape[0]+1, usecols=("C:N"), header=0) column_names = pd.read_excel('diet.xls', usecols=("C:N"), nrows=0) min_max = pd.DataFrame(data=min_max.values, columns=column_names.columns) # Get a preview of our min_max file print(min_max) # Convert our food dataframe to a list food_data = food.values.tolist() food_list = [x[0] for x in food_data] # Create the Optimization Problem prob = LpProblem('DietProblem', LpMinimize) # Create the variables using LpVariable.dicts food_vars = LpVariable.dicts( "Food", food_list, lowBound = 0 ) # for food variables food_chosen = LpVariable.dicts("Chosen",food_list,0,1,cat='Integer') # for chosen foods protein_chosen = LpVariable.dicts("Protein",protein_list,0,1,cat='Integer') # for protein foods chosen # Add the Objective Function for cost costs = {x[0]:x[1] for x in food_data} prob += lpSum( costs[i] * food_vars[i] for i in food_list ) # Add each variable to the Optimization Problem by looping over the min_max dataframe for v in range(len(min_max.columns[1:])): # Get the variable name from the min_max dataframe variable = min_max.columns[1:][v] # Add the variable to the Optimization Problem food_dict[variable] = {x[0]:x[v+3] for x in food_data} prob += lpSum( food_dict[variable][i] * food_vars[i] for i in food_list ) >= min_max[variable][0] # >= min value for the variable prob += lpSum( food_dict[variable][i] * food_vars[i] for i in food_list ) <= min_max[variable][1] # <= max value for the variable # Add the Constraint where each food much be atleast 1/10 of the total serving for f in food_list: prob += food_vars[f] >= food_chosen[f] * 0.10 # Add the Constraint of selecing either Celery or Frozen Broccoli prob += food_chosen['Frozen Broccoli'] + food_chosen['Celery, Raw'] <= 1 # Add the Constraint of selecting atleast 3 choices from the list of Protein items prob += lpSum([food_chosen[p] for p in protein_list]) >= 3 # Store the solution of the Optimization Problem soln = prob.solve() # Get the Status of the Optimization Problem print( LpStatus[prob.status]) # Get the Amounts of the Foods Chosen for v in prob.variables(): if v.varValue != 0: print( f"{v.name} = {v.varValue:.2f}") # Get the Final Cost of Food Chosen print(f"Cost: {value(prob.objective)}")