Skip to content

NodeBB customisation

Locked Customisation
  • @jac said in NodeBB customisation:

    I’ve just tried the instruction above. Unfortunately it comes up with an error when adding the code.

    Fixed. This is because you had

    @import url(‘https://fonts.googleapis.com/css2?family=Alfa+Slab+One&display=swap’);

    When it should be

    @import url('https://fonts.googleapis.com/css2?family=Alfa+Slab+One&display=swap');

    I’m guessing this was a copy/paste ? 🙂 This happens all the time !

  • @jac said in NodeBB customisation:

    I also notice an alignment issue of the text and how to remove the other title that shows underneath? Clearly a work in progress so I do apologise and thank you for your patience.

    Yes, see below

    859bc79a-423d-43a5-ae98-4658e4aaa9aa-image.png

    This is caused by your text being too long to fit in the allocated space. There’s a couple of choices here

    • Make the text size smaller
    • Enlarge the size of the viewport to accommodate

    I personally wouldn’t recommend the second option as this isn’t really a fix and will look dire on mobile devices.

  • @jac said in NodeBB customisation:

    how to remove the other title that shows underneath?

    Primarily, with CSS, so

    .topic [component="post/header"] {
        display: none;
    }
    

    However, this may cause a conflict, so using this small function below (goes in Custom JS) will do the same thing but be more specific for the target

    $(window).on('action:ajaxify.end', function (data) {
    	        if (window.location.href.indexOf("topic") > -1) {
                    console.log("This is a topic, so hide the stock header");
                                      $('.topic [component="post/header"]').hide();
                }
                else {
                        // Nothing to do
                }
    });
    
  • @phenomlab said in NodeBB customisation:

    @jac said in NodeBB customisation:

    how to remove the other title that shows underneath?

    Primarily, with CSS, so

    .topic [component="post/header"] {
        display: none;
    }
    

    However, this may cause a conflict, so using this small function below (goes in Custom JS) will do the same thing but be more specific for the target

    $(window).on('action:ajaxify.end', function (data) {
    	        if (window.location.href.indexOf("topic") > -1) {
                    console.log("This is a topic, so hide the stock header");
                                      $('.topic [component="post/header"]').hide();
                }
                else {
                        // Nothing to do
                }
    });
    

    Many thanks for all the answers mate. What to do 🤔. I suppose I’m happy for you to do the most logical solution and I’ll go with that 😁.

  • @jac The above is already active on your site, so nothing to do. You just need to make a decision re this

    This is caused by your text being too long to fit in the allocated space. There’s a couple of choices here

    Make the text size smaller

    Enlarge the size of the viewport to accommodate

    I personally wouldn’t recommend the second option as this isn’t really a fix and will look dire on mobile devices.

  • @phenomlab said in NodeBB customisation:

    @jac The above is already active on your site, so nothing to do. You just need to make a decision re this

    This is caused by your text being too long to fit in the allocated space. There’s a couple of choices here

    Make the text size smaller

    Enlarge the size of the viewport to accommodate

    I personally wouldn’t recommend the second option as this isn’t really a fix and will look dire on mobile devices.

    That’s fine mate, make the title text smaller then would you say? either that or go back to how it was if it’s easier and just change the font etc?

  • @jac said in NodeBB customisation:

    I suppose I’m happy for you to do the most logical solution and I’ll go with that .

    A more elegant approach would be this

    .Hero {
        min-height: 70px;
    }
    

    This way, we set the height minimum to 70px to get the same height when the text fits without issue. When the text is longer, the same <div> will expand to fit. So, you go from this

    e7b709f9-eb02-4d82-9d07-36c5c616d0c3-image.png

    To this

    61244bb9-4998-4d41-8bff-f7933f21200e-image.png

    I also added these two media queries to handle the text size on mobile devices (it’s huge otherwise and looks, well, nasty)

    @media (max-width: 767px) {
    h2.PageHero-title {
        font-size: 1.8rem !important;
    }
    }
    
    @media (min-width: 1200px) {
        h2.PageHero-title {
        font-size: 3rem;
    }
    }
    

    I think this looks better. It’s active on your site now.

  • @phenomlab said in NodeBB customisation:

    @jac said in NodeBB customisation:

    I suppose I’m happy for you to do the most logical solution and I’ll go with that .

    A more elegant approach would be this

    .Hero {
        min-height: 70px;
    }
    

    This way, we set the height minimum to 70px to get the same height when the text fits without issue. When the text is longer, the same <div> will expand to fit. So, you go from this

    e7b709f9-eb02-4d82-9d07-36c5c616d0c3-image.png

    To this

    61244bb9-4998-4d41-8bff-f7933f21200e-image.png

    I also added these two media queries to handle the text size on mobile devices (it’s huge otherwise and looks, well, nasty)

    @media (max-width: 767px) {
    h2.PageHero-title {
        font-size: 1.8rem !important;
    }
    }
    
    @media (min-width: 1200px) {
        h2.PageHero-title {
        font-size: 3rem;
    }
    }
    

    I think this looks better. It’s active on your site now.

    Many thanks mate for all the work! I really appreciate it. How do I add a new title font? And then a new category font if possible?

    Many thanks as always!

  • @jac You’d need to target the CSS class itself, so for the title font, you can use (substitute the font name for what you want to use)

    h2.PageHero-title {
        font-family: "Alfa Slab One";
    }
    

    And for category, are you sure you want to do this ? It may look overdone (in my view)

    b4c8d8f3-0edf-40dc-9170-dd1229a3fba3-image.png

    Unless you are looking for a specific font that isn’t as “out there” as the header ?

  • @phenomlab said in NodeBB customisation:

    @jac You’d need to target the CSS class itself, so for the title font, you can use (substitute the font name for what you want to use)

    h2.PageHero-title {
        font-family: "Alfa Slab One";
    }
    

    And for category, are you sure you want to do this ? It may look overdone (in my view)

    b4c8d8f3-0edf-40dc-9170-dd1229a3fba3-image.png

    Unless you are looking for a specific font that isn’t as “out there” as the header ?

    Thanks for the info mate.

    Yes I agree that font does look over the top mate. I’ll have a look out for something else.

  • phenomlabundefined phenomlab locked this topic on
  • @jac Given your departure away from your previous project, I’m going to close this thread… 🙂


  • 5 Votes
    4 Posts
    483 Views

    @DownPW thanks. I forgot about that.

  • Whitespace fixes in Nodebb

    Solved Customisation
    18
    7 Votes
    18 Posts
    770 Views

    @Panda Just circling back here with something of an update (which I think you’ll like). I’ve completely restructured the ranking system. There are now less ranks, with a higher point threshold to reach them.

    More importantly, if you reload the site, you’ll notice that the ranks are now icons.

    I also removed the “Author” badge, and made this a single icon, which (to me) looks much better.

  • 1 Votes
    4 Posts
    475 Views

    @eeeee if you’re using the console, you could try

    node app.js > app.log 2>&1

    This would redirect stdout to a file named app.log and redirect stderr to stdout.

    I’m not sure about standard logging under NodeBB, but there is an error log located at logs/error.log.

    Failing that, you could always stop the NodeBB service then use ./nodebb dev from the console which would then provide debug output.

  • Heading text on NodeBB forum

    Solved Customisation
    27
    1 Votes
    27 Posts
    2k Views

    @mventures I’ve not done anything here.

  • [NODEBB] Stats

    Unsolved Customisation
    20
    2 Votes
    20 Posts
    1k Views

    @phenomlab said in [NODEBB] Stats:

    @jac or I land up fixing it 🙂

    I wouldn’t put it past you 😛

  • [NODEBB] Welcome Message

    Solved Customisation
    18
    13 Votes
    18 Posts
    2k Views

    For anyone reviewing this post, there’s an updated version here that also includes an sunrise / sun / moon icon depending on the time of day

    https://sudonix.com/topic/233/nodebb-welcome-message-with-logo-footer-change/3?_=1645445273209

  • Social icon (Nodebb)

    Solved Customisation
    7
    0 Votes
    7 Posts
    917 Views

    @phenomlab said in Social icon (Nodebb):

    @jac I just tested my theory around using the OG image, and according to the Twitter card validator, it works fine

    73e805e1-997b-41bf-9259-51c5052ca8fc-image.png

    fixed 🙂

  • 2 Votes
    4 Posts
    654 Views

    @phenomlab said in How to set a signature in NodeBB?:

    @jac No issues at all with copying. This is set using the signature for the user you are posting as. In the case of Hostrisk, it’s set like the below

    7bf04183-f6e8-4d72-b0eb-c9a05c9cd24b-image.png

    You can set the signature by using https://domain.com/user/theuser/edit

    Mamy thanks Mark, I’ll set this up later 😁.