Поиск загружаемых файлов продуктов src для WooCommerce для отображения в Audio Shortcode - PullRequest
0 голосов
/ 06 марта 2019

Я пытаюсь добавить звуковой шорткод Wordpress по умолчанию в шаблон content-single-product.php от WooCommerce. Я понимаю, что шорткод по умолчанию должен найти любое прикрепленное аудио, если оно не указано, но оно не ведет себя как таковое. Я думаю, что загружаемые продукты WooCommerce по-разному обрабатывают вложения файлов?

Это код, который я использую до сих пор "

$ca_audio = $product->get_id();
$attr = array(
	'src'      => $ca_audio,
	'loop'     => '',
	'autoplay' => '',
	'preload'  => 'none'
);
echo wp_audio_shortcode( $attr );

Это просто отображение идентификатора продукта вместо игрока. Если я оставлю src пустым, он покажет пустой плеер без звука. Если я добавлю прямую ссылку на файл, он будет воспроизводиться, но мне нужно, чтобы он автоматически находил файл .mp3 для каждого сообщения автоматически.

1 Ответ

0 голосов
/ 06 марта 2019

Я использовал следующий код для отображения аудиофайла

$ca_audio = $product->get_id();

$_product = wc_get_product( $ca_audio );
$downloads = $product->get_files();

foreach( $downloads as $key => $each_download ) {
  	
	if ( strpos( $each_download["file"] , '.mp3') !== false) {
	    $attr = array(
			'src'      => $each_download["file"],
			'loop'     => '',
			'autoplay' => '',
			'preload'  => 'none'
		);
		echo wp_audio_shortcode( $attr );
		break;
	}
}

Аудиофайл правильно вставлен, но не воспроизводится.Когда я открываю файл напрямую, он выдает 401 Запрещенную ошибку.Это загружаемая функция защиты доступа к продукту woocommerce.Возможно, вам нужно вручную встраивать аудиофайлы в каждый продукт.

...