Advertisement
mcspankey

generatepro

Aug 11th, 2014
203
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.28 KB | None | 0 0
  1. <?php
  2. //* Start the engine
  3. include_once( get_template_directory() . '/lib/init.php' );
  4.  
  5. //* Setup Theme
  6. include_once( get_stylesheet_directory() . '/lib/theme-defaults.php' );
  7.  
  8. //* Set Localization (do not remove)
  9. load_child_theme_textdomain( 'generate', apply_filters( 'child_theme_textdomain', get_stylesheet_directory() . '/languages', 'generate' ) );
  10.  
  11. //* Child theme (do not remove)
  12. define( 'CHILD_THEME_NAME', __( 'Generate Pro Theme', 'generate' ) );
  13. define( 'CHILD_THEME_URL', 'http://my.studiopress.com/themes/generate/' );
  14. define( 'CHILD_THEME_VERSION', '2.0.0' );
  15.  
  16. //* Add HTML5 markup structure
  17. add_theme_support( 'html5' );
  18.  
  19. //* Add viewport meta tag for mobile browsers
  20. add_theme_support( 'genesis-responsive-viewport' );
  21.  
  22. //* Enqueue Scripts
  23. add_action( 'wp_enqueue_scripts', 'generate_load_scripts' );
  24. function generate_load_scripts() {
  25.  
  26. wp_enqueue_script( 'generate-responsive-menu', get_bloginfo( 'stylesheet_directory' ) . '/js/responsive-menu.js', array( 'jquery' ), '1.0.0' );
  27. wp_enqueue_style( 'dashicons' );
  28. wp_enqueue_style( 'google-font', '//fonts.googleapis.com/css?family=Source+Sans+Pro:300,600', array(), CHILD_THEME_VERSION );
  29.  
  30. }
  31.  
  32. //* Add new image sizes
  33. add_image_size( 'blog', 700, 300, TRUE );
  34.  
  35. //* Add support for custom header
  36. add_theme_support( 'custom-header', array(
  37. 'width' => 360,
  38. 'height' => 140,
  39. 'header-selector' => '.site-title a',
  40. 'header-text' => false,
  41. ) );
  42.  
  43. //* Add support for custom background
  44. add_theme_support( 'custom-background' );
  45.  
  46. //* Add support for additional color style options
  47. add_theme_support( 'genesis-style-selector', array(
  48. 'generate-pro-blue' => __( 'Generate Pro Blue', 'generate' ),
  49. 'generate-pro-green' => __( 'Generate Pro Green', 'generate' ),
  50. 'generate-pro-orange' => __( 'Generate Pro Orange', 'generate' ),
  51. ) );
  52.  
  53. //* Add support for 3-column footer widgets
  54. add_theme_support( 'genesis-footer-widgets', 3 );
  55.  
  56. //* Unregister layout settings
  57. genesis_unregister_layout( 'content-sidebar-sidebar' );
  58. genesis_unregister_layout( 'sidebar-content-sidebar' );
  59. genesis_unregister_layout( 'sidebar-sidebar-content' );
  60.  
  61. //* Unregister secondary sidebar
  62. unregister_sidebar( 'sidebar-alt' );
  63.  
  64. //* Remove unused sections from Genesis Customizer
  65. add_action( 'customize_register', 'generate_customize_register', 16 );
  66. function generate_customize_register( $wp_customize ) {
  67.  
  68. $wp_customize->remove_control( 'genesis_image_alignment' );
  69.  
  70. }
  71.  
  72. //* Reposition the secondary navigation menu
  73. remove_action( 'genesis_after_header', 'genesis_do_subnav' );
  74. add_action( 'genesis_footer', 'genesis_do_subnav', 7 );
  75.  
  76. //* Reduce the secondary navigation menu to one level depth
  77. add_filter( 'wp_nav_menu_args', 'generate_secondary_menu_args' );
  78. function generate_secondary_menu_args( $args ){
  79.  
  80. if( 'secondary' != $args['theme_location'] )
  81. return $args;
  82.  
  83. $args['depth'] = 1;
  84. return $args;
  85.  
  86. }
  87.  
  88. //* Remove default post image
  89. remove_action( 'genesis_entry_content', 'genesis_do_post_image', 8 );
  90.  
  91. //* Add featured image above the entry content
  92. add_action( 'genesis_entry_content', 'generate_featured_photo', 8 );
  93. function generate_featured_photo() {
  94. if ( is_page() || ! genesis_get_option( 'content_archive_thumbnail' ) )
  95. return;
  96.  
  97. if ( $image = genesis_get_image( array( 'format' => 'url', 'size' => genesis_get_option( 'image_size' ) ) ) ) {
  98. printf( '<div class="featured-image"><img src="%s" alt="%s" class="entry-image"/></div>', $image, the_title_attribute( 'echo=0' ) );
  99. }
  100. }
  101.  
  102. //* Reposition the post info
  103. remove_action( 'genesis_entry_header', 'genesis_post_info', 12 );
  104. add_action( 'genesis_entry_header', 'genesis_post_info', 5 );
  105.  
  106. //* Hook after after entry widget after the entry content
  107. add_action( 'genesis_after_entry', 'generate_after_entry', 5 );
  108. function generate_after_entry() {
  109.  
  110. if ( is_singular( 'post' ) )
  111. genesis_widget_area( 'after-entry', array(
  112. 'before' => '<div class="after-entry widget-area">',
  113. 'after' => '</div>',
  114. ) );
  115.  
  116. }
  117.  
  118. //* Remove comment form allowed tags
  119. add_filter( 'comment_form_defaults', 'generate_remove_comment_form_allowed_tags' );
  120. function generate_remove_comment_form_allowed_tags( $defaults ) {
  121.  
  122. $defaults['comment_notes_after'] = '';
  123. return $defaults;
  124.  
  125. }
  126.  
  127. //* Hook after home featured widget before the content
  128. add_action( 'genesis_after_header', 'generate_home_featured' );
  129. function generate_home_featured() {
  130.  
  131. if ( is_front_page() )
  132. genesis_widget_area( 'home-featured', array(
  133. 'before' => '<div class="home-featured widget-area"><div class="wrap">',
  134. 'after' => '</div></div>',
  135. ) );
  136.  
  137. }
  138.  
  139. //* Register widget areas
  140. genesis_register_sidebar( array(
  141. 'id' => 'home-featured',
  142. 'name' => __( 'Home Featured', 'generate' ),
  143. 'description' => __( 'This is the featured widget area of the home page.', 'generate' ),
  144. ) );
  145. genesis_register_sidebar( array(
  146. 'id' => 'after-entry',
  147. 'name' => __( 'After Entry', 'generate' ),
  148. 'description' => __( 'This is the after entry widget area.', 'generate' ),
  149. ) );
  150.  
  151. // Add Read More Link to Excerpts
  152. add_filter('excerpt_more', 'get_read_more_link');
  153. add_filter( 'the_content_more_link', 'get_read_more_link' );
  154. function get_read_more_link() {
  155. return '...&nbsp;<a href="' . get_permalink() . '">[Read&nbsp;More]</a>';
  156. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement