var breeze_prefetch = {"local_url":"https://bidbat.com","ignore_remote_prefetch":"1","ignore_list":["wp-admin","wp-login.php"]};
//# sourceURL=breeze-prefetch-js-extra
Skip to contentWhy Hire Our WooCommerce Virtual Assistants
You need remote assistance so you won’t have to spend the whole day handling the day-to-day operations. However, if you somehow hire the wrong individual, instead of getting help, you’ll be wasting your precious time and energy instructing them and fixing their mistakes.
At Bidbat, we’ve a proven vetting and screening process that filters out only the industry-specific top talents from all around the world. As a result, you can have peace of mind that you’ve added only an experienced, skilled, and customer-oriented virtual assistant for WooCommerce to your team who will be worth it and help meet your ecommerce goals.
How Our Woocommerce VAs Help
Stock & Product Management
Adding Products | Category, Tag & Product Attribute Management | Inventory Tracking | Handling Backorders | Managing Low Stocks
Store Setup & Configuration
Theme Customization | Adding Plugins | Defining User Roles | Configuring Shipping & Tax Settings, Payment Gateways & More
Order Management & Fulfillment
Order Receipt, Processing & Tracking | Reviewing Orders | Packing & Shipping Arrangements | Tracking & Reporting Updates
Customer Support
Answering to Customer Emails | Handling Reviews & Ratings | Integrating & Using Customer Support Tools for Automation
WooCommerce SEO
Keyword Research | Product Page Optimization | User-Friendly Site Structure | Content Optimization | Technical SEO
Marketing & Promotion
Email Marketing | SEM, SMM, PPC | Content Marketing | Offering Deals & Discounts | Running Targeted Campaigns
Analytics & Reporting
Data Collection & Aggregation | Performance Tracking | Weekly/Monthly Reports | Trend Identification | Decision Making Support
Security & Maintenance
Software Update | Securing User Accounts & Payment Gateways | Using Plugins & WAFs | Creating Backups
Cross-Platform Integration
POS, Marketplace, CRM, & Accounting Software Integration | Data Synchronization | Enabling Automated Workflows | API Keys & Access Management
Creative & Design Tasks
Site Architecture Planning | Theme Customization | UI/UX | Branding | Responsive Design | Custom Functionality
40+ Industries
Supporting real estate, e-commerce, healthcare, legal, and other key industries.
98.5% Client Satisfaction
Satisfaction rate reported based on post-onboarding client feedback surveys.
72% Repeat Client Rate
Our clients trust us enough to come back, again and again, for the value we deliver.
Hear from Our Clients
Here’s why our clients love our services and decide to stay with us for the long-term.
Frequently Asked Questions
Work Smarter. Our Pros Will Handle the Rest.
Our friendly client reps are just a click away. Tell us what’s on your mind – this could be the start of something big!
https://bidbat.com/wp-includes/js/jquery/jquery.min.js
https://bidbat.com/wp-includes/js/jquery/jquery-migrate.min.js
https://bidbat.com/wp-content/plugins/breeze/assets/js/js-front-end/breeze-prefetch-links.min.js
// Function to add new logos dynamically with SVG
function addNewLogo(logoName, svgContent = null) {
const marqueeWrapper = document.querySelector('.marquee-wrapper');
const existingLogos = document.querySelectorAll('.marquee-item');
const logoCount = existingLogos.length / 2; // Divide by 2 because of duplication
// Default SVG content if none provided
const defaultSvg = `
<svg class="logo" viewBox="0 0 140 60" fill="currentColor">
<rect x="15" y="20" width="20" height="20" rx="3" fill="currentColor"/>
<text x="45" y="25" font-family="Arial" font-size="12" font-weight="bold">${logoName}</text>
<text x="45" y="38" font-family="Arial" font-size="6">Brand Logo</text>
</svg>
`;
// Create new logo element
const newLogoHtml = `
<div class="marquee-item">
${svgContent || defaultSvg}
</div>
`;
// Add to both sets (original and duplicate)
const middleIndex = Math.floor(existingLogos.length / 2);
existingLogos[middleIndex - 1].insertAdjacentHTML('afterend', newLogoHtml);
existingLogos[existingLogos.length - 1].insertAdjacentHTML('afterend', newLogoHtml);
// Update animation width
const newLogoCount = logoCount + 1;
const itemWidth = window.innerWidth <= 480 ? 120 : window.innerWidth <= 768 ? 150 : 200;
marqueeWrapper.style.width = `calc(${itemWidth}px * ${newLogoCount * 2})`;
// Update animation
updateAnimation(newLogoCount, itemWidth);
}
// Function to add logo with custom SVG
function addCustomSVGLogo(svgContent) {
const marqueeWrapper = document.querySelector('.marquee-wrapper');
const existingLogos = document.querySelectorAll('.marquee-item');
const logoCount = existingLogos.length / 2;
const newLogoHtml = `
<div class="marquee-item">
${svgContent}
</div>
`;
const middleIndex = Math.floor(existingLogos.length / 2);
existingLogos[middleIndex - 1].insertAdjacentHTML('afterend', newLogoHtml);
existingLogos[existingLogos.length - 1].insertAdjacentHTML('afterend', newLogoHtml);
const newLogoCount = logoCount + 1;
const itemWidth = window.innerWidth <= 480 ? 120 : window.innerWidth <= 768 ? 150 : 200;
marqueeWrapper.style.width = `calc(${itemWidth}px * ${newLogoCount * 2})`;
updateAnimation(newLogoCount, itemWidth);
}
function updateAnimation(logoCount, itemWidth) {
const styleSheet = document.styleSheets[0];
const keyframeRule = Array.from(styleSheet.cssRules).find(rule =>
rule.type === CSSRule.KEYFRAMES_RULE && rule.name === 'scroll'
);
if (keyframeRule) {
styleSheet.deleteRule(Array.from(styleSheet.cssRules).indexOf(keyframeRule));
}
const newKeyframe = `
@keyframes scroll {
0% { transform: translateX(0); }
100% { transform: translateX(-${itemWidth * logoCount}px); }
}
`;
styleSheet.insertRule(newKeyframe, styleSheet.cssRules.length);
}
// Example: Add new logo after 5 seconds
// setTimeout(() => {
// addNewLogo('Microsoft');
// }, 5000);
// Handle responsive changes
window.addEventListener('resize', () => {
const logoCount = document.querySelectorAll('.marquee-item').length / 2;
const itemWidth = window.innerWidth <= 480 ? 120 : window.innerWidth <= 768 ? 150 : 200;
document.querySelector('.marquee-wrapper').style.width = `calc(${itemWidth}px * ${logoCount * 2})`;
updateAnimation(logoCount, itemWidth);
});
window.addEventListener('load', function() {
const blurElements = document.querySelectorAll('.parallax-scroll');
// Clear zone settings - desktop and mobile
const blurSettings = {
desktop: {
clearZone: 300, // Center - 300px clear zone
maxBlur: 5
},
mobile: {
clearZone: 250, // Mobile center 150px clear zone
maxBlur: 3
}
};
const isMobile = window.innerWidth <= 768;
const currentSettings = isMobile ? blurSettings.mobile : blurSettings.desktop;
function updateBlur() {
const scrollY = window.pageYOffset;
const windowHeight = window.innerHeight;
const viewportCenter = scrollY + windowHeight / 2;
blurElements.forEach(element => {
const rect = element.getBoundingClientRect();
const elementTop = rect.top + scrollY;
const elementHeight = rect.height;
const elementCenter = elementTop + elementHeight / 2;
const distanceFromCenter = Math.abs(viewportCenter - elementCenter);
let blur = 0;
if (distanceFromCenter > currentSettings.clearZone) {
const blurDistance = distanceFromCenter - currentSettings.clearZone;
const blurProgress = Math.min(1, blurDistance / currentSettings.clearZone);
blur = blurProgress * currentSettings.maxBlur;
}
element.style.filter = `blur(${blur}px)`;
});
}
let isScrolling = false;
function handleScroll() {
if (!isScrolling) {
requestAnimationFrame(() => {
updateBlur();
isScrolling = false;
});
isScrolling = true;
}
}
window.addEventListener('scroll', handleScroll, { passive: true });
updateBlur();
});
document.addEventListener("DOMContentLoaded", function () {
if (typeof jQuery !== "undefined") {
jQuery(function ($) {
$(window).scroll(function () {
var scrollTop = $(window).scrollTop();
if (scrollTop > 100) {
$(".header-wrapper").addClass("fixed");
} else {
$(".header-wrapper").removeClass("fixed");
}
});
});
} else {
console.log("jQuery is not loaded!");
}
});
// Add interactive click effect
const container = document.querySelector('.custom-icon-container');
container.addEventListener('click', function() {
// Create ripple effect on click
const ripple = document.createElement('div');
ripple.style.position = 'absolute';
ripple.style.width = '100%';
ripple.style.height = '100%';
ripple.style.borderRadius = '50%';
ripple.style.border = '3px solid rgba(255, 75, 51, 0.8)';
ripple.style.animation = 'ripple 0.6s ease-out';
ripple.style.pointerEvents = 'none';
this.appendChild(ripple);
setTimeout(() => {
ripple.remove();
}, 600);
});
document.addEventListener("DOMContentLoaded", function () {
const btn = document.getElementById("schedule-demo");btn.addEventListener("click", function (e) {
e.preventDefault(); // prevent page reload
Calendly.initPopupWidget({
url: 'https://calendly.com/bidbatva/bidbat',
prefill: {},
pageSettings: {
backgroundColor: 'ffffff',
hideEventTypeDetails: false,
hideLandingPageDetails: false,
primaryColor: '0073e6',
textColor: '000000'
}
});
return false;
});
});
const lazyloadRunObserver = () => {
const lazyloadBackgrounds = document.querySelectorAll( `.e-con.e-parent:not(.e-lazyloaded)` );
const lazyloadBackgroundObserver = new IntersectionObserver( ( entries ) => {
entries.forEach( ( entry ) => {
if ( entry.isIntersecting ) {
let lazyloadBackground = entry.target;
if( lazyloadBackground ) {
lazyloadBackground.classList.add( 'e-lazyloaded' );
}
lazyloadBackgroundObserver.unobserve( entry.target );
}
});
}, { rootMargin: '200px 0px 200px 0px' } );
lazyloadBackgrounds.forEach( ( lazyloadBackground ) => {
lazyloadBackgroundObserver.observe( lazyloadBackground );
} );
};
const events = [
'DOMContentLoaded',
'elementor/lazyload/observe',
];
events.forEach( ( event ) => {
document.addEventListener( event, lazyloadRunObserver );
} );
var wpilFrontend = {"ajaxUrl":"/wp-admin/admin-ajax.php","postId":"2360","postType":"post","openInternalInNewTab":"0","openExternalInNewTab":"0","disableClicks":"0","openLinksWithJS":"0","trackAllElementClicks":"0","clicksI18n":{"imageNoText":"Image in link: No Text","imageText":"Image Title: ","noText":"No Anchor Text Found"}};
//# sourceURL=wpil-frontend-script-js-extra
https://bidbat.com/wp-content/plugins/link-whisper/js/frontend.min.js
https://bidbat.com/wp-content/plugins/elementor/assets/js/webpack.runtime.min.js
https://bidbat.com/wp-content/plugins/elementor/assets/js/frontend-modules.min.js
https://bidbat.com/wp-includes/js/jquery/ui/core.min.js
var elementorFrontendConfig = {"environmentMode":{"edit":false,"wpPreview":false,"isScriptDebug":false},"i18n":{"shareOnFacebook":"Share on Facebook","shareOnTwitter":"Share on Twitter","pinIt":"Pin it","download":"Download","downloadImage":"Download image","fullscreen":"Fullscreen","zoom":"Zoom","share":"Share","playVideo":"Play Video","previous":"Previous","next":"Next","close":"Close","a11yCarouselPrevSlideMessage":"Previous slide","a11yCarouselNextSlideMessage":"Next slide","a11yCarouselFirstSlideMessage":"This is the first slide","a11yCarouselLastSlideMessage":"This is the last slide","a11yCarouselPaginationBulletMessage":"Go to slide"},"is_rtl":false,"breakpoints":{"xs":0,"sm":480,"md":576,"lg":992,"xl":1440,"xxl":1600},"responsive":{"breakpoints":{"mobile":{"label":"Mobile Portrait","value":575,"default_value":767,"direction":"max","is_enabled":true},"mobile_extra":{"label":"Mobile Landscape","value":767,"default_value":880,"direction":"max","is_enabled":true},"tablet":{"label":"Tablet Portrait","value":991,"default_value":1024,"direction":"max","is_enabled":true},"tablet_extra":{"label":"Tablet Landscape","value":1199,"default_value":1200,"direction":"max","is_enabled":true},"laptop":{"label":"Laptop","value":1300,"default_value":1366,"direction":"max","is_enabled":false},"widescreen":{"label":"Widescreen","value":2400,"default_value":2400,"direction":"min","is_enabled":false}},"hasCustomBreakpoints":true},"version":"3.30.3","is_static":false,"experimentalFeatures":{"e_font_icon_svg":true,"additional_custom_breakpoints":true,"container":true,"e_optimized_markup":true,"theme_builder_v2":true,"nested-elements":true,"e_element_cache":true,"home_screen":true,"global_classes_should_enforce_capabilities":true,"cloud-library":true,"e_opt_in_v4_page":true,"mega-menu":true},"urls":{"assets":"https:\/\/bidbat.com\/wp-content\/plugins\/elementor\/assets\/","ajaxurl":"https:\/\/bidbat.com\/wp-admin\/admin-ajax.php","uploadUrl":"https:\/\/bidbat.com\/wp-content\/uploads"},"nonces":{"floatingButtonsClickTracking":"83e59ee1fa"},"swiperClass":"swiper","settings":{"page":[],"editorPreferences":[]},"kit":{"active_breakpoints":["viewport_mobile","viewport_mobile_extra","viewport_tablet","viewport_tablet_extra"],"viewport_mobile":575,"viewport_mobile_extra":767,"viewport_tablet":991,"viewport_tablet_extra":1199,"global_image_lightbox":"yes","lightbox_enable_counter":"yes","lightbox_enable_fullscreen":"yes","lightbox_enable_zoom":"yes","lightbox_enable_share":"yes","lightbox_title_src":"title","lightbox_description_src":"description"},"post":{"id":2360,"title":"Seasoned%20WooCommerce%20Virtual%20Assistants%20at%20%247-%2420%2Fhr%20-%20BidBat","excerpt":"","featuredImage":false}};
//# sourceURL=elementor-frontend-js-before
https://bidbat.com/wp-content/plugins/elementor/assets/js/frontend.min.js
https://bidbat.com/wp-content/plugins/elementor-pro/assets/lib/smartmenus/jquery.smartmenus.min.js
https://bidbat.com/wp-content/plugins/elementor/assets/lib/swiper/v8/swiper.min.js
https://bidbat.com/wp-content/plugins/elementor-pro/assets/js/webpack-pro.runtime.min.js
https://bidbat.com/wp-includes/js/dist/hooks.min.js
https://bidbat.com/wp-includes/js/dist/i18n.min.js
wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } );
//# sourceURL=wp-i18n-js-after
var ElementorProFrontendConfig = {"ajaxurl":"https:\/\/bidbat.com\/wp-admin\/admin-ajax.php","nonce":"645e2e39e5","urls":{"assets":"https:\/\/bidbat.com\/wp-content\/plugins\/elementor-pro\/assets\/","rest":"https:\/\/bidbat.com\/wp-json\/"},"settings":{"lazy_load_background_images":true},"popup":{"hasPopUps":true},"shareButtonsNetworks":{"facebook":{"title":"Facebook","has_counter":true},"twitter":{"title":"Twitter"},"linkedin":{"title":"LinkedIn","has_counter":true},"pinterest":{"title":"Pinterest","has_counter":true},"reddit":{"title":"Reddit","has_counter":true},"vk":{"title":"VK","has_counter":true},"odnoklassniki":{"title":"OK","has_counter":true},"tumblr":{"title":"Tumblr"},"digg":{"title":"Digg"},"skype":{"title":"Skype"},"stumbleupon":{"title":"StumbleUpon","has_counter":true},"mix":{"title":"Mix"},"telegram":{"title":"Telegram"},"pocket":{"title":"Pocket","has_counter":true},"xing":{"title":"XING","has_counter":true},"whatsapp":{"title":"WhatsApp"},"email":{"title":"Email"},"print":{"title":"Print"},"x-twitter":{"title":"X"},"threads":{"title":"Threads"}},"facebook_sdk":{"lang":"en_US","app_id":""},"lottie":{"defaultAnimationUrl":"https:\/\/bidbat.com\/wp-content\/plugins\/elementor-pro\/modules\/lottie\/assets\/animations\/default.json"}};
//# sourceURL=elementor-pro-frontend-js-before
https://bidbat.com/wp-content/plugins/elementor-pro/assets/js/frontend.min.js
https://bidbat.com/wp-content/plugins/elementor-pro/assets/js/elements-handlers.min.js
gsap.registerPlugin(ScrollTrigger);document.querySelectorAll(".heading-container .heading-animation").forEach((heading) => {
const split = new SplitType(heading, {
types: "words, chars",
});gsap.timeline({
scrollTrigger: {
trigger: heading.closest(".heading-container"),
start: "top 68%",
end: "+=60%",
scrub: 0.5,
},
}).to(split.chars, {
color: "#071D3B",
stagger: 0.1,
duration: 0.3,
ease: "none",
});
});
//reveal
gsap.utils.toArray('.jsimg, .jscontent, .jsblock').forEach((element, index) => {
gsap.to(element, {
clipPath: 'inset(0% 0% 0% 0%)',
duration: 1.8,
ease: "power3.out",
delay: index * 0.15,
scrollTrigger: {
trigger: element,
start: 'top 80%'
}
});
});
document.addEventListener('DOMContentLoaded', function() {
// Get elements
const toggleSwitch = document.getElementById('toggleSwitch');
const toggleLabelLeft = document.querySelector('.toggle-label-left');
const toggleLabelRight = document.querySelector('.toggle-label-right');
const hourlyElements = document.querySelectorAll('.hourly');
const monthlyElements = document.querySelectorAll('.monthly');
let isMonthly = false;// Toggle switch functionality
toggleSwitch.addEventListener('click', function() {
isMonthly = !isMonthly;
if (isMonthly) {
// Switch to monthly
toggleSwitch.classList.add('active');
toggleLabelLeft.classList.remove('active');
toggleLabelRight.classList.add('active');
// Show/hide price elements
hourlyElements.forEach(el => el.style.display = 'none');
monthlyElements.forEach(el => el.style.display = 'inline');
} else {
// Switch to hourly
toggleSwitch.classList.remove('active');
toggleLabelLeft.classList.add('active');
toggleLabelRight.classList.remove('active');
// Show/hide price elements
hourlyElements.forEach(el => el.style.display = 'inline');
monthlyElements.forEach(el => el.style.display = 'none');
}
});// Category Tab Switching
const categoryTabs = document.querySelectorAll('.category-tab');
const pricingContents = document.querySelectorAll('.pricing-content');categoryTabs.forEach(tab => {
tab.addEventListener('click', function() {
const category = this.getAttribute('data-category');
// Update active tab
categoryTabs.forEach(t => t.classList.remove('active'));
this.classList.add('active');// Show corresponding content
pricingContents.forEach(content => {
if (content.getAttribute('data-category') === category) {
content.classList.add('active');
} else {
content.classList.remove('active');
}
});
});
});// Select Package Button Actions
const selectBtns = document.querySelectorAll('.select-btn');
selectBtns.forEach(btn => {
btn.addEventListener('click', function() {
alert('Package selected! Redirecting to checkout...');
// Add your checkout logic here
});
});
});
jQuery(document).ready(function($) {
function addReadMore() {
$('.review-wrap h4').each(function() {
if ($(this).next('.read-more-btn').length > 0) {
return; // Already processed, skip
}
var $content = $(this);
var maxLines = 4;
var lineHeight = parseInt($content.css('line-height'));
var maxHeight = lineHeight * maxLines;
var actualHeight = $content[0].scrollHeight;
if (actualHeight > maxHeight) {
$content.css({
'max-height': maxHeight + 'px',
'overflow': 'hidden',
'position': 'relative'
});
$content.after('<span class="read-more-btn" style="color: #FF4B33; cursor: pointer; font-weight: 600; display: inline-block; margin-top: 10px;">Read More</span>');
$content.next('.read-more-btn').on('click', function() {
if ($content.css('max-height') !== 'none') {
$content.css('max-height', 'none');
$(this).text('Read Less');
} else {
$content.css('max-height', maxHeight + 'px');
$(this).text('Read More');
}
});
}
});
}addReadMore();
setTimeout(function() {
addReadMore();
}, 500);
$(document).on('click', '.swiper-button-next, .swiper-button-prev, .elementor-swiper-button', function() {
setTimeout(function() {
addReadMore();
}, 300);
});$(document).on('click', '.swiper-pagination-bullet', function() {
setTimeout(function() {
addReadMore();
}, 300);
});
});