Описание woocommerce_file_download_filename
— Filter
Хук woocommerce_file_download_filename позволяет изменить имя файла, который будет загружен пользователем. Он срабатывает при инициации загрузки файла товара и дает возможность модифицировать имя, чтобы сделать его более понятным или соответствующим специфическим требованиям.
Примеры использования
Пример изменения имени файла на более информативное:
add_filter('woocommerce_file_download_filename', function($filename, $product_id) {
$product = wc_get_product($product_id);
return $product->get_name() . '-документ.pdf';
}, 10, 2);
В этом примере имя файла будет включать название товара, добавляя к нему ‘-документ.pdf’.
Пример добавления даты к имени загружаемого файла:
add_filter('woocommerce_file_download_filename', function($filename) {
return date('Y-m-d') . '-' . $filename;
});
Здесь к имени файла добавляется текущая дата, что может помочь в организации файлов.
Пример изменения имени файла в зависимости от категории товара:
add_filter('woocommerce_file_download_filename', function($filename, $product_id) {
$product = wc_get_product($product_id);
$terms = get_the_terms($product_id, 'product_cat');
if ($terms && !is_wp_error($terms)) {
$category = $terms[0]->slug;
return $category . '-' . $filename;
}
return $filename;
}, 10, 2);
В этом примере к имени файла добавляется слаг первой категории товара.
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо настроить имена загружаемых файлов для улучшения их читаемости или организации
– Производительность
Хук не должен значительно влиять на производительность, так как изменения касаются только имени файла
– Предупреждения
Убедитесь, что изменения не конфликтуют с другими плагинами или системами, которые могут зависеть от стандартных имен файлов
Альтернативы
Тип: action
Этот хук позволяет выполнять действия в момент загрузки файла, например, вести логи или отправлять уведомления
Используйте его, если нужно выполнить дополнительные действия во время загрузки файла, а не просто менять имя