Безплатна доставка с BoxNow и SameDay
Промоции

Малка черна рокля
60,00 € 48,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Блуза Киви
Original price was: 55,00 €.44,00 €Текущата цена е: 44,00 €.
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Жилетка Синьо като деним
66,00 € 53,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Рокля Синьо Деним
60,00 € 48,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Топ Лола в капучино мус
35,00 € – 110,00 € 28,00 € – 110,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Рокля Сънсет дълга
70,00 € 56,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Топ Лола в екрю
35,00 € – 110,00 € 28,00 € – 98,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Пола Рамие розова
35,00 € – 110,00 € 28,00 € – 98,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Рокля Черно злато
60,00 € 48,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Рокля Злато с шал
30,00 € – 90,00 € 27,00 € – 75,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Сет Капучино мус
35,00 € – 100,00 € 28,00 € – 100,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Сет Кралско синьо
35,00 € – 100,00 € 28,00 € – 100,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Сет летен деним Графит
45,00 € – 110,00 € 34,00 € – 100,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Дамски пуловер Капучино
62,00 € 52,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Сет Кашмир
40,90 € – 97,15 € 40,90 € – 97,15 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Сет Емералд
56,24 € – 117,60 € 51,13 € – 102,26 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Сако Резеда Шанел и рокля Валенсия
108,00 € – 184,07 € 108,00 € – 153,39 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Папионки за баща и син на коледна тематика
23,01 € – 25,56 € 20,45 € – 23,01 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Пуловер Черно Сребро с вълна
48,57 € – 48,57 € 40,00 € – 48,57 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Черен пуловер с вълна
48,57 € 35,79 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Сив пуловер с вълна
48,00 € – 48,00 € 35,79 € – 48,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Сет Бял Лен
45,00 € – 105,00 € 36,00 € – 105,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Рокля за плажа Русалка
74,00 € 60,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Пончо Лилак
74,00 € 55,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Риза с лен и тенсел
45,00 € 36,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Пуловер Анабел – 2
60,00 € – 60,00 € 50,00 € – 60,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Рокля Лен Цветя
101,24 € 80,78 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Рокля Бяло Пончо
70,00 € 56,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Блуза Анабел
60,33 € 40,90 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Панталон Фуксия
66,47 € – 66,47 € 53,17 € – 66,47 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Сет Фуксия
117,60 € – 117,60 € 94,08 € – 117,60 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Сет Кармина Бурана
97,15 € 89,48 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Рокля за плаж – бяла
60,00 € 56,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Бяло Вино AROGANT WOLF
10,23 € – 61,36 € 10,23 € – 51,13 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Вино Розе AROGANT WOLF
10,23 € – 61,36 € 10,23 € – 51,13 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Рокля мрежа жълта
60,00 € 56,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Рокля мрежа зелена
60,00 € 56,00 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Двулицева кърпа за плаж Ключ
33,23 € – 33,23 € 23,01 € – 33,23 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Двулицева кърпа за плаж Пчелна пита
33,23 € 23,01 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Покривка Златни елени и зелено
22,50 € – 36,81 € 11,25 € – 28,63 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Покривка Златни звезди и червено
22,50 € – 36,81 € 12,78 € – 28,63 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Покривка Златни елени и червено
22,50 € – 36,81 € 12,78 € – 20,45 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Тишлайфер Звезди и червено
Original price was: 11,25 €.7,67 €Текущата цена е: 7,67 €.
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Подложка за хранене Коледно каре
Original price was: 4,60 €.3,58 €Текущата цена е: 3,58 €.
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Квадратна покривка Коледно каре
14,83 € – 20,96 € 8,18 € – 11,25 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Тишлайфер Коледно Каре
7,67 € – 9,20 € 5,11 € – 6,14 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Покривка Коледно каре
16,87 € – 35,28 € 8,69 € – 17,90 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Панталон Френско сиьо
49,08 € – 49,08 € 39,88 € – 49,08 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Сако Френско синьо
85,90 € – 85,90 € 66,47 € – 85,90 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Панталон Слонова кост
49,08 € – 66,47 € 49,08 € – 49,08 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Туника Кимоно
50,11 € 40,90 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Поло и пуф
71,58 € 63,91 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>

Късо палто 2 в 1
92,03 € 76,69 €
<?php
global $product;
if ( ! $product || ! $product->is_type( 'variable' ) ) {
return;
}
$variations = $product->get_available_variations();
$sizes = [];
// Collect unique, in‑stock sizes with variation IDs and both raw and clean attribute values
foreach ( $variations as $variation ) {
if ( isset( $variation['attributes']['attribute_pa_size'] ) && $variation['is_in_stock'] ) {
// $raw_size might be "size-38" but we want "38"
$raw_size = $variation['attributes']['attribute_pa_size'];
$clean_size = preg_replace('/[^0-9]/', '', $raw_size);
$variation_id = $variation['variation_id'];
// Only add the first occurrence per size
if ( ! isset( $sizes[ (int) $clean_size ] ) ) {
$sizes[ (int) $clean_size ] = [
'raw_size' => $raw_size, // original value (if needed)
'clean_size' => $clean_size, // cleaned value ("38")
'variation_id' => $variation_id
];
}
}
}
// Sort sizes numerically ascending
ksort( $sizes );
if ( ! empty( $sizes ) ) {
$parent_id = $product->get_id();
?>
<div class="product-quick-add" data-product-id="<?php echo esc_attr( $parent_id ); ?>">
<div class="cfvsw-swatches-container cfvsw-product-container">
<?php foreach ( $sizes as $data ) : ?>
<div class="cfvsw-swatches-option cfvsw-label-option select-swatch"
data-variation-id="<?php echo esc_attr( $data['variation_id'] ); ?>"
data-size="<?php echo esc_attr( $data['clean_size'] ); ?>"
style="min-width:24px; min-height:24px; border-radius:3px; cursor:pointer;">
<div class="cfvsw-swatch-inner"><?php echo esc_html( $data['clean_size'] ); ?></div>
</div>
<?php endforeach; ?>
</div>
<input type="hidden" class="selected-variation-id" value="">
<input type="hidden" class="selected-size" value="">
</div>
<?php
} else {
echo '<div class="no-sizes-msg"></div>';
}
?>
