• Resolved chrisc99

    (@chrisc99)


    Hi

    I have a custom theme with archive-news.php and single-news.php which provides styling for the news pages. Worked great in 2.2 however site auto upgraded to 2.4 and a grid with snippets appeared instead of the custom theme and no matter what I tried it just kept appearing. The single page style still works.

    Inside the plugin the following file has been added. /templates/archive-news.php. Once I realised this I found news.php L119.

    // $template = dirname( __FILE__ ) .’/files/templates/’. $file_name;

    Commenting out this line allows my theme style to apply again. It appears applying a template in this way does not allow a theme template to be applied later.

    Hope this helps.

    • This topic was modified 4 years, 5 months ago by chrisc99.
Viewing 13 replies - 1 through 13 (of 13 total)
  • Plugin Author MortenPeterAndersen

    (@mortenpeterandersen)

    Hi chrisc99
    I really appreciate your feedback.
    Looks like I first have to check for if custom theme files exist.

    ??
    Morten

    Plugin Author MortenPeterAndersen

    (@mortenpeterandersen)

    Hi chrisc99
    I could be awesome if you could try to use this code

    if ( !file_exists( trailingslashit( get_stylesheet_directory() ) . 'archive-news.php' ) ) {
    
    add_filter( 'template_include', 'simple_news_page_template' );
    function simple_news_page_template( $template ) {
    	$file_name = 'archive-news.php';
        if ( is_post_type_archive('news') ) {
             $template = dirname( __FILE__ ) .'/files/templates/'. $file_name;
        if ( '' != $new_template ) {
            return $new_template ;
        }
        }
        return $template;
    }
    
    }

    … Instead of everything under line 112

    Plugin Author MortenPeterAndersen

    (@mortenpeterandersen)

    This snippet also tjek if archive-news.php is in a child theme

    if ( !file_exists( trailingslashit( get_stylesheet_directory() ) . 'archive-news.php' ) || !file_exists(trailingslashit( get_template_directory() ) . 'archive-news.php' )  ) {
    
    	add_filter( 'template_include', 'simple_news_page_template' );
    	function simple_news_page_template( $template ) {
    		$file_name = 'archive-news.php';
    	  if ( is_post_type_archive('news') ) {
    	      $template = dirname( __FILE__ ) .'/files/templates/'. $file_name;
    		  if ( '' != $new_template ) {
    		      return $new_template ;
    		  }
    	  }
    	  return $template;
    	}
    
    }
    Thread Starter chrisc99

    (@chrisc99)

    Hi Morten

    Thank for for the quick response. I have tested your latest solution and my custom template (archive-news.php) displays. “archive.php” does not work with this solution. “archive.php” styles any archive post type page and is the parent to “archive-{post type}” template pages.

    Cheers

    Chris

    Plugin Author MortenPeterAndersen

    (@mortenpeterandersen)

    strange ???

    I have tested with twentynineteen theme and a child theme to that …. and everything works fine

    Thread Starter chrisc99

    (@chrisc99)

    In the theme you can use “archive-news.php”, “archive-calander.php”, “archive-blog.php” or you can use just a single file “archive.php” to style all three post types.

    if ( !file_exists( trailingslashit( get_stylesheet_directory() ) . ‘archive-news.php’ ) || !file_exists(trailingslashit( get_template_directory() ) . ‘archive-news.php’
    || !file_exists( trailingslashit( get_stylesheet_directory() ) . ‘archive.php’ )
    || !file_exists( trailingslashit( get_template_directory() ) . ‘archive.php’ ) ) {

    This would allow custom themes to work correctly.

    https://developer.www.ads-software.com/themes/basics/template-hierarchy/#custom-post-types

    Hi,

    I have a similar issue with a custom theme am working on. Simple News v2.2 works fine but when I updated to v2.4 some parts broke. I have category-latest-news.php and category-events.php files, when I visit these particular pages, my navigation links totally disappear.

    I’ve currently reverted back to v2.2.

    Plugin Author MortenPeterAndersen

    (@mortenpeterandersen)

    Hey mythos and chrisc99
    The problem is that my templatefile is very simple. Only printing ‘header, loop and footer’

    <?php
      get_header();
    loop
      get_footer();
    ?>

    I have to code an checkbox on the admin page. If checked it will ignore the plugin files … and use the themefiles.

    ??
    Morten

    Hi Morten,

    Thanks for your response.

    You are right about the get_header(). I have the same line in my theme files and that’s the reason my page breaks since get_header and get_footer are being called twice: from your plugin and from my theme files.

    Will really appreciate that checkbox feature, if it’s in your plans.

    Thanks…

    Plugin Author MortenPeterAndersen

    (@mortenpeterandersen)

    Hey mthyogz
    I’ve got a solution ready …. but I have to test it a little more. If you send me an email I can send you the new “pre-release”

    Hi Morten,

    I can’t thank you enough, the pre-release worked fine with my theme. Am back in business.

    Thank-you so much for your support.

    Plugin Author MortenPeterAndersen

    (@mortenpeterandersen)

    ??

Viewing 13 replies - 1 through 13 (of 13 total)
  • The topic ‘Upgrade from 2.2 to 2.4 breaks wordpress themes’ is closed to new replies.