Skip to content

NodeBB: Creating pages

Solved Configure
9 2 2.4k 1
  • Hi @phenomlab,
    How do I create the pages? I am planning to have pages for About us, Privacy Policy, Terms of Use, etc.
    On your site, I can see you have a “link” icon which has a dropdown for individual pages. Something like that is suitable for me also.
    Also, I saw that on your Policies page, you had 3 topics grouped into a close-open kind of diaplay. How did you do that?
    Thank you!

  • Hi @phenomlab,
    How do I create the pages? I am planning to have pages for About us, Privacy Policy, Terms of Use, etc.
    On your site, I can see you have a “link” icon which has a dropdown for individual pages. Something like that is suitable for me also.
    Also, I saw that on your Policies page, you had 3 topics grouped into a close-open kind of diaplay. How did you do that?
    Thank you!

  • phenomlabundefined phenomlab has marked this topic as solved on
  • Thanks again! Should I wait to install these once the site has been upgraded to V3?

    Also, I went through the whole thread. Seems to be a complicated affair. Anyway, is this how it’s done:

    1. Open Terminal on Mac
    2. Add this script: npm install nodebb-plugin-custom-pages

    What would be the next steps? The referred page doesn’t seem to have that info. Maybe, I missed.

  • Thanks again! Should I wait to install these once the site has been upgraded to V3?

    Also, I went through the whole thread. Seems to be a complicated affair. Anyway, is this how it’s done:

    1. Open Terminal on Mac
    2. Add this script: npm install nodebb-plugin-custom-pages

    What would be the next steps? The referred page doesn’t seem to have that info. Maybe, I missed.

    @mventures It’s not as difficult as it sounds. You just need to gain access to your server via SSH (see https://sudonix.com/topic/445/nodebb-upgrading-to-nodebb-v3-x/6?_=1680448676890) then ensure you are in the NodeBB directory.

    From there, you can issue that same code, for example

    c3d5ce48-5d80-4f07-8b23-75e4a47ee8ba-image.png

    As you can see from the above, I’ve now installed this on your forum. From here, you’ll now need to activate the plugin before you can use it

    In your forum, navigate to /admin/extend/plugins#deactive. You should see the below

    45846af3-a51a-49f7-82e3-eec74dd4800e-image.png

    You’ll notice that the new plugin appears in the list, but needs to be activated first before it can be used

    924df608-bf84-4c78-9a0f-3878fe9e7641-image.png

    Click Confirm. After a few seconds, NodeBB will tell you that the plugin has been activated, but you need to rebuild and restart before it will work

    198008d7-b9d2-4c70-a619-99ee546f2848-image.png

    Now you need to rebuild and restart

    34e6d121-11bf-4d9a-88c8-99559f364f50-image.png

    86d74334-f3b8-4c55-8254-6ad83c8cc0a7-image.png

    Confirm, and the rebuild/restart process will commence

    3082d590-2805-4022-a00f-4878400934b2-image.png

    24d5a209-9735-4db3-86a4-d058818d7066-image.png

    You should then get a self-closing message telling you that the forum has restarted successfully (and can now be used). At this point, you should press F5 in your browser console to reload the page

    Now in the plugins menu, you should see Custom Pages has been added

    ed17f866-10df-4001-8844-1cbcb720fa59-image.png

    That’s it.

    Nothing for you to do here, as I’ve already done it on your site 🙂

  • @mventures It’s not as difficult as it sounds. You just need to gain access to your server via SSH (see https://sudonix.com/topic/445/nodebb-upgrading-to-nodebb-v3-x/6?_=1680448676890) then ensure you are in the NodeBB directory.

    From there, you can issue that same code, for example

    c3d5ce48-5d80-4f07-8b23-75e4a47ee8ba-image.png

    As you can see from the above, I’ve now installed this on your forum. From here, you’ll now need to activate the plugin before you can use it

    In your forum, navigate to /admin/extend/plugins#deactive. You should see the below

    45846af3-a51a-49f7-82e3-eec74dd4800e-image.png

    You’ll notice that the new plugin appears in the list, but needs to be activated first before it can be used

    924df608-bf84-4c78-9a0f-3878fe9e7641-image.png

    Click Confirm. After a few seconds, NodeBB will tell you that the plugin has been activated, but you need to rebuild and restart before it will work

    198008d7-b9d2-4c70-a619-99ee546f2848-image.png

    Now you need to rebuild and restart

    34e6d121-11bf-4d9a-88c8-99559f364f50-image.png

    86d74334-f3b8-4c55-8254-6ad83c8cc0a7-image.png

    Confirm, and the rebuild/restart process will commence

    3082d590-2805-4022-a00f-4878400934b2-image.png

    24d5a209-9735-4db3-86a4-d058818d7066-image.png

    You should then get a self-closing message telling you that the forum has restarted successfully (and can now be used). At this point, you should press F5 in your browser console to reload the page

    Now in the plugins menu, you should see Custom Pages has been added

    ed17f866-10df-4001-8844-1cbcb720fa59-image.png

    That’s it.

    Nothing for you to do here, as I’ve already done it on your site 🙂

    @phenomlab Thank you so much yet again! Much appreciated.

    How do I now add the pages?

    I went to PLUGINS > CUSTOM PAGES & did the below:
    Screen Shot 2023-04-04 at 8.22.00 pm.png

    Then, I went to EXTEND > WIDGETS & did the below:
    Screen Shot 2023-04-04 at 8.23.06 pm.png

    SAVED at both places but nothing has appeared on the footer.
    Where am I going wrong?

  • @phenomlab Thank you so much yet again! Much appreciated.

    How do I now add the pages?

    I went to PLUGINS > CUSTOM PAGES & did the below:
    Screen Shot 2023-04-04 at 8.22.00 pm.png

    Then, I went to EXTEND > WIDGETS & did the below:
    Screen Shot 2023-04-04 at 8.23.06 pm.png

    SAVED at both places but nothing has appeared on the footer.
    Where am I going wrong?

    @mventures That widget will appear in the page it is created, so

    7f564f90-69e1-4ce2-abe3-5f0a37cb272c-image.png

    I’d also recommend placing that in the content section (widget) unless you intended for it to be in the footer ?

  • @mventures That widget will appear in the page it is created, so

    7f564f90-69e1-4ce2-abe3-5f0a37cb272c-image.png

    I’d also recommend placing that in the content section (widget) unless you intended for it to be in the footer ?

    @phenomlab I would like it the way you have it. Is that the CONTENT SECTION you are referring to? How do I place my new pages in the CONTENT SECTION widget? I have done it as below and saved it, but I can’t see it on the page.
    Screen Shot 2023-04-04 at 9.56.24 pm.png

  • @phenomlab I would like it the way you have it. Is that the CONTENT SECTION you are referring to? How do I place my new pages in the CONTENT SECTION widget? I have done it as below and saved it, but I can’t see it on the page.
    Screen Shot 2023-04-04 at 9.56.24 pm.png

    @mventures The privacy policy you see on my site is in fact custom code. The page itself is created the same way, but the running widget is my creation. I’m happy to share the code with you if it’ll help, but it may not operate correctly on your site if you use the v2 version.

    Thankfully, I have a v3 version ready to go also, and happy to share that if it helps.

  • @mventures The privacy policy you see on my site is in fact custom code. The page itself is created the same way, but the running widget is my creation. I’m happy to share the code with you if it’ll help, but it may not operate correctly on your site if you use the v2 version.

    Thankfully, I have a v3 version ready to go also, and happy to share that if it helps.

    OK, I think I have figured out how to place a link in the footer which will click to a new page.


Did this solution help you?
Did you find the suggested solution useful? Support 💗 Sudonix with a coffee
If your organisation needs deeper expertise around infrastructure, security, or technology leadership, learn more about Phenomlab Ltd. Many of the deeper technical guides behind Sudonix are published there.

Related Topics
  • 4 Votes
    3 Posts
    385 Views
    thanks @DownPW ! this is definitely very helpful.
  • Nodebb and emails

    Solved Configure nodebb
    27
    5 Votes
    27 Posts
    5k Views
    @Panda it will use SMTP. In all cases, I never use any plugin to send email. I’ll always send it raw.
  • Smart Widgets

    Solved Configure nodebb
    9
    3 Votes
    9 Posts
    2k Views
    @Panda said in Smart Widgets: So why is that, or conversely why would the function to expose username ever be required, as it seems app.user is already an available global object? It is, yes, but not if you are using it outside of a widget. The function I wrote is also historical and comes from the 2.x train
  • NodeBB: Upgrading to NodeBB v3.x

    Solved Configure nodebb v3.x
    6
    0 Votes
    6 Posts
    2k Views
    @mventures You’d need to connect to the server and execute it directly - not on your local terminal. Review the guide below, which will show you how to gain access via SSH to your server https://docs.ovh.com/gb/en/dedicated/ssh-introduction/ Once you have access, you’ll need to navigate to the actual folder where NodeBB is installed You’ll then need to change to the directory as shown below /home/unbuntu/nodebb [image: 1680448167972-fdffe673-bf63-4b6d-a728-5506fddc1aff-image.png] In most cases, initial access takes you to the root of the file system. You can always issue pwd in a Linux terminal which will show you the Present Working Directory. From there, you can issue the command cd /home/ubuntu/nodebb Once in the NodeBB directory, you’d use the below commands ./nodebb stop git fetch && git checkout develop && git reset --hard origin/develop ./nodebb upgrade ./nodebb start Line 1 stops the NodeBB instance Line 2 gets the latest files from GIT (repository) and then checks out the development branch. It then resets the version you are using to the development branch ready for v3 Line 3 Runs the upgrade once the new branch is set, and code pulled Line 4 Restarts the NodeBB instance after the upgrade has completed Note that when you restart NodeBB and log back in, things will look very different to what you had in v2.
  • [NODEBB] Help for my custom CSS

    Solved Customisation nodebb css bugfix
    237
    49 Votes
    237 Posts
    100k Views
    @baris said: You should change your selectors so it doesn’t look at the entire document. You probably only want to apply fancybox to stuff inside the #content element which is what changes when the user navigates around the page. So use $('#content a').... for your selectors then the forum logo in the header won’t be selected. I modified the JS Fancybox code now and this code and it seem better // --------------------------------------------- // Fancybox Media Reader (Without Website Logo) // --------------------------------------------- if (top.location.pathname !== '/login') { $(window).on('action:posts.loaded', function(data) { console.log("Polling DOM for lazyLoaded images to apply Fancybox"); $(document).ready(function() { $('#content a').not('.forum-logo').not(".avatar").not(".emoji").not(".bmac-noanimate").each(function() { $('#content a[href*=".jpg"], #content a[href*=".jpeg"], #content a[href*=".png"], #content a[href*=".gif"], #content a[href*=".webp"]').addClass("noanimate"); }); }); }); } if (top.location.pathname !== '/login') { $(document).ready(function() { $(window).on('action:ajaxify.end', function(data) { $('#content a').not('.logo').not(".avatar").not(".emoji").not(".bmac-noanimate").each(function() { $('#content a[href*=".jpg"], #content a[href*=".jpeg"], #content a[href*=".png"], #content a[href*=".gif"], #content a[href*=".webp"]').addClass("noanimate"); data.preventDefault() // Strip out the images contained inside blockquotes as this looks nasty :) $('#content blockquote img').remove(); }); Fancybox.bind( '#content a[href*=".jpg"], #content a[href*=".jpeg"], #content a[href*=".png"], #content a[href*=".gif"], #content a[href*=".webp"]', { groupAll: true, } ); }); }); } // Chat fancybox - fires when chat module loaded and AJAX calls new chat $(document).ready(function() { $(window).on('action:chat.loaded', function(data) { // >>> Se limiter au contenu principal uniquement <<< $('#content img').not('.forum-logo').not(".avatar").not(".emoji").not(".bmac-noanimate").each(function() { var newHref = $(this).attr("src"); $(this).wrap("<a class='fancybox' href='" + newHref + "'/>"); $('#content a[href*=".jpg"], #content a[href*=".jpeg"], #content a[href*=".png"], #content a[href*=".gif"], #content a[href*=".webp"]').addClass("noanimate"); data.preventDefault(); // Strip out the images contained inside blockquotes as this looks nasty :) $('#content blockquote img').remove(); }); Fancybox.bind( '#content a[href*=".jpg"], #content a[href*=".jpeg"], #content a[href*=".png"], #content a[href*=".gif"], #content a[href*=".webp"]', { groupAll: true, } ); }); }); For the logo, I must use overflow: visible !important; on [component="brand/logo"] /* --- Logo --- */ [component="brand/logo"] { max-height: 50px; width: auto; height: auto; max-width: 100%; display: block; object-fit: contain; object-position: left center; overflow: visible !important; } Better result !!
  • [NODEBB] Welcome Message

    Solved Customisation css html nodebb
    20
    2
    13 Votes
    20 Posts
    6k Views
    @DownPW the ‘js’ code for the banner takes the time from the client, so what it displays really depends on the regional settings for the operating system. I’ve not seen this issue myself but would like to see some examples of screenshots if possible.
  • nodebb dropdown menu

    Solved Configure nodebb
    5
    1
    0 Votes
    5 Posts
    2k Views
    @phenomlab said in nodebb dropdown menu: @kurulumu-net You set it like the below example taken from this site [image: 1637939951821-aae36790-3257-4bb2-ad5a-0d744309876a-image.png] Which presents this [image: 1637939983445-77f47260-2941-4afe-9614-8e17dcfc8c19-image.png] Very interesting… I actually thought this wasn’t possible, as I remember it being asked in the NodeBB forum. Is this something new that’s been implemented? I’ll 100% be doing that when I’m on the laptop over the weekend.
  • Iframely (Nodebb)

    Solved Configure
    40
    4 Votes
    40 Posts
    9k Views
    @DownPW This is now resolved. The issue was an incorrect URL specified in the Nodebb plugin. I’ve corrected this, and now it works as intended.