| Current File : /home/tekstore/public_html/wp-content/themes/cerato/inc/woocommerce/woocommerce-helper.php |
<?php
/**
* WooCommerce functions
* Functions for check and functions for 3rd plugin.
* @package Zoo Theme
* @version 3.0.0
* @author Zootemplate
* @link http://www.zootemplate.com
* @copyright Copyright (c) 2017 Zootemplate
* @des All custom functions of WooCommerce will add at this file.
*/
/**
* zoo_product_hover_effect
* Hover effect of product item
* @uses using function zoo_product_hover_effect()
* @return Hover effect style.
*/
if (!function_exists('zoo_product_hover_effect')) {
function zoo_product_hover_effect()
{
$zoo_hover_effect = get_theme_mod('zoo_product_hover_effect', 'default');
if (isset($_GET['product_style'])):
$zoo_hover_effect = $_GET['product_style'];
endif;
return $zoo_hover_effect;
}
}
/**
* zoo_show_alternate_img
* Check allow show alternative image, disable in mobile;
* @uses using function zoo_show_alternate_img()
* @return allow show or not.
*/
if (!function_exists('zoo_show_alternate_img')) {
function zoo_show_alternate_img()
{
if (get_theme_mod('zoo_enable_alternative_images', '1') != '0' && !wp_is_mobile()) {
return true;
}else{
return false;
}
}
}
/**
* zoo_enable_catalog_mod
* Enable catalog mod
* @uses using function zoo_enable_catalog_mod()
* @return Remove button cart by using hook, and catalog status enable or not.
*/
if (!function_exists('zoo_enable_catalog_mod')) {
function zoo_enable_catalog_mod()
{
$zoo_catalog_status = get_theme_mod('zoo_enable_catalog_mod', '') == '1' ? true : false;
if (isset($_GET['catalog_mod'])):
$zoo_catalog_status = true;
endif;
return $zoo_catalog_status;
}
}
/*-------Single Woocommerce functions-------*/
/**
* zoo_enable_product_share
* Check allow show/hide template share of single product.
* @uses use function zoo_enable_product_share() for check.
* @return bool true/false.
*/
if (!function_exists('zoo_enable_product_share')) {
function zoo_enable_product_share()
{
$zoo_status = false;
if (get_theme_mod('zoo_enable_product_share', '1') == 1) {
$zoo_status = true;
}
return $zoo_status;
}
}
/**
* zoo_single_product_layout Single Product layout
* @return: Layout of single product page.
*
*/
if (!function_exists('zoo_single_product_layout')) {
function zoo_single_product_layout($productId = '')
{
if ($productId != '') {
$zoo_layout_single = get_post_meta($productId, 'zoo_single_product_layout', true);
} else {
$zoo_layout_single = get_post_meta(get_the_ID(), 'zoo_single_product_layout', true);
}
if ($zoo_layout_single == 'inherit' || $zoo_layout_single == '') {
$zoo_layout_single = get_theme_mod('zoo_single_product_layout', 'vertical-thumb');
}
if($zoo_layout_single == 'grid-thumb' || $zoo_layout_single == 'sticky-1' || $zoo_layout_single == 'sticky-2' || $zoo_layout_single == 'sticky-3'){
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_sharing', 50 );
add_action( 'woocommerce_product_after_tabs', 'woocommerce_template_single_sharing', 12 );
}
return $zoo_layout_single;
}
}
/**
* zoo_add_tab_to_summary Single Product layout
* @return: Return add product tabs to product summary.
*
*/
if (!function_exists('zoo_add_tab_to_summary')) {
function zoo_add_tab_to_summary($productId = '')
{
$zoo_layout_single = zoo_single_product_layout($productId);
if ($zoo_layout_single == 'custom') {
if ($productId != '') {
$zoo_tabs_option = get_post_meta($productId, 'zoo_add_tab_to_summary', true);
} else {
$zoo_tabs_option = get_post_meta(get_the_ID(), 'zoo_add_tab_to_summary', true);
}
if ($zoo_tabs_option == 'inherit' || $zoo_tabs_option == '') {
$zoo_tabs_option = get_theme_mod('zoo_add_tab_to_summary', true);
}
if($zoo_tabs_option=='yes'||$zoo_tabs_option=='1'){
$zoo_tabs_option=true;
}else{
$zoo_tabs_option=false;
}
} else {
switch ($zoo_layout_single) {
case 'carousel':
$zoo_tabs_option = true;
break;
case 'sticky-1':
$zoo_tabs_option = true;
break;
case 'sticky-2':
$zoo_tabs_option = true;
break;
case 'sticky-3':
$zoo_tabs_option = true;
break;
case 'grid-thumb':
$zoo_tabs_option = true;
break;
default:
$zoo_tabs_option = false;
}
}
return $zoo_tabs_option;
}
}
/**
* zoo_single_product_content_layout Single Product layout
* @return: Layout content of single product page.
*
*/
if (!function_exists('zoo_single_product_content_layout')) {
function zoo_single_product_content_layout($productId = '')
{
$zoo_layout_single = zoo_single_product_layout($productId);
if ($zoo_layout_single == 'custom') {
if ($productId != '') {
$zoo_layout_content_single = get_post_meta($productId, 'zoo_single_product_content_layout', true);
} else {
$zoo_layout_content_single = get_post_meta(get_the_ID(), 'zoo_single_product_content_layout', true);
}
if ($zoo_layout_content_single == 'inherit' || $zoo_layout_content_single == '') {
$zoo_layout_content_single = get_theme_mod('zoo_single_product_content_layout', 'left_content');
}
} else {
switch ($zoo_layout_single) {
case 'vertical-thumb':
$zoo_layout_content_single = 'right_content';
break;
case 'horizontal-thumb':
$zoo_layout_content_single = 'right_content';
break;
case 'grid-thumb':
$zoo_layout_content_single = 'right_content';
break;
case 'carousel':
$zoo_layout_content_single = 'full_content';
break;
default:
$zoo_layout_content_single = 'sticky_content';
}
}
return $zoo_layout_content_single;
}
}
/**
* zoo_product_gallery_layout Product gallery layout
* @return: layout of product gallery
*
*/
if (!function_exists('zoo_product_gallery_layout')) {
function zoo_product_gallery_layout($productId = '')
{
$zoo_layout_gallery = zoo_single_product_layout($productId);
if ($zoo_layout_gallery == 'custom') {
if ($productId != '') {
$zoo_layout_gallery = get_post_meta($productId, 'zoo_product_gallery_layout', true);
} else {
$zoo_layout_gallery = get_post_meta(get_the_ID(), 'zoo_product_gallery_layout', true);
}
if ($zoo_layout_gallery == 'inherit' || $zoo_layout_gallery == '') {
$zoo_layout_gallery = get_theme_mod('zoo_product_gallery_layout', 'grid');
}
} else {
switch ($zoo_layout_gallery) {
case 'vertical-thumb':
$zoo_layout_gallery = 'vertical-left';
break;
case 'carousel':
$zoo_layout_gallery = 'slider';
break;
case 'grid-thumb':
$zoo_layout_gallery = 'grid';
break;
case 'sticky-2':
$zoo_layout_gallery = 'vertical-left';
break;
case 'sticky-3':
$zoo_layout_gallery = 'sticky';
break;
default:
$zoo_layout_gallery = 'horizontal';
}
}
return $zoo_layout_gallery;
}
}
/**
* zoo_product_gallery_layout Product gallery layout
* @return: layout of product gallery
*
*/
if(!function_exists('zoo_product_gutter')){
function zoo_product_gutter(){
$gutter=get_theme_mod('zoo_shop_loop_item_gutter', 30) / 2;
if (isset($_GET['gutter'])):
$gutter = $_GET['gutter']/2;
endif;
return $gutter;
}
}
/**3rd plugin support*/
//Vendor hook WCMp
if (class_exists('WCMp')) {
add_filter('wcmp_sold_by_text_after_products_shop_page', '__return_false');
function zoo_WCMp_vendor_name()
{
global $post;
if ('Enable' === get_wcmp_vendor_settings('sold_by_catalog', 'general')) {
$vendor = get_wcmp_product_vendors($post->ID);
if ($vendor) {
$sold_by_text = apply_filters('wcmp_sold_by_text', esc_html__('Sold By', 'cerato'), $post->ID);
echo ent2ncr('<a class="zoo-by-vendor-name-link" href="' . $vendor->permalink . '">' . $sold_by_text . ' ' . $vendor->user_data->display_name . '</a>');
}
}
}
// Add link Register form vendor
if (!function_exists('clever_register_vendor_url')) {
function clever_register_vendor_url()
{
echo ent2ncr('<p class="vendor-register"><a href="' . esc_url(get_permalink(wcmp_vendor_registration_page_id())) . '"> Create a Vendor account. </a></p>');
}
}
add_action('woocommerce_register_vendor_form', 'clever_register_vendor_url', 10);
// Get vendor user
if (!function_exists('get_vendor_user')) {
function get_vendor_user()
{
global $WCMp;
$ob_vendors = get_wcmp_vendors();
$vendors = array();
foreach ($ob_vendors as $key => $value) {
$id = $value->user_data->data->ID;
$name = $value->user_data->data->user_login;
$vendors[]['id'] = $id;
$vendors[]['name'] = $name;
}
return $vendors;
}
}
if (!function_exists('zoo_get_vendor_id')) {
function zoo_get_vendor_id()
{
global $WCMp, $vendor, $wp;
$vendor_store = get_wcmp_vendor_by_store_url(home_url($wp->request));
$check_vendor_store = $vendor_store ? $vendor_store->taxonomy : '';
$vendor_id = false;
if ($check_vendor_store == 'dc_vendor_shop') {
$vendor_id = $vendor->id;
}
return $vendor_id;
}
}
if (!function_exists('zoo_get_vendor_info')) {
function zoo_get_vendor_info()
{
global $WCMp, $vendor, $wp;
$vendor_archive_info = array();
$vendor_archive_info['vendor_id'] = $vendor_archive_info['display_name'] = $vendor_archive_info['profile'] = '';
$vendor_archive_info['banner'] = $vendor_archive_info['description'] = $vendor_store = $check_vendor_store = '';
$vendor_store = get_wcmp_vendor_by_store_url(home_url($wp->request));
$check_vendor_store = $vendor_store ? $vendor_store->taxonomy : '';
if ($check_vendor_store == 'dc_vendor_shop') {
$image = $vendor->get_image();
$allow_htmlddress = '';
if ($vendor->city) {
$address = $vendor->city . ', ';
}
if ($vendor->state) {
$address .= $vendor->state . ', ';
}
if ($vendor->country) {
$address .= $vendor->country;
}
$vendor_archive_info['vendor_id'] = $vendor->id;
$vendor_archive_info['display_name'] = $vendor->user_data->data->display_name;
$vendor_archive_info['profile'] = $image;
$vendor_archive_info['banner'] = $vendor->get_image('banner');
$vendor_archive_info['description'] = stripslashes($vendor->description);
$vendor_archive_info['mobile'] = $vendor->phone;
$vendor_archive_info['location'] = $address;
$vendor_archive_info['email'] = $vendor->user_data->user_email;
$vendor_archive_info['address_1'] = get_user_meta($vendor->id, '_vendor_address_1', true);
$vendor_archive_info['address_2'] = get_user_meta($vendor->id, '_vendor_address_2', true);
$vendor_archive_info['social']['fb'] = get_user_meta($vendor->id, '_vendor_fb_profile', true);
$vendor_archive_info['social']['tw'] = get_user_meta($vendor->id, '_vendor_twitter_profile', true);
$vendor_archive_info['social']['ld'] = get_user_meta($vendor->id, '_vendor_linkdin_profile', true);
$vendor_archive_info['social']['gp'] = get_user_meta($vendor->id, '_vendor_google_plus_profile', true);
$vendor_archive_info['social']['yt'] = get_user_meta($vendor->id, '_vendor_youtube', true);
$vendor_archive_info['social']['it'] = get_user_meta($vendor->id, '_vendor_instagram', true);
}
return $vendor_archive_info;
}
}
}
if (!function_exists('check_vendor')) {
function check_vendor()
{
global $WCMp, $vendor, $wp;
$check_vendor = false;
if (class_exists('WCMp')) {
$vendor_store = get_wcmp_vendor_by_store_url(home_url($wp->request));
$check_vendor_store = $vendor_store ? $vendor_store->taxonomy : '';
if ($check_vendor_store == 'dc_vendor_shop') {
$check_vendor = true;
}
}
return $check_vendor;
}
}
//GDPR Hook
remove_action('register_form', array('GDPR', 'consent_checkboxes'));