/**
 * Callback for dealing with Sidebar Alt loading
 *
 * Intercepts GSS code flow, so that Shop page can be dealt with, then
 * hands back control to the GSS function for loading secondary sidebars.
 * Effectively, it's just a more complex version of ss_do_sidebar_alt()
 *
 * Checks if we're on the product archive and a GSS sidebar has been
 * assigned in the Shop WP Page editor, then, if both true, loads the relevant
 * GSS sidebar on the Shop Page.
 * If either of the above conditions return false, we hand back control to GSS
 * by executing the normal ss_do_one_sidebar_alt() function.
 *
 * @since 0.9.0
 *
 * @uses woocommerce_get_page_id()
 *
 */
function gencwooc_ss_do_sidebar_alt()
{
    $bar = '_ss_sidebar_alt';
    $shop_id = woocommerce_get_page_id('shop');
    if (is_post_type_archive('product') && ($_bar = get_post_meta($shop_id, $bar, true))) {
        dynamic_sidebar($_bar);
    } else {
        /** Hand back control to GSS */
        if (!ss_do_one_sidebar($bar)) {
            genesis_do_sidebar_alt();
        }
    }
}
/**
 * Display secondary sidebar.
 *
 * Display custom sidebar if one exists, else display default secondary sidebar.
 *
 * @since 0.9.0
 */
function ss_do_sidebar_alt()
{
    if (!ss_do_one_sidebar('_ss_sidebar_alt')) {
        genesis_do_sidebar_alt();
    }
}