Various bits of PHP / HTML to customize this theme. Add PHP to /custom/custom_functions.php unless otherwise noted.

HTML

PHP

1. Customize front page product display sections with a filter.

add_filter('themedy_section_1', 'custom_section_1');
function custom_section_1() {
    return '[recent_products per_page="3" columns="3"]';
}

The various sections you can target are themedy_section_1, themedy_section_2, and themedy_section_3 using the same code as the above and just changing the add_filter('themedy_section_1' area.

You can also return any WooCommerce shortcode (or anything else), full list here.

2. Change My Account / Cart Buttons in Header

Note after adding this code you'll have to add a product to your cart and remove it to refresh the cache if it looks like the text hasn't changed.

remove_action('genesis_header', 'themedy_cart_button');
add_action('genesis_header', 'custom_themedy_cart_button');

// Cart total and viewer in header
add_action('genesis_header', 'custom_themedy_cart_button');
function custom_themedy_cart_button() {
    if (themedy_active_plugin() != 'woocommerce') return;
    global $woocommerce;
    ?>
    <div class="shop-menu">    
    <?php 
    if (themedy_get_option('woo_account'))
        echo '<a class="button" href="'. get_permalink( woocommerce_get_page_id( 'myaccount' ) ) .'"><i class="fa fa-user"></i> '.(is_user_logged_in() ? themedy_get_option('custom_myaccount') : themedy_get_option('custom_login') ).'</a>';
    ?>

    <a class="cart-contents button btn-primary" href="<?php echo $woocommerce->cart->get_cart_url(); ?>" title="<?php _e('View your shopping cart', 'themedy'); ?>"><i class="fa fa-shopping-cart"></i><?php echo sprintf(_n('%d item', '%d items', $woocommerce->cart->cart_contents_count, 'themedy'), $woocommerce->cart->cart_contents_count);?> - <?php echo $woocommerce->cart->get_cart_total(); ?></a>

    <a class="button btn-primary" href="http://mysite.com" title="">My New Button</a></div>
    <?php
}

3. Change Cart Button in Mobile Header (change the My New Button text below to edit)

remove_filter( 'wp_nav_menu_items', 'themedy_mobile_toggle', 9, 2 );
add_filter( 'wp_nav_menu_items', 'custom_themedy_mobile_toggle', 9, 2 );

// Cart total and viewer in header
function custom_themedy_mobile_toggle($menu, $args) {
    $args = (array)$args;
    if ( 'primary' !== $args['theme_location']  )
        return $menu;

    global $woocommerce;
    $buttons = '';
    if (themedy_get_option('mobile_menu')) {
        $buttons .= '</ul><ul class="menu genesis-nav-menu menu-mobile"><li class="menu-item toggle-menu"><a href="#mobile-menu"><i class="fa fa-bars"></i><span class="screen-reader-text">'.__('Toggle Mobile Menu', 'themedy').'</span></a></li>';
        if (themedy_get_option('woo_account') and themedy_active_plugin() == 'woocommerce')
            $buttons .= '<li class="menu-item toggle-account"><a href="'. get_permalink( woocommerce_get_page_id( 'myaccount' ) ) .'"><i class="fa fa-user"></i><span class="screen-reader-text">'.__('Account', 'themedy').'</span></a></li>';
        if (themedy_get_option('social_search'))
            $buttons .= '<li class="menu-item toggle-search"><a href="#mobile-menu"><i class="fa fa-search"></i><span class="screen-reader-text">'.__('Toggle Search', 'themedy').'</span></a></li>';

        if (themedy_active_plugin() == 'woocommerce')   
            $buttons .= '<li class="mobile-cart"><a class="button btn-primary" href="http://mysite.com" title="">My New Button</a></li>';
    }
    return $menu . $buttons;
}

4. Move ratings buttons out of hover overlay to under product image

CSS:

ul.products li.product .star-rating {margin-bottom: 10px; position: relative; color: #73a0d7; bottom: 0;}

PHP:

remove_action('woocommerce_before_shop_loop_item', 'themedy_woo_add_overlay_end', 10);
add_action( 'woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_rating', 5 );

// Add overlay on product loops end
add_action('woocommerce_before_shop_loop_item', 'custom_themedy_woo_add_overlay_end', 10);
function custom_themedy_woo_add_overlay_end() {
    echo '<div class="product-overlay">';
        echo '<div class="overlay-wrap">';
            woocommerce_template_loop_add_to_cart();
        echo '</div>';
        echo '<a href="'.get_permalink().'" class="overlay-link"></a>';
    echo '</div>';
echo '</div>';
}

5. Change Out / New badges text & options on Product Picture
Use the below and modify as necessary, for the text look for the "Custom Out Text HERE" / "Custom New text HERE" text in the samples below to change as necessary.

// Add Custom OUT badge to items
remove_action('woocommerce_before_shop_loop_item_title', 'themedy_woo_add_outstock', 9);
remove_action('woocommerce_before_single_product_summary', 'themedy_woo_add_outstock', 10);
add_action('woocommerce_before_shop_loop_item_title', 'custom_themedy_woo_add_outstock', 9);
add_action('woocommerce_before_single_product_summary', 'custom_themedy_woo_add_outstock', 10);

function custom_themedy_woo_add_outstock() {
    global $post, $product;
    if (!$product->is_in_stock()) {
        echo apply_filters( 'woocommerce_sold_out_flash', '<span class="onsale soldout">'.__( 'Custom Out Text HERE', 'themedy' ).'</span>', $post, $product );

    }
}

// Add Custom NEW Badge to items
remove_action('woocommerce_before_shop_loop_item_title', 'themedy_woo_add_newproduct', 9);
remove_action('woocommerce_before_single_product_summary', 'themedy_woo_add_newproduct', 10);
add_action('woocommerce_before_shop_loop_item_title', 'custom_themedy_woo_add_newproduct', 9);
add_action('woocommerce_before_single_product_summary', 'custom_themedy_woo_add_newproduct', 10);

function custom_themedy_woo_add_newproduct() {
    global $post, $product;
    $postdate       = get_the_time( 'Y-m-d' );          // Post date
    $postdatestamp  = strtotime( $postdate );           // Timestamped post date
    $newness        = apply_filters( 'themedy_new_badge_age', 14);  // Newness in days as defined by option
    if ( ( time() - ( 60 * 60 * 24 * $newness ) ) < $postdatestamp ) {
        echo apply_filters( 'woocommerce_new_flash', '<span class="onsale newproduct">'.__( 'Custom New text HERE', 'themedy' ).'</span>', $post, $product );

    }
}

// Add Custom Sale Badge to items
add_filter('woocommerce_sale_flash', 'my_custom_sale_flash', 10, 3);
function my_custom_sale_flash($text, $post, $_product) {
  return '<span class="onsale"> Promo! </span>';  
}

6. Change the "item / items" text

Note after adding this code you'll have to add a product to your cart and remove it to refresh the cache if it looks like the text hasn't changed.

// Ajax cart button in header
add_filter('add_to_cart_fragments', 'custom_themedy_header_add_to_cart_fragment');
function custom_themedy_header_add_to_cart_fragment( $fragments ) {
    global $woocommerce;    
    ob_start(); 
    ?>
    <a class="cart-contents button btn-primary" href="<?php echo $woocommerce->cart->get_cart_url(); ?>" title="<?php _e('View your shopping cart', 'themedy'); ?>"><i class="fa fa-shopping-cart"></i><?php echo sprintf(_n('%d item', '%d items', $woocommerce->cart->cart_contents_count, 'themedy'), $woocommerce->cart->cart_contents_count);?> - <?php echo $woocommerce->cart->get_cart_total(); ?></a>
    <?php
    $fragments['a.cart-contents'] = ob_get_clean(); 
return $fragments;  
}

7. Add Genesis Simple Share Icons (3rd Party Plugin) icons above product summary

//* Add the Genesis Simple Share buttons before the product summary
add_action( 'woocommerce_single_product_summary', 'bg_reposition_simple_share_summary', 11 );
function bg_reposition_simple_share_summary() {
    if( 'product' === get_post_type() ) {
        genesis_share_icon_output( 'before_product_summary', array(  'twitter', 'facebook', 'googlePlus', 'linkedin', 'pinterest' ) );
    }
}

//* Add the Genesis Simple Share buttons before the product meta / categories display
add_action( 'woocommerce_product_meta_start', 'bg_reposition_simple_share_meta', 11 );
function bg_reposition_simple_share_meta() {
    if( 'product' === get_post_type() ) {
        genesis_share_icon_output( 'before_product_meta', array(  'twitter', 'facebook', 'googlePlus', 'linkedin', 'pinterest' ) );
    }
}

There are more hooks you can use to display this in different places listed here. You would add these hooks to this area in the above samples: add_action( 'woocommerce_single_product_summary'

8. Output featured images under slider directly instead of as a background image

In home.php change:

<div class="lead-box-1 lead-box<?php if (themedy_get_option('fp_box2') == 1) echo ' one-half first'; ?>"<?php if (themedy_get_option('fp_box1_image') != '') echo ' style="background-image: url('.esc_url(themedy_get_option('fp_box1_image')).');"'; ?>>

to:

<div class="lead-box-1 lead-box<?php if (themedy_get_option('fp_box2') == 1) echo ' one-half first'; ?>"><img src="<?php echo themedy_get_option('fp_box1_image'); ?>" />

and:

<div class="lead-box-2 lead-box<?php if (themedy_get_option('fp_box1') == 1) echo ' one-half'; ?>"<?php if (themedy_get_option('fp_box2_image') != '') echo ' style="background-image: url('.esc_url(themedy_get_option('fp_box2_image')).');"'; ?>>

to:

<div class="lead-box-2 lead-box<?php if (themedy_get_option('fp_box1') == 1) echo ' one-half'; ?>"><img src="<?php echo themedy_get_option('fp_box2_image'); ?>" />

and add this CSS to your Custom CSS:

.lead-box {background: none; padding: 0px;}

9. Remove thumbnails under main product image

remove_action( 'woocommerce_before_shop_loop_item_title', 'woocommerce_template_loop_product_thumbnail', 10 );

10. Add auto slide to front page slider
You can change 5000 (5 seconds) in the example below to change the slide time delay. More properties are listed here that can be used.

// Start and Add Slider Script Options
remove_action('genesis_after', 'themedy_home_script_options');
add_action('genesis_after', 'custom_themedy_home_script_options');

function custom_themedy_home_script_options() { 
    if (themedy_get_option('slider') != 'remove') { ?>
        <script type="text/javascript">
            jQuery(window).load(function() {
                jQuery('.flexslider').flexslider({
                    controlNav: false,
                    animation: "<?php echo themedy_option('slider_effect'); ?>",
                    animationSpeed: <?php echo themedy_option('slider_speed'); ?>,
                    smoothHeight: <?php if (themedy_get_option('slider') == 'post') echo 'true'; else echo 'false'; ?>,
                    slideshow: true,
                    slideshowSpeed: 5000
                });
            });
        </script>
    <?php } 
}

10. Replace login / add to cart buttons and move search from navigation into that area

To remove the search from the nav area, go into your Themedy Settings and uncheck "Include the WordPress search input?" and add the below to your custom_functions.php

remove_action('genesis_header', 'themedy_cart_button');
add_action('genesis_header', 'custom_themedy_cart_button');

function custom_themedy_cart_button() {
    ?><div class="shop-menu">    
        <li class="menu-item menu-search">
            <form method="get" class="search-form" action="'.home_url().'" role="search">
                <input required type="search" value="" placeholder="Search Here" name="s" class="search-input" />
                <button type="submit" class="search-submit"><i class="fa fa-search"></i><span class="screen-reader-text"> Submit Search</span></button>
            </form>
        </li>
      </div>
    <?php
}

To remove the login / account buttons from the mobile menu also add:

remove_filter( 'wp_nav_menu_items', 'themedy_mobile_toggle', 9, 2 );
add_filter( 'wp_nav_menu_items', 'custom_themedy_mobile_toggle', 9, 2 );

// Cart total and viewer in header
function custom_themedy_mobile_toggle($menu, $args) {
    $args = (array)$args;
    if ( 'primary' !== $args['theme_location']  )
        return $menu;

    global $woocommerce;
    $buttons = '';
    if (themedy_get_option('mobile_menu')) {
        $buttons .= '</ul><ul class="menu genesis-nav-menu menu-mobile"><li class="menu-item toggle-menu"><a href="#mobile-menu"><i class="fa fa-bars"></i><span class="screen-reader-text">'.__('Toggle Mobile Menu', 'themedy').'</span></a></li>';
        if (themedy_get_option('woo_account') and themedy_active_plugin() == 'woocommerce')
            $buttons .= '<li class="menu-item toggle-search"><a href="#mobile-menu"><i class="fa fa-search"></i><span class="screen-reader-text">'.__('Toggle Search', 'themedy').'</span></a></li>';


    }
    return $menu . $buttons;
}

11. Add a logo image into the sticky mobile menu

// Add Custom "Mobile Toggle" button to primary navigation with logo image
remove_filter( 'wp_nav_menu_items', 'themedy_mobile_toggle', 9, 2 );
add_filter( 'wp_nav_menu_items', 'themedy_mobile_toggle_custom', 9, 2 );

function themedy_mobile_toggle_custom($menu, $args) {
$args = (array)$args;
if ( 'primary' !== $args['theme_location']  )
    return $menu;

global $woocommerce;
$buttons = '';
if (themedy_get_option('mobile_menu')) {
    $buttons .= '</ul><ul class="menu genesis-nav-menu menu-mobile"><li class="menu-item toggle-menu"><a href="#mobile-menu"><i class="fa fa-bars"></i><span class="screen-reader-text">'.__('Toggle Mobile Menu', 'themedy').'</span></a></li>';

    // Here is where the logo image goes
    $buttons .= '<li class="menu-item toggle-logo"><a href="#"><img src="http://demo.themedy.com/patron/wp-content/themes/patron-genesis/images/logo.png" /></a></li>';
    if (themedy_get_option('woo_account') and themedy_active_plugin() == 'woocommerce')
        $buttons .= '<li class="menu-item toggle-account"><a href="'. get_permalink( woocommerce_get_page_id( 'myaccount' ) ) .'"><i class="fa fa-user"></i><span class="screen-reader-text">'.__('Account', 'themedy').'</span></a></li>';
    if (themedy_get_option('social_search'))
        $buttons .= '<li class="menu-item toggle-search"><a href="#mobile-menu"><i class="fa fa-search"></i><span class="screen-reader-text">'.__('Toggle Search', 'themedy').'</span></a></li>';

    if (themedy_active_plugin() == 'woocommerce')   
        $buttons .= '<li class="mobile-cart"><a class="cart-contents button btn-primary" href="'. $woocommerce->cart->get_cart_url().'" title="'. __('View your shopping cart', 'themedy').'"><i class="fa fa-shopping-cart"></i>'.sprintf(_n('%d item', '%d items', $woocommerce->cart->cart_contents_count, 'themedy'), $woocommerce->cart->cart_contents_count).' - '. $woocommerce->cart->get_cart_total() .'</a></li>';
    }
    return $menu . $buttons;
}