<?php
// Get all products
$args = array(
'post_type' => 'product',
'posts_per_page' => -1,
'post_status' => 'publish'
);
$products = get_posts($args);
$meta_keys = array('_stock_warehouse_5', '_stock_warehouse_6');
$results = array();
foreach ($products as $product) {
$product_obj = wc_get_product($product->ID);
// Check if it's a variable product
if ($product_obj->is_type('variable')) {
$variations = $product_obj->get_available_variations();
foreach ($variations as $variation) {
$variation_id = $variation['variation_id'];
// Check each meta key
foreach ($meta_keys as $meta_key) {
$meta_value = get_post_meta($variation_id, $meta_key, true);
if ($meta_value !== '' && $meta_value !== false) {
$results[] = array(
'product_title' => $product->post_title,
'variation_id' => $variation_id,
'variation_label' => implode(', ', $variation['attributes']),
'meta_key' => $meta_key,
'meta_value' => $meta_value
);
}
}
}
}
// Also check simple products (just in case)
foreach ($meta_keys as $meta_key) {
$meta_value = get_post_meta($product->ID, $meta_key, true);
if ($meta_value !== '' && $meta_value !== false) {
$results[] = array(
'product_title' => $product->post_title,
'variation_id' => 'N/A (Simple Product)',
'variation_label' => 'N/A',
'meta_key' => $meta_key,
'meta_value' => $meta_value
);
}
}
}
// Output HTML
?>
<div class="audit-summary">
<strong>Total Results Found:</strong> <?php echo count($results); ?>
</div>
<?php if (count($results) > 0): ?>
<table class="audit-table">
<thead>
<tr>
<th>Product Title</th>
<th>Variation ID</th>
<th>Variation Label</th>
<th>Meta Key</th>
<th>Meta Value</th>
</tr>
</thead>
<tbody>
<?php foreach ($results as $result): ?>
<tr>
<td><?php echo esc_html($result['product_title']); ?></td>
<td><?php echo esc_html($result['variation_id']); ?></td>
<td><?php echo esc_html($result['variation_label']); ?></td>
<td><?php echo esc_html($result['meta_key']); ?></td>
<td><?php echo esc_html($result['meta_value']); ?></td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
<?php else: ?>
<p>No products or variations found with the specified meta keys.</p>
<?php endif; ?>.audit-table {
width: 100%;
border-collapse: collapse;
margin: 20px 0;
}
.audit-table th,
.audit-table td {
border: 1px solid #ddd;
padding: 12px;
text-align: left;
}
.audit-table th {
background-color: #f4f4f4;
font-weight: bold;
}
.audit-table tr:nth-child(even) {
background-color: #f9f9f9;
}
.audit-summary {
margin: 20px 0;
padding: 15px;
background-color: #e7f3ff;
border-left: 4px solid #2196F3;
}
| Product Title | ID | Product Type | Variation Detail | Meta Key | Meta Value |
|---|---|---|---|---|---|
| BIO 1061 | 20886 | Variation | BIO 1061 – 104 | _stock_warehouse_5 | 1 |
| BIO 1061 | 20886 | Variation | BIO 1061 – 104 | _stock_warehouse_6 | 2 |
| OSCAR | 20871 | Variation | OSCAR – Matt Black | _stock_warehouse_5 | 0 |
| OSCAR | 20871 | Variation | OSCAR – Matt Black | _stock_warehouse_6 | 0 |
| POLICROMIE 144 | 20854 | Variation | POLICROMIE 144 – 01 | _stock_warehouse_6 | 1 |
| POLICROMIE 144 | 20855 | Variation | POLICROMIE 144 – 02 | _stock_warehouse_5 | 1 |
| POLICROMIE 87 | 20851 | Variation | POLICROMIE 87 – 01 | _stock_warehouse_5 | 1 |
| MOSAICO 174 | 20848 | Variation | MOSAICO 174 – 02 | _stock_warehouse_5 | 1 |
| MOSAICO 173 | 20845 | Variation | MOSAICO 173 – 01 | _stock_warehouse_5 | 1 |
| MOSAICO 164 | 20841 | Variation | MOSAICO 164 – 04 | _stock_warehouse_5 | 1 |
| MOSAICO 109 | 20836 | Variation | MOSAICO 109 – 03 | _stock_warehouse_5 | 1 |
| MOSAICO 109 | 20837 | Variation | MOSAICO 109 – 06 | _stock_warehouse_6 | 1 |
| FUSIONI 157 | 20832 | Variation | FUSIONI 157 – 02 | _stock_warehouse_5 | 1 |
| FUSIONI 156 | 20828 | Variation | FUSIONI 156 – 03 | _stock_warehouse_5 | 1 |
| FUSIONI 156 | 20827 | Variation | FUSIONI 156 – 02 | _stock_warehouse_6 | 1 |
| FUSIONI 155 | 20822 | Variation | FUSIONI 155 – 01 | _stock_warehouse_5 | 1 |
| FUSIONI 155 | 20823 | Variation | FUSIONI 155 – 02 | _stock_warehouse_6 | 1 |
| CESELLI 169 | 20819 | Variation | CESELLI 169 – 03 | _stock_warehouse_5 | 1 |
| BILLIE | 20723 | Variation | BILLIE – beige burgundy | _stock_warehouse_6 | 1 |
| OSCAR | 20719 | Variation | OSCAR – fawn silver | _stock_warehouse_5 | 1 |
| NICOLE | 20711 | Variation | NICOLE – ocher cider | _stock_warehouse_5 | 1 |
| JOE | 20707 | Variation | JOE – beige cassis | _stock_warehouse_6 | 1 |
| MILLIE | 20703 | Variation | MILLIE – violine | _stock_warehouse_6 | 1 |
| MARTIN | 20698 | Variation | MARTIN – black | _stock_warehouse_6 | 1 |
| ODETTE | 20694 | Variation | ODETTE – beige black | _stock_warehouse_5 | 1 |
| ROMARIC | 20690 | Variation | ROMARIC – grey cristal | _stock_warehouse_6 | 1 |
| PAULIN | 20685 | Variation | PAULIN – BLUE | _stock_warehouse_6 | 1 |
| NOA | 20681 | Variation | NOA – ocean caramel | _stock_warehouse_5 | 1 |
| ALMA | 20675 | Variation | ALMA – ruby | _stock_warehouse_6 | 1 |
| Futurist | 20624 | Variation | Futurist – 6651 – Green & Walnut | _stock_warehouse_5 | 0 |
| Dichter | 20620 | Variation | Dichter – 6410 – Black Marmor | _stock_warehouse_5 | 1 |
| Dichter | 20620 | Variation | Dichter – 6410 – Black Marmor | _stock_warehouse_6 | 1 |
| Philosoph | 20614 | Variation | Philosoph – 6404 – Royal Chestnut | _stock_warehouse_5 | 1 |
| Philosoph | 20614 | Variation | Philosoph – 6404 – Royal Chestnut | _stock_warehouse_6 | 1 |
| Master Blender | 20457 | Variation | Master Blender – 6859 – Nougat | _stock_warehouse_5 | 0 |
| Hütchenspieler | 20431 | Variation | Hütchenspieler – 6197 – Peach Burl | _stock_warehouse_5 | 1 |
| LOCKE | 20363 | Variation | LOCKE – 03 | _stock_warehouse_5 | 0 |
| LOCKE | 20363 | Variation | LOCKE – 03 | _stock_warehouse_6 | 0 |
| LYON | 20328 | Variation | LYON – AMBRA | _stock_warehouse_5 | 1 |
| LYON | 20328 | Variation | LYON – AMBRA | _stock_warehouse_6 | 0 |
| Parfümeur | 20316 | Variation | Parfümeur – 6538 Pine | _stock_warehouse_5 | 1 |
| Parfümeur | 20316 | Variation | Parfümeur – 6538 Pine | _stock_warehouse_6 | 1 |
| La Dame De Coeur | 20303 | Variation | La Dame De Coeur – 6570 – Black | _stock_warehouse_5 | 0 |
| La Dame De Coeur | 20303 | Variation | La Dame De Coeur – 6570 – Black | _stock_warehouse_6 | 0 |
| Schriftsteller | 20296 | Variation | Schriftsteller – 6181 – Peanut | _stock_warehouse_5 | 1 |
| Schriftsteller | 20296 | Variation | Schriftsteller – 6181 – Peanut | _stock_warehouse_6 | 1 |
| Sushi-Meister | 20295 | Variation | Sushi-Meister – 6300 – Black & Bronze | _stock_warehouse_5 | 1 |
| Sushi-Meister | 20295 | Variation | Sushi-Meister – 6300 – Black & Bronze | _stock_warehouse_6 | 1 |
| HEGEL | 20034 | Variation | HEGEL – 01 | _stock_warehouse_5 | 0 |
| HEGEL | 20034 | Variation | HEGEL – 01 | _stock_warehouse_6 | 1 |
| JACKSON | 20029 | Variation | JACKSON – 02 | _stock_warehouse_5 | 0 |
| JACKSON | 20029 | Variation | JACKSON – 02 | _stock_warehouse_6 | 0 |
| SORY | 20014 | Variation | SORY – 01 | _stock_warehouse_5 | 0 |
| SORY | 20014 | Variation | SORY – 01 | _stock_warehouse_6 | 0 |
| GRAZIA | 19868 | Variation | GRAZIA – 02 | _stock_warehouse_5 | 0 |
| GRAZIA | 19868 | Variation | GRAZIA – 02 | _stock_warehouse_6 | 1 |
| Nachtwächter | 19809 | Variation | Nachtwächter – 5587 – Black Havana & Walnut | _stock_warehouse_5 | 1 |
| Nachtwächter | 19809 | Variation | Nachtwächter – 5587 – Black Havana & Walnut | _stock_warehouse_6 | 1 |
| Nachtwächter | 19810 | Variation | Nachtwächter – 6206 – Brown Ebony | _stock_warehouse_5 | 1 |
| Nachtwächter | 19810 | Variation | Nachtwächter – 6206 – Brown Ebony | _stock_warehouse_6 | 1 |
| Essenzforscher | 19803 | Variation | Essenzforscher – 6524 | _stock_warehouse_5 | 1 |
| Essenzforscher | 19803 | Variation | Essenzforscher – 6524 | _stock_warehouse_6 | 0 |
| POLICROMIE 153 | 19790 | Variation | POLICROMIE 153 – 03 | _stock_warehouse_5 | 0 |
| POLICROMIE 153 | 19790 | Variation | POLICROMIE 153 – 03 | _stock_warehouse_6 | 1 |
| POLICROMIE 153 | 19789 | Variation | POLICROMIE 153 – 02 | _stock_warehouse_5 | 1 |
| POLICROMIE 126 | 19787 | Variation | POLICROMIE 126 – 03 | _stock_warehouse_5 | 1 |
| POLICROMIE 110 | 19783 | Variation | POLICROMIE 110 – 01 | _stock_warehouse_5 | 1 |
| MOSAICO 136 | 19778 | Variation | MOSAICO 136 – 02 | _stock_warehouse_5 | 1 |
| MOSAICO 136 | 19778 | Variation | MOSAICO 136 – 02 | _stock_warehouse_6 | 0 |
| MOSAICO 120 | 19776 | Variation | MOSAICO 120 – 05 | _stock_warehouse_5 | 1 |
| MOSAICO 120 | 19776 | Variation | MOSAICO 120 – 05 | _stock_warehouse_6 | 1 |
| CESELLI 150 | 19751 | Variation | CESELLI 150 – 02 | _stock_warehouse_5 | 1 |
| CESELLI 150 | 19751 | Variation | CESELLI 150 – 02 | _stock_warehouse_6 | 0 |
| CESELLI 138 | 19748 | Variation | CESELLI 138 – 03 | _stock_warehouse_5 | 1 |
| CESELLI 138 | 19748 | Variation | CESELLI 138 – 03 | _stock_warehouse_6 | 1 |
| CESELLI 129 | 19745 | Variation | CESELLI 129 – 03 | _stock_warehouse_5 | 1 |
| CESELLI 129 | 19745 | Variation | CESELLI 129 – 03 | _stock_warehouse_6 | 0 |
| CESELLI 129 | 19744 | Variation | CESELLI 129 – 01 | _stock_warehouse_5 | 1 |
| CESELLI 129 | 19744 | Variation | CESELLI 129 – 01 | _stock_warehouse_6 | 1 |
| ABSINTHE | 19543 | Variation | ABSINTHE – 02 | _stock_warehouse_5 | 0 |
| JKC965 | 19511 | Variation | JKC965 – C1 | _stock_warehouse_5 | 0 |
Products in query: 1056
TORAYsee akinių servetėlė
_manage_stock
_stock
_stock_status
variable
AW akinių servetėlė
_manage_stock
_stock
_stock_status
variable
BIO 1127
_manage_stock
_stock
_stock_status
variable
BIO 1109
_manage_stock
_stock
_stock_status
variable
BIO 1062
_manage_stock
_stock
_stock_status
variable
BIO 1009
_manage_stock
_stock
_stock_status
variable
POLICROMIE 144
_manage_stock
_stock
_stock_status
variable
POLICROMIE 87
_manage_stock
_stock
_stock_status
variable