1. Для отображения всех товаров продавца в личном кабинете WooCommerce, вам нужно использовать функцию `wc_get_products()` с указанием параметра `vendor`.
Например, вы можете использовать следующий код в файле шаблона или в файле функций вашей темы:
```php
$vendor_id = get_current_user_id(); // Получаем ID текущего пользователя
$args = array(
'status' => 'publish', // Статус опубликованных товаров
'limit' => -1, // Выводим все товары
'vendor' => $vendor_id // ID продавца
);
$products = wc_get_products($args);
if ($products) {
foreach ($products as $product) {
// Выводите информацию о каждом товаре, как вам нужно
echo '<h2>' . $product->get_name() . '</h2>';
echo '<p>' . $product->get_price_html() . '</p>';
}
} else {
echo 'Товары не найдены.';
}
```
2. Чтобы изменить код для вывода товаров текущего/авторизованного пользователя, вам понадобится использовать функцию `get_posts()` вместо `wc_get_products()` и указать параметр `author` со значением `get_current_user_id()`.
Вот пример кода:
```php
$author_id = get_current_user_id();
$args = array(
'post_type' => 'product',
'post_status' => 'publish',
'author' => $author_id,
'posts_per_page' => -1
);
$products = get_posts($args);
if ($products) {
foreach ($products as $product) {
// Выводите информацию о каждом товаре, как вам нужно
echo '<h2>' . get_the_title($product->ID) . '</h2>';
echo '<p>' . wc_price(get_post_meta($product->ID, '_regular_price', true)) . '</p>';
}
} else {
echo 'Товары не найдены.';
}
```
Оба примера кода могут быть добавлены в файл функций вашей темы (например, functions.php) или в файл шаблона личного кабинета WooCommerce.