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… 🙂


Related Topics
  • Forum customisation

    Customisation
    11
    6 Votes
    11 Posts
    198 Views

    Thank you Mark, the changes look fantastic!!

  • NodeBB recent cards customisation

    Solved Customisation
    3
    2 Votes
    3 Posts
    100 Views

    @phenomlab thank you very much for the assistance Mark, massively appreciated as always.

    The great thing about this is it’s all documented for other NodeBB users that come looking for solutions 😃.

    Looks far better 🤝👍🏻.

  • Whitespace fixes in Nodebb

    Solved Customisation
    18
    7 Votes
    18 Posts
    1k 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.

  • Changing Background on NodeBB

    Solved Customisation
    4
    0 Votes
    4 Posts
    628 Views

    @cagatay You’d target the body tag and use the below line of CSS

    background: url(/assets/customcss/backgrounds/default/default.png) no-repeat center center fixed;

    Obviously, you need to change the path to suit where your image is being stored.

    More info around the background property can be found here

    https://www.w3schools.com/cssref/css3_pr_background.php

  • [NODEBB] Stats

    Unsolved Customisation
    20
    2 Votes
    20 Posts
    2k Views

    @phenomlab said in [NODEBB] Stats:

    @jac or I land up fixing it 🙂

    I wouldn’t put it past you 😛

  • NodeBB Footer

    Solved Customisation
    10
    1 Votes
    10 Posts
    1k Views

    @phenomlab said in NodeBB Footer:

    @jac and you. Hope all is well and you recover quickly

    Thanks pal 😁🤝🏻

  • NodeBB Discord Plugins

    Unsolved Customisation
    7
    0 Votes
    7 Posts
    971 Views

    @RiekMedia hi. Just following up on this thread (I know it’s old) but was curious to understand if it’s still an issue or not ?

  • How to set a signature in NodeBB?

    Solved Customisation
    4
    2 Votes
    4 Posts
    750 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 😁.