Home Forums Basel support forum Child Theme Won't Overwrite inc/template-tags.php

Child Theme Won't Overwrite inc/template-tags.php

Viewing 8 posts - 1 through 8 (of 8 total)
  • Author
    Posts
  • #19493

    robertarrow
    Participant

    I’m trying to change the title on the Blog Post pages so that it doesn’t read – BLOG at the top, but instead the actual name of the post.

    $title = ( ! empty( $page_for_posts ) ) ? get_the_title( $page_for_posts ) : esc_html__( get_the_title(), 'basel' );

    If I add that to the parent theme, it works just fine, but when I duplicate the file and add it to my child theme it doesn’t work at all. I just updated to the newest version of Basel and it’s still not working.

    Another question I had for you that I’m not sure you could answer is that I found a plugin to generate Featured Images and I wanted to know if you guys had any idea on how to write a function or something that would automatically update all blog posts (as if I were to go into the actual post and hit update) as that’s the only way the featured image is generated.

    Thanks for the help!!

    #19498

    Artem Temos
    Keymaster

    Hi,

    You can’t just copy our core theme files to the child theme and change them as regular WordPress templates. But you can do this simply copying a particular PHP function from that file to the functions.php file in the child theme and do your changes.

    #19499

    robertarrow
    Participant

    Gotcha – how would I incorporate this as a function in the Child Theme?

    $title = ( ! empty( $page_for_posts ) ) ? get_the_title( $page_for_posts ) : esc_html__( get_the_title(), ‘basel’ );

    #19506

    Artem Temos
    Keymaster

    You need to copy the whole PHP function that contains this code.

    #19508

    robertarrow
    Participant

    Is that a lot of unnecessary code that needs to be in the functions file? There’s no way to write it in a few lines? I’m a designer, not a developer. Any help would be greatly appreciated. I’m also thinking about buying Woodmart for my next project, as always I’ll leave you a great review – it looks amazing from the demos that I’ve seen.

    #19511

    Artem Temos
    Keymaster

    Yes, you need to copy the whole function. Anyway, it is much better than copy the file as you wanted to do initially.

    Regards

    #19512

    robertarrow
    Participant

    What’s the whole function? This here below?

    // **********************************************************************// 
    // ! Page title function
    // **********************************************************************// 
    
    if( ! function_exists( 'basel_page_title' ) ) {
    
    	add_action( 'basel_after_header', 'basel_page_title', 10 );
    
    	function basel_page_title() {
            global $wp_query, $post;
    
            // Remove page title for dokan store list page
    
            if( function_exists( 'dokan_is_store_page' )  && dokan_is_store_page() ) {
            	return '';
            }
    
    		$page_id = 0;
    
    		$disable     = false;
    		$page_title  = true;
    		$breadcrumbs = basel_get_opt( 'breadcrumbs' );
    
    		$image = '';
    
    		$style = '';
    
    		$page_for_posts    = get_option( 'page_for_posts' );
    		$page_for_shop     = get_option( 'woocommerce_shop_page_id' );
    		$page_for_projects = basel_tpl2id( 'portfolio.php' );
    
    		$title_class = 'page-title-';
    
    		$title_color = $title_type = $title_size = 'default';
    
    		// Get default styles from Options Panel
    		$title_design = basel_get_opt( 'page-title-design' );
    
    		$title_size = basel_get_opt( 'page-title-size' );
    
    		$title_color = basel_get_opt( 'page-title-color' );
    
    		$shop_title = basel_get_opt( 'shop_title' );
    		$shop_categories = basel_get_opt( 'shop_categories' );
    
    		// Set here page ID. Will be used to get custom value from metabox of specific PAGE | BLOG PAGE | SHOP PAGE.
    		$page_id = basel_page_ID();
    
    		if( $page_id != 0 ) {
    			// Get meta value for specific page id
    			$disable = get_post_meta( $page_id, '_basel_title_off', true );
    
    			$image = get_post_meta( $page_id, '_basel_title_image', true );
    
    			$custom_title_color = get_post_meta( $page_id, '_basel_title_color', true );
    			$custom_title_bg_color = get_post_meta( $page_id, '_basel_title_bg_color', true );
    
    			if( $image != '' ) {
    				$style .= "background-image: url(" . $image . ");";
    			}
    
    			if( $custom_title_bg_color != '' ) {
    				$style .= "background-color: " . $custom_title_bg_color . ";";
    			}
    
    			if( $custom_title_color != '' && $custom_title_color != 'default' ) {
    				$title_color = $custom_title_color;
    			}
    		}
    
    		if( $title_design == 'disable' ) $page_title = false;
    
    		if( ! $page_title && ! $breadcrumbs ) $disable = true;
    
    		if( $disable ) return;
    
    		$title_class .= $title_type;
    		$title_class .= ' title-size-'  . $title_size;
    		$title_class .= ' color-scheme-' . $title_color;
    		$title_class .= ' title-design-' . $title_design;
    
    		// Heading for pages
    		if( is_singular( 'page' ) && ( ! $page_for_posts || ! is_page( $page_for_posts ) ) ):
    			$title = get_the_title();
    
    			?>
    				<div class="page-title <?php echo esc_attr( $title_class ); ?>" style="<?php echo esc_attr( $style ); ?>">
    					<div class="container">
    						<header class="entry-header">
    							<?php if( $page_title ): ?><h1 class="entry-title"><?php echo esc_html( $title ); ?></h1><?php endif; ?>
    							<?php if( $breadcrumbs ) basel_breadcrumbs(); ?>
    						</header><!-- .entry-header -->
    					</div>
    				</div>
    			<?php
    			return;
    		endif;
    
    		// Heading for blog and archives
    		if( is_home() || is_singular( 'post' ) || is_search() || is_tag() || is_category() || is_date() || is_author() ):
    
    			$title = ( ! empty( $page_for_posts ) ) ? get_the_title( $page_for_posts ) : esc_html__( get_the_title(), 'basel' );
    
    			if( is_tag() ) {
    				$title = esc_html__( 'Tag Archives: ', 'basel')  . single_tag_title( '', false ) ;
    			}
    
    			if( is_category() ) {
    				$title = '<span>' . single_cat_title( '', false ) . '</span>'; //esc_html__( 'Category Archives: ', 'basel') . 
    			}
    
    			if( is_date() ) {
    				if ( is_day() ) :
    					$title = esc_html__( 'Daily Archives: ', 'basel') . get_the_date();
    				elseif ( is_month() ) :
    					$title = esc_html__( 'Monthly Archives: ', 'basel') . get_the_date( _x( 'F Y', 'monthly archives date format', 'basel' ) );
    				elseif ( is_year() ) :
    					$title = esc_html__( 'Yearly Archives: ', 'basel') . get_the_date( _x( 'Y', 'yearly archives date format', 'basel' ) );
    				else :
    					$title = esc_html__( 'Archives', 'basel' );
    				endif;
    			}
    
    			if ( is_author() ) {
    				/*
    				 * Queue the first post, that way we know what author
    				 * we're dealing with (if that is the case).
    				 *
    				 * We reset this later so we can run the loop
    				 * properly with a call to rewind_posts().
    				 */
    				the_post();
    
    				$title = esc_html__( 'Posts by ', 'basel' ) . '<span class="vcard"><a class="url fn n" href="' . esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ) . '" title="' . esc_attr( get_the_author() ) . '" rel="me">' . get_the_author() . '</a></span>';
    
    				/*
    				 * Since we called the_post() above, we need to
    				 * rewind the loop back to the beginning that way
    				 * we can run the loop properly, in full.
    				 */
    				rewind_posts();
    			}
    
    			if( is_search() ) {
    				$title = esc_html__( 'Search Results for: ', 'basel' ) . get_search_query();
    			}
    
    			?>
    				<div class="page-title <?php echo esc_attr( $title_class ); ?> title-blog" style="<?php echo esc_attr( $style ); ?>">
    					<div class="container">
    						<header class="entry-header">
    							<?php if( $page_title ): ?><h1 class="entry-title"><?php echo  $title; ?></h1><?php endif; ?>
    							<?php if( $breadcrumbs ) basel_breadcrumbs(); ?>
    						</header><!-- .entry-header -->
    					</div>
    				</div>
    			<?php
    			return;
    		endif;
    
    		// Heading for portfolio
    		if( is_post_type_archive( 'portfolio' ) || is_singular( 'portfolio' ) || is_tax( 'project-cat' ) ):
    
    			$title = get_the_title( $page_for_projects );
    
    			if( is_tax( 'project-cat' ) ) {
    				$title = single_term_title( '', false );
    			}
    
    			?>
    				<div class="page-title <?php echo esc_attr( $title_class ); ?> title-blog" style="<?php echo esc_attr( $style ); ?>">
    					<div class="container">
    						<header class="entry-header">
    							<?php if( $page_title ): ?><h1 class="entry-title"><?php echo esc_html( $title ); ?></h1><?php endif; ?>
    							<?php if( $breadcrumbs ) basel_breadcrumbs(); ?>
    						</header><!-- .entry-header -->
    					</div>
    				</div>
    			<?php
    			return;
    		endif;
    
    		// Page heading for shop page
    		if( basel_woocommerce_installed() && ( is_shop() || is_product_category() || is_product_tag() || is_singular( "product" ) || basel_is_product_attribute_archieve() )
    			&& ( $shop_categories || $shop_title )
    		 ):
    
    			if( is_product_category() ) {
    
    		        $cat = $wp_query->get_queried_object();
    
    				$cat_image = basel_get_category_page_title_image( $cat );
    
    				if( $cat_image != '') {
    					$style = "background-image: url(" . $cat_image . ")";
    				}
    			}
    
    			if( ! $shop_title ) {
    				$title_class .= ' without-title';
    			}
    
    			?>
    				<?php if ( apply_filters( 'woocommerce_show_page_title', true ) && ! is_singular( "product" ) ) : ?>
    					<div class="page-title <?php echo esc_attr( $title_class ); ?> title-shop" style="<?php echo esc_attr( $style ); ?>">
    						<div class="container">
    							<div class="nav-shop">
    								
    								<?php if ( is_product_category() || is_product_tag() ): ?>
    									<?php basel_back_btn(); ?>
    								<?php endif ?>
    
    								<?php if ( $shop_title ): ?>
    									<h1><?php woocommerce_page_title(); ?></h1>
    								<?php endif ?>
    								
    								<?php if( ! is_singular( "product" ) && $shop_categories ) basel_product_categories_nav(); ?>
    
    							</div>
    						</div>
    					</div>
    				<?php endif; ?>
    
    			<?php
    			
    			return;
    		endif;
    	}
    }
    
    if( ! function_exists( 'basel_back_btn' ) ) {
    	function basel_back_btn() {
    		?>
    			<a href="javascript:baselThemeModule.backHistory()" class="basel-back-btn basel-tooltip"><span><?php esc_html_e('Back', 'basel') ?></span></a>
    		<?php
    	}
    }
    #19513

    Artem Temos
    Keymaster

    Yes, that’s correct.

Viewing 8 posts - 1 through 8 (of 8 total)