My answer use 3 steps too :
Step 1 : adding a new tab on the list
add_filter("woocommerce_product_data_tabs", function ($product_data_tabs) {
$product_data_tabs["newTabId"] = [
"label" => "Hello 1",
"target" => "htmlIdOfTheBox",
"class" => [],
];
return $product_data_tabs;
});
Step 2 : preparing the html box for this new tab
add_action("woocommerce_product_data_panels", function () {
?>
<div id="htmlIdOfTheBox" class="panel woocommerce_options_panel">
<strong>Hello 2</strong>
</div>
<?php
});
Step 3 : filling this new box with the custom post types and saving the choices in the product. Sorry this big step is your work 😉
I think that this step starts with getting all the custom post “album” with the “get_posts” function : http://codex.wordpress.org/Function_Reference/get_posts