X

Solid Cedar Top Parlor Guitar

KA-GTR-PLR

$399.00 MSRP

The Kala Solid Cedar Parlor Guitar is a smaller-bodied member of our guitar line with a savory sound. This guitar caters to the songwriter, the r...
More Details →
X

Solid Spruce Top Ebony Orchestra Mini Guitar

KA-GTR-OM-SEB

$439.00 MSRP $249.00

The Kala Orchestra Mini Guitar delivers a classic steel-string sound on a smaller body size, making this instrument a phenomenal companion for lear...
More Details →
X
Out of Stock

Cedar Top Mahogany Nylon String Classical Guitar

KA-GTR-NY25

$219.00 MSRP

This product is temporarily unavailable online.

The Kala Student Guitar presents a familiar classical guitar look and feel with the guarantee of Kala quality and affordable price our ukuleles are...
More Details →
X
Out of Stock

Cedar Top Mahogany Nylon String 3/4 Size Classical Guitar

KA-GTR-NY23

$209.00 MSRP

This product is temporarily unavailable online.

The Kala Student Guitar presents a familiar classical guitar look and feel with the guarantee of Kala quality and affordable price our ukuleles are...
More Details →
X

Solid Mahogany Thinline Steel Guitar

KA-GTR-MTS-E

$399.00 MSRP

The Solid Mahogany Thinline Steel Guitar comes equipped with D’Addario EJ16 Phosphor Bronze strings for bright, well defined notes and chords tha...
More Details →
X
Out of Stock

Solid Mahogany Thinline Nylon Guitar

KA-GTR-MTN-E

$379.00 MSRP

This product is temporarily unavailable online.

The Solid Mahogany Thinline Nylon Guitar comes equipped with Savarez Nylon/Carbon classical guitar strings for a smooth warm tone. The thin body ...
More Details →
X
Out of Stock

Solid Cedar Top Mahogany Orchestra Mini Guitar

KA-GTR-OM-CMH

$219.00 MSRP

This product is temporarily unavailable online.

The Kala Orchestra Mini Guitar delivers a classic steel-string sound on a smaller body size, making this instrument a phenomenal companion for lear...
More Details →
// Preorder Property Handler (function() { function initPreorderProperty() { // Check if this is a preorder product if (!window.isPreorderProduct) { return; } console.log('✅ Preorder product detected'); // Add property to form submissions function addPreorderToForm() { const addToCartButtons = document.querySelectorAll( '[name="add"], ' + 'button[type="submit"][name="add"], ' + '.product-form__submit, ' + '[data-add-to-cart], ' + 'button.add-to-cart, ' + 'button[name="add"]' ); addToCartButtons.forEach(function(button) { button.addEventListener('click', function(e) { const form = button.closest('form'); if (form && form.action && form.action.includes('/cart/add')) { let preorderInput = form.querySelector('input[name="properties[_preorder]"]'); if (!preorderInput) { preorderInput = document.createElement('input'); preorderInput.type = 'hidden'; preorderInput.name = 'properties[_preorder]'; preorderInput.value = 'true'; form.appendChild(preorderInput); console.log('✅ Added _preorder hidden input'); } } }); }); } // Intercept AJAX cart adds function interceptCartAjax() { const originalFetch = window.fetch; window.fetch = function(...args) { const [url, config] = args; if (url && (url.includes('/cart/add.js') || url.includes('/cart/add'))) { if (config && config.body) { try { // Handle JSON body if (typeof config.body === 'string') { const data = JSON.parse(config.body); if (!data.properties) { data.properties = {}; } if (!data.properties._preorder) { data.properties._preorder = 'true'; console.log('✅ Added _preorder to AJAX request'); } config.body = JSON.stringify(data); } // Handle FormData else if (config.body instanceof FormData) { if (!config.body.has('properties[_preorder]')) { config.body.append('properties[_preorder]', 'true'); console.log('✅ Added _preorder to FormData'); } } } catch (e) { console.error('Error modifying cart request:', e); } } } return originalFetch.apply(this, args); }; } // Initialize when DOM is ready if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', function() { addPreorderToForm(); interceptCartAjax(); }); } else { addPreorderToForm(); interceptCartAjax(); } } // Initialize initPreorderProperty(); })();