Different landing page for desktop vs mobile theme?

No worries. I should have linked to instructions here too! There is a nice illustrated set of instructions you can check out here. It’s possible you might be on the latest version of Discourse, in which case the UX for themes and components has changed a little. Let me know if the instructions I linked to still leave you a little lost. I’d be happy to help you figure it out.

By the way, the topic below is the home of this theme component now:

2 Likes

thanks @tshenry i’ll take a look.

however I’ve just fiddled round with the customization settings - I’ve never had an issue before, and now my site has disappeared!! Just produces a blank screen, but the code is there!!

any idea how to reverse changes from the cli???

cheers

You’ll need to go to your site’s safe mode Air Cadet Central and check “disable current theme” then you’ll want to revert whatever change you made in the customizations.

2 Likes

thanks fella - didn’t know that existed! Lifesaver!

1 Like

OK back up and working - thanks again - I’ve installed your theme and it’s installing as a Theme not a Theme Component??? any ideas. I’m on Version: v2.1.0.beta5 +66

cheers, and thanks for your hard work :smiley:

No problem. If you select it from the list of themes, then scroll down, you should see a section like this:

You’ll want to click the “make component” button then confirm. You should then be able to add it to your main theme the way it’s outlined in the instructions I linked to earlier.

Fab, getting there! Making it a component works, but when I add it to my theme it adds a component with the others but there’s no text for the link, but the (x) button is there. The link it produces ends in a # where the others don’t??
and it doesn’t seem to work!!

Cheers

Ah yeah, I think that might be a little bug that’s still getting worked out. Try refreshing the page, then click the (x) if that blank theme component is still there, then try selecting the Force Mobile Homepage component again. You might also try selecting another theme component from the dropdown list, then open the list again and select the Force Mobile Homepage component again. Click the “add” button and hopefully that should do it!

3 Likes

You are indeed a hero - now working as advertised! Many thanks for your help today, greatly appreciated!

1 Like

Yes, I’ve come across this several times. Has this been reported I wonder?

I don’t know - I haven’t - but @tshenry 's suggestion of moving in and out of the drop down menu after a page reload worked.

1 Like

Nice one! thanks @tshenry :heart:

1 Like

Any reason not to combine your script with the following in Customize --> Themes --> Mobile --> Header?

<script>
  if (window.location.pathname == "/")
  {   window.location.href = "/latest";
  }
</script>

This will handle the initial redirect to /latest if the user arrives on the homepage.

1 Like

No particular reason, no. That said, I no longer use that script. With the addition of user-selectable homepages I just have those that prefer /latest select it.

1 Like

I originally found this topic when searching for a solution to my problem:

As it explains, I have my forum set up to display categories + latest since I don’t only want to display the latest on desktop. Here are the two Discourse settings that make that layout possible:

It’s the ideal layout for me since it both displays the categories for users looking to post something new and makes the latest available for other people who are just coming back to see what’s new.

For anyone reading along who wants to do the same thing, here’s what you need to do:

  1. Go to the Edit CSS/HTML section of your theme:

  2. Add the following script in the MobileHeader section (so it only affects visitors on mobile devices):

    Here’s the script so you can copy/paste it:

    <script>
        if (window.location.pathname == "/")
        {   window.location.href = "/latest";
        }
    </script>
    
    <script type="text/discourse-plugin" version="0.4">
        api.changeWidgetSetting('home-logo', 'href', '/latest')
    </script>
    

Update: The Forced Mobile Homepage theme component linked above is probably a better way to accomplish this.

10 Likes

Would it be possible to have this feature per user basis? Like each user being able to choose their default page on mobile in their interface preferences (there’s already a general one there, we would only need one for mobile-only).

3 Likes

I’m currently having the same issue: on desktop I prefer to have the categories view in which I have the latest topic on the right side. On Mobile the categories view only show the categories. On mobile I would prefer to have the “last” topic changes view.

It would be great to have 2 preferences:

  • default home page on desktop: [ selection field]
  • default home page on mobile: [ selection field]

Is this something for which a PR would be accepted?

7 Likes

Could this be a per device setting as well? The workarounds posted above are not ideal because they force the setting on all mobile users (and tablets are difficult to classify in this regard). And it is quite obvious that often it might make sense to have different preferences based on device, not just desktop/mobile distinction.

1 Like

this is the best thing after the wheel! Thank you brother

1 Like

I would love to have these preferences too… Is there a way to do that?