[Resolved] Was anyone successful with getting GeneratePress and LifterLMS to work?

Home Forums Support [Resolved] Was anyone successful with getting GeneratePress and LifterLMS to work?

Home Forums Support Was anyone successful with getting GeneratePress and LifterLMS to work?

Viewing 15 posts - 1 through 15 (of 30 total)
  • Author
    Posts
  • #312050
    v4ncouver

    Hello,
    I just bought the GP theme plugin and LOVE the theme. It is perfect for my needs (and then some).

    My plan is to put together a handful of online learning sites to see which one has the most potential and have picked the LifterLMS plugin for the courses portion.

    Unfortunately, the LifterLMS plugin causes nothing but issues with my setup.
    I just spent hours of creating a new website and all of a sudden, the site went blank. Just the top menu and footer could be seen. The content in between vanished and editing it with Elementor triggered the error message we all hate to see.

    I tried a lot of things, wasted over an hour disabling all kinds of plugins except LifterLMS.
    I am trying hard to like LifterLMS but at this rate, I wonder if I should call it quits and go with WP Courseware.

    I am grateful for your input and opinions.

    If GeneratePress + Elementor + LifterLMS can be tamed than I’d be happy to learn how.

    Thanks,
    Ernst Renner

    #312052
    Leo
    Staff
    Customer Support

    Hi Ernst,

    I believe Tom has a child theme specifically for GP + LifterLMS:
    https://generatepress.com/forums/topic/i-am-wanting-to-redo-my-website-plus-maybe-a-child-theme/#post-311293

    I will make sure he checks on this πŸ™‚

    #312064
    v4ncouver

    Thank you, Leo!

    I have talked to Tom about my issues and I believe that there is “more” going on than meets the eye.
    LifterLMS appears to be eager to push their own theme which is OK but they shouldn’t say that they are compatible if they are clearly not (as in not interested).

    By tonight, I will know if WP Courseware is just the better way to go.
    My students don’t care what I use and quite frankly, neither do I.
    If it works, I use it. If not … delete delete delete.

    I have now completely removed LifterLMS from https://www.learnnotenames.com and all the missing content came back. πŸ™‚

    #312088
    Lyle

    Hi Ernst,

    I am running that exact combination with no issues (so far πŸ™‚ ). GP, GP-P, Lifterlms and Elementor. Mind you, the version of Lifter that I am using, 2.7.11, is the last one before they came out with 3.0 and changed the pricing structure.

    Not sure where to find them other than for me to paste them here, but Tom had made some Lifter-specific functions; may or may not help:

    if ( ! function_exists( 'generate_lifterlms_start' ) ) :
    /** 
     * Add LifterLMS starting wrappers
     */
    add_action('lifterlms_before_main_content', 'generate_lifterlms_start', 10);
    function generate_lifterlms_start() 
    { ?>
    	<div id="primary" <?php generate_content_class();?>>
    		<main id="main" <?php generate_main_class(); ?>>
    			<?php do_action('generate_before_main_content'); ?>
    			<article id="post-<?php the_ID(); ?>" <?php post_class(); ?> <?php generate_article_schema( 'CreativeWork' ); ?>>
    				<div class="inside-article">
    					<?php do_action( 'generate_before_content'); ?>
    					<div class="entry-content" itemprop="text">
    <?php }
    endif;
    
    if ( ! function_exists( 'generate_lifterlms_end' ) ) :
    /** 
     * Add Lifter LMS ending wrappers
     */
    add_action('lifterlms_after_main_content', 'generate_lifterlms_end', 10);
    function generate_lifterlms_end() 
    {
    ?>
    					</div><!-- .entry-content -->
    					<?php do_action( 'generate_after_content'); ?>
    				</div><!-- .inside-article -->
    			</article><!-- #post-## -->
    			<?php do_action('generate_after_main_content'); ?>
    		</main><!-- #main -->
    	</div><!-- #primary -->
    <?php
    }
    endif;
    
    function tu_llms_theme_support(){
        add_theme_support( 'lifterlms-sidebars' );
    }
    add_action( 'after_setup_theme', 'tu_llms_theme_support' );
    
    function tu_llms_sidebar_function( $id ) {
    	$my_sidebar_id = 'sidebar-1';
    	return $my_sidebar_id;
    }
    add_filter( 'llms_get_theme_default_sidebar', 'tu_llms_sidebar_function' );

    Cheers!
    Lyle

    #312091
    v4ncouver

    Thank you Lyle,
    I am familiar with that code which is also present in a child-theme that I got from wpcrafter.com (It was that website which made me aware of GeneratePress in the first place).

    Unfortunately, a website that works randomly is not what I am after and therefore I’ve removed LifterLMS from 2 of the 3 sites.

    The good thing is that GeneratePress is rock solid. I am almost ready to buy WP Courseware and from what I’ve seen so far, it will be alright for my simple use. LifterLMS would have been better but, as my piano teacher once mentioned, life is not about being perfect.

    Thanks again,
    E

    #312275
    wekhter

    I am not running LifterLMS on a live site but I’ve been working with it and GeneratePress on a local site for around a month (testing for a live site) and haven’t really run into any problems.

    Then again I use Beaver Builder (rather than Elementor) so maybe the incompatibility lies there?

    Curious to hear 1) what kind of issues you’re having and 2) how WP Courseware works for you!

    #312278
    v4ncouver

    Hello wekhter,
    With everything configured as required, here are the issues:

    Both sidebar areas (courses and lessons) have the two required widgets in them (progress and curriculum). So far, so good.

    Now comes the problem.
    I create a new page named “Courses”, go to the LifterLMS settings and make sure that this page is selected to be the default courses page.
    I also add the shortcode to the page so that the courses show up.

    I then create a few sample courses (including a sample lesson and image).

    Viewing the courses page shows the sample courses BUT!!! the right sidebar widgets ALSO display below the courses.
    This is weird.

    I can put an empty text widget inside the right sidebar container which will clean up the course page but messes up every other page.

    I have been using WP since it was 2.8 and have never seen such inconsistency as LifterLMS introduces. Why are they doing this? To sell their theme?

    Don’t get me wrong, I really like what LifterLMS does and would love to bet the future on it but it simply doesn’t play nice with GeneratePress.

    I did all the PHP fixes I could find. Even used the free child-theme that wpcrafter gives away but still, there is no end to the issues.

    What’s even crazier is that I have one website left with LifterLMS installed and it works fine there. But on two other sites (identical settings) it does not.

    I haven’t bought WP Courseware yet but am just about to do so.

    Choosing an LMS platform is the most important decision I need to make right now and betting on the wrong horse will prove costly in the years to come. – E

    #312281
    v4ncouver

    My final thought on this issue is that the developer of GeneratePress should install LifterLMS and see for himself what mess it is.

    There are quite a few sites out there advertising GeneratePress and Lifter so it would make sense to make GP compatible out of the box.

    Since Lifter isn’t interested in designing a beautiful theme, it might be beneficial for GP to fill the gap as many of us are starting to add courses to our sites and have no working solution. At least not at a reasonable price.

    GP is an amazing theme and LifterLMS is also amazing at what it does. Generally, if there is a market, someone will be clever and create a product that makes the two items compatible. Unfortunately, waiting for that to happen isn’t an option for me.
    If WP Courseware really is selling the 2 site license for USD 90 then it’s the best option for GP.

    I will write a blog post if I go that route and maybe become an affiliate for GP (depending on how well it works).

    Case closed! πŸ™‚

    #312316
    wekhter

    @v4ncouver You know, now that you write it out so plainly I can remember running into that exact same thing–I guess i’m just so used to having to customize templates from working with WooCommerce that I didn’t even remember having to go through with fixing that all!

    It sounds like you may be “over” trying to wrangle LifterLMS into shape, but in case you aren’t (or in case anyone else finds this thread when looking for answers), you can do the following:

    1) Create a new folder in your child theme called “lifterlms” where you will store templates to override LifterLMS’s built-in templates

    2) In /lifterlms, create a file called archive-course.php with this content (based on GP’s archive.php) :

    <?php
    /**
     * LifterLMS Course Archive in GeneratePress
     *
     * @package GeneratePress 
     * @package LifterLMS/Templates
     *
     */
    if ( ! defined( 'ABSPATH' ) ) exit;
    
    get_header(); ?>
    
    	<section id="primary" <?php generate_content_class(); ?>>
    		<main id="main" <?php generate_main_class(); ?>>
    		<?php do_action('generate_before_main_content'); ?>
    		<?php if ( have_posts() ) : ?>
    
    			<?php do_action( 'generate_archive_title' ); ?> // Delete this if you don't want archive title
    
    			<?php /* Start the Loop */ ?>
    			<?php while ( have_posts() ) : the_post(); ?>
    
    				<?php get_template_part( 'lifterlms/content-course' ); ?>
    
    			<?php endwhile; ?>
    
    			<?php generate_content_nav( 'nav-below' ); ?>
    
    		<?php else : ?>
    
    			<?php get_template_part( 'no-results', 'archive' ); ?>
    
    		<?php endif; ?>
    		<?php do_action('generate_after_main_content'); ?>
    		</main><!-- #main -->
    	</section><!-- #primary -->
    
    <?php 
    do_action('generate_sidebars');
    get_footer();

    3) In /lifterlms, create a file called content-course.php with this content (based on LifterLMS loop/content) :

    <?php
    /**
     * LifterLMS Course Content in GeneratePress
     *
     */
    if ( ! defined( 'ABSPATH' ) ) { exit; }
    ?>
    <article id="post-<?php the_ID(); ?>" <?php post_class(); ?> <?php generate_article_schema( 'CreativeWork' ); ?>>
    	<div class="llms-loop-item-content">
    
    	<?php
    		/**
    		 * lifterlms_before_loop_item
    		 * @hooked lifterlms_loop_featured_video - 8
    		 * @hooked lifterlms_loop_link_start - 10
    		 */
    		do_action( 'lifterlms_before_loop_item' );
    	?>
    
    	<?php
    		/**
    		 * lifterlms_before_loop_item_title
    		 * @hooked lifterlms_template_loop_thumbnail - 10
    		 * @hooked lifterlms_template_loop_progress - 15
    		 */
    		do_action( 'lifterlms_before_loop_item_title' );
    	?>
    
    	<h4 class="llms-loop-title"><?php the_title(); ?></h4>
    
    	<footer class="llms-loop-item-footer">
    		<?php
    			/**
    			 * lifterlms_after_loop_item_title
    			 * @hooked lifterlms_template_loop_author - 10
    			 * @hooked lifterlms_template_loop_length - 15
    			 * @hooked lifterlms_template_loop_difficulty - 20
    			 */
    			do_action( 'lifterlms_after_loop_item_title' );
    		?>
    	</footer>
    
    	<?php
    		/**
    		 * lifterlms_after_loop_item
    		 * @hooked lifterlms_loop_link_end - 5
    		 */
    		do_action( 'lifterlms_after_loop_item' );
    	?>
    
    	</div><!-- .llms-loop-item-content -->
    </article><!-- #post-## -->

    4) I personally wanted the LifterLMS course catalog to follow the column settings from GP Premium, so I added the following via the Code Snippets plugin (you can also add directly to functions.php)

    add_filter( 'generate_blog_columns','generate_adjust_columns' );
    function generate_adjust_columns( $columns )
    {
        if ( is_post_type_archive( 'course' ) ) :
            return true;
        endif;
    
        return $columns;
    }
    #312355
    v4ncouver

    wekhter,

    I owe YOU!

    I just grabbed the chid-theme from wpcrafter and added the two files you provided and at first glance, everything looks and behaves 100%.

    What I especially LOVE about your customization is the way the courses display. Most of us will not have more than a handful of courses in the first year so your layout is simply beautiful.

    Thank you for posting this. I still can’t believe that there was a solution! πŸ™‚

    #312395
    Tom
    Lead Developer
    Lead Developer

    Great solution, thank you wekhter! πŸ™‚

    #313691
    Razvan

    Hi there!
    Can you share a screenshot with us with the way your courses are displaying with this change in Generate Press?

    I am having a similar debacle and in the end I ended up changing the theme.

    I am also interested in knowing if you bought the WP Courseware plugin and what is your experience with it?

    In my case I am not using Elementor with LifterLMS because it is not compatible with the lessons custom post type Lifter is using; I am using Beaver Builder and works just fine.

    Thanks and all the best!

    Razvan

    #313715
    Lyle

    I just had to try this one more time and it works for me with the code that Tom had originally supplied and that I posted above.

    Perhaps take a look at a dev install that I set up with the following:
    – latest WP, GP, GP-P, LifterLMS, and Elementor
    – installed the sample course
    – added the GP – Lifter code into Code Snippets and Activate “everywhere”
    – set up the 2 Lifter widgets in their respective locations

    http://gplifter.cloudaccess.host

    I can enroll in the sample course and start going through it and the progress indicates as such. Not sure what other issues others are having but it certainly appears to be working πŸ™‚

    Cheers!
    Lyle

    #314133
    wekhter

    My test site is local, but here is a screenshot of how the course archive looks with the page templates + the code to display the course archive in columns I posted above: https://snag.gy/CwQPlz.jpg

    #316241
    Lyle

    Found a “one-click” method to get LifterLMS to play nice with GeneratePress! πŸ™‚

    This evening at our local WP Meetup Group meeting, a fellow showed me the LifterLMS Labs plugin, available on the WP plugin repo:

    https://wordpress.org/plugins/lifterlms-labs/

    Install, activate, go to Dashboard > LifterLMS > Labs > Super Sidebars > select the sidebar you want to enable (Right Sidebar is the default) > Save > Lifter sidebar now shows in GP sidebar! πŸ™‚

    Cheers!
    Lyle

Viewing 15 posts - 1 through 15 (of 30 total)
  • You must be logged in to reply to this topic.