Test Drive & A Few Little Questions

Ask for help or provide support to other members.
OneManLaptop
Developer
Posts: 68
Joined: Tue Mar 16, 2021 3:29 pm

Test Drive & A Few Little Questions

Post by OneManLaptop »

Hey there, first off, what a wonderful little CMS this truly is. :D

For ease of use and installation there really is nothing that comes close. I've been taking a few CMS systems out for a spin recently and whilst they're all commendable in their own ways, the time between download and installation with this was next to nothing compared to some of the alternative offerings.

Anyway, I've installed Summernote and the Blog and I'm all set to build my project around it... a few quick questions which might spare me some time.

1: Will I be able to use my own booking form solution as I'm rather heavily invested in PHP Mailer (https://github.com/PHPMailer/PHPMailer) and I'd like to continue using it... should that be a problem?

2: Images are a strange beast with this CMS, haha. I uploaded a few to the blog and I didn't see anywhere to add alt text and then I saw it was creating these massive base64 strings! I take it this is default behaviour and I can't change things to just work with files? There's no integration with srcset or anything like that I take it?

3: Was there a shop plugin? I'm sure I read about one but I can't seem to find it, has it been removed?

4: When I first log in, it does seem to take a very long time to check for updates, between 30 seconds and a minute, is that normal, is there any way to change this to check once a month or something? As a dev it's fine but I'm worried my clients will get the hump if they're regularly updating and have to wait for an extended period on every daily login.

5: For the blog, I'm having some choppy results adding images in the description, sometimes it works fine, other times it seems to scramble the html and I find the image is stuck outside the description block. Funnily enough I've just tested it now with a few articles and all seems stable, but if you can offer any insight into why that might be happening, I'd be happy to hear from you.

6: Any chance of having an option to add tags to the blog? I was hoping I could use meta keywords as a means of working with tags, but for blog articles, it doesn't seem possible.

Anyhoo, that's quite enough to be getting on with and I'm genuinely grateful for the work you do with this CMS as it does appear to be well supported and robust, laser focussed on what it wants to achieve and achieving it well. I promise I'll buy a T-Shirt if it proves to be a match for my project, haha.

Thanks.

User avatar
wiz
Admin
Posts: 749
Joined: Sat Oct 30, 2010 12:23 am

Re: Test Drive & A Few Little Questions

Post by wiz »

Hey OneManLaptop, it's nice to see some active people around here :) welcome

I'll try to briefly answer your questions:

1. I don't see any reason why you would have any issues.

2. Drag and dropping images to the editor basically base64 encodes them. To solve this, you can either use the file uploader and include the files manually. (Someone was working on implementing the file selector within Summernote though:).

3. There was a jQuery shop, but it had some security issues (as it had some unprotected files that could be accessed directly as far as I remember). I would love to see something happen out of it.
- Link to authors shop: https://github.com/dudulxyz/wcms-shop

4. This is noted, maybe if we find some middle ground and at least make it weekly? :) What do you think?

5. Is there any chance you could provide steps to reproduce? (What OS and browser are you using?)

6. Why isn't it possible, could you please describe the issue in more detail. I remember some time ago I prepared exactly this but can't seem to find it at the moment.

Take your time and enjoy WonderCMS, feel free to criticize and/or contribute. Appreciate your feedback!
Have a warm welcome :)

OneManLaptop
Developer
Posts: 68
Joined: Tue Mar 16, 2021 3:29 pm

Re: Test Drive & A Few Little Questions

Post by OneManLaptop »

Thanks for the response Wiz.
wiz wrote:
Sat Mar 20, 2021 6:17 pm
Hey OneManLaptop, it's nice to see some active people around here :) welcome

I'll try to briefly answer your questions:

1. I don't see any reason why you would have any issues.
That's grand, I'll give it a go then. The reason I asked is I had an aborted attempt at using Site Cake originally. Brilliant in many ways, but it didn't play nice with PHP and the fixes I had to write became so ludicrous that I decided to just abandon the project in the end. I think your approach of storing the content separately might be a bit more robust in that respect.

I am curious as to how big those JSON files can get before they start to be a drag on performance though? I'm going to make a point of learning JSON though, it doesn't seem particularly terrifying and has a lot of utility.
wiz wrote:
Sat Mar 20, 2021 6:17 pm
2. Drag and dropping images to the editor basically base64 encodes them. To solve this, you can either use the file uploader and include the files manually. (Someone was working on implementing the file selector within Summernote though:).
Yeah, Summernote integration would be great, in fact having the whole process (drag image -> auto uploads -> auto embed -> set alt text) would be great too. I'm just thinking of the easiest way my clients could populate a gallery without having a monstrous amount of base64 code filling the JSON file and having an actual file with useful meta data src set and all that good stuff available.
wiz wrote:
Sat Mar 20, 2021 6:17 pm
3. There was a jQuery shop, but it had some security issues (as it had some unprotected files that could be accessed directly as far as I remember). I would love to see something happen out of it.
- Link to authors shop: https://github.com/dudulxyz/wcms-shop
Ah okay. I've been looking at Snipcart but was just wondering if there was a native option. Snipcart should be a good fit with Wonder CMS though.
wiz wrote:
Sat Mar 20, 2021 6:17 pm
4. This is noted, maybe if we find some middle ground and at least make it weekly? :) What do you think?
Even better, background check if there's an update on every login, if there is then add the update overlay forcing users to update before they carry on? I'm new to the CMS so I'm not sure if you're pushing out updates weekly, but the more that stuff is in the background I think the happier clients will be. Failing that I'll take weekly over daily of course, but as I say, if there's a way to push the process a little more into the background, then all the better.

Oh and I've had a few instances of the update overlay not appearing on login too. It just seems to hang which is weird as I assume it's doing the update check but clients might just assume the site is broken.
wiz wrote:
Sat Mar 20, 2021 6:17 pm
5. Is there any chance you could provide steps to reproduce? (What OS and browser are you using?)
Yeah, I've had it just now. Uploaded a photo, then added text underneath and what seems to happen is the H1 tag gets all sorts of messed up and the description text jumps out of place and even the blog entry ends up at the bottom of the blog entries.

I've sent you a screen grab and some files to you hi@wondercms.com address for you to take a look at.
wiz wrote:
Sat Mar 20, 2021 6:17 pm
6. Why isn't it possible, could you please describe the issue in more detail. I remember some time ago I prepared exactly this but can't seem to find it at the moment.
When creating a blog entry, there doesn't appear to be any opportunity to add a description or keywords?
wiz wrote:
Sat Mar 20, 2021 6:17 pm
Take your time and enjoy WonderCMS, feel free to criticize and/or contribute. Appreciate your feedback!
Have a warm welcome :)
Thanks. :)

Well above all it does what it says on the tin, so I'm really happy to have found it. Aside from the issues mentioned, there's only one deal breaker which I've really run up against today after working with it for the afternoon. It's great that your work is saved regularly, but today I was editing a blog entry and tried to change the paragraph direction, only for the button press to be ignored as the "saving" overlay dropped, cutting off my click.

Does WCMS really save your work on every new click outside of the text area it registers? Regular saving is great, but I'd prefer a more discreet notification, something akin to the small Facebook bubble which drops from the top of the screen to indicate the page is loading new content. Having a full screen saving notification regularly flash up and actually interfere with editing would stop me deploying WCMS on a client site.

Thanks for listening and speak soon. :)

User avatar
wiz
Admin
Posts: 749
Joined: Sat Oct 30, 2010 12:23 am

Re: Test Drive & A Few Little Questions

Post by wiz »

That's grand, I'll give it a go then. The reason I asked is I had an aborted attempt at using Site Cake originally. Brilliant in many ways, but it didn't play nice with PHP and the fixes I had to write became so ludicrous that I decided to just abandon the project in the end. I think your approach of storing the content separately might be a bit more robust in that respect.
I would be interested to know what was the issue. I'm a huge fan of other CMSes and seeing them develop.
In regards to how big the database can get before it get's sluggish, we did some stress testing a few months ago, and I recall it being around a few MBs, but wouldn't recommend it for large usages though.

That's why for example, the blog plugin creates it's own database file.
JSON isn't terrifying at all, neither is WonderCMS, as it's really really tiny.

> Yeah, Summernote integration would be great, in fact having the whole process (drag image -> auto uploads -> auto embed -> set alt text) would be great too. I'm just thinking of the easiest way my clients could populate a gallery without having a monstrous amount of base64 code filling the JSON file and having an actual file with useful meta data src set and all that good stuff available.
Great suggestion, added this to the GitHub thread for the Summernote file uploader list integration: https://github.com/robiso/wondercms/issues/125

> Ah okay. I've been looking at Snipcart but was just wondering if there was a native option. Snipcart should be a good fit with Wonder CMS though.
Opened another plugin/feature request for this on Github: https://github.com/robiso/wondercms/issues/233

> Even better, background check if there's an update on every login, if there is then add the update overlay forcing users to update before they carry on? I'm new to the CMS so I'm not sure if you're pushing out updates weekly, but the more that stuff is in the background I think the happier clients will be. Failing that I'll take weekly over daily of course, but as I say, if there's a way to push the process a little more into the background, then all the better.

This might be more challenging than it seems. We don't push updates that often, mostly monthly, as we have anywhere from 3 to 15 releases per year. The daily update is just a "safety net" to show the update to users if we get a report of a critical vulnerability.
Since your WonderCMS is almost completely detached, except for few libraries served for admin through CDN (such as the wcms.min.js and wcms.min.css and some additional ones for auto sizing textareas if there is no editor, and a tab support library).

Since PHP reads the index.php for the version, then compares it to the version on GitHub. If the versions are different, then the popup shows up.
This is a really simple update mechanism. For example, when there's a new update, we just change the index.php on GitHub and bump the version file for 1 higher number. This then triggers the update window when PHP checks those versions.

I'll check with Slaven if this could be moved in any way to the background. I'll also pin this thread since it contains some valuable suggestions.

I'll try to check out the blog issues, the keywords and description is coming with next release, it's something in the works.

And content isn't always saved - only if something has changed. But there's a little catch, if it contains some special characters, it will always save, as it does some enconding for the database.js file.

I hope I didn't miss anything above, please point it out, it's pretty late here. :)
Thanks again for your input.

OneManLaptop
Developer
Posts: 68
Joined: Tue Mar 16, 2021 3:29 pm

Re: Test Drive & A Few Little Questions

Post by OneManLaptop »

Hey Wiz, I've become neck deep in another project and haven't had time to respond properly, but I just wanted to thank you for your insightful responses above. Above all I really do want you to know it's a great, clever project which ticks a lot of boxes for a lot of people. I'm not too hot at the back end, but I do have over fifteen years experience working directly with small business owners who want to maintain their own website, so I do have a pretty good idea of the expectations (and limits) that sort of person has when trying to maintain their own website via a CMS, so if I can offer some of that experience in helping to steer Wonder CMS, then I'm happy to do so. Speak more later and thanks again for the obvious commitment you have to this project and the people using it. :)

User avatar
wiz
Admin
Posts: 749
Joined: Sat Oct 30, 2010 12:23 am

Re: Test Drive & A Few Little Questions

Post by wiz »

Would love to hear your opinion and possibly implement changes. :) Any preferences on the communication channel?

I've been also pretty busy with work, and will also check the attachments you sent us last time, apologies for the late response time.

OneManLaptop
Developer
Posts: 68
Joined: Tue Mar 16, 2021 3:29 pm

Re: Test Drive & A Few Little Questions

Post by OneManLaptop »

Hey Wiz, quick question. Is there an easy way to detect when the Wonder CMS website is in editing mode? Ideally, I'd like to add a class to the root so I can change a few CSS elements on the website to make it clearer when clients are editing the website. I'd also like to only load Bootstrap when the site is in editing mode as my base website doesn't use it and it seems a very inefficient use of resources to force visitors to have to load the whole Bootstrap framework when it's literally only being used for when the site is in editing mode. Any hints, suggestions or even solutions would be appreciated. :)

Oh and also, I've been having a snoop on the Summernote editor website. It seems I'm not the only person concerned about the way Summernote handles images. There's a few ways to switch Summernote to using files, which I'd really love to see implemented in WCMS:

https://a1websitepro.com/store-image-up ... t-base-64/
https://github.com/tomaac/summernote-ajaxfileupload

Oh and whilst I totally see why you've gone with Summernote, on my travels I found an alternative which I'd certainly take a look at. It seems to function similarly to Summnote but has no dependencies and works natively with JSON, it's called Editor.js (https://editorjs.io) and is in very active development with a wealth of plugins available and supported. Certainly worth a look at least.

After some time away from WCMS, I'm resuming work on trying to get an existing website running on WCM and so far it's going really well, quite painless actually I'm really pleased. Thanks again and speak later. :)

User avatar
wiz
Admin
Posts: 749
Joined: Sat Oct 30, 2010 12:23 am

Re: Test Drive & A Few Little Questions

Post by wiz »

Hey OneManLaptop.

1. For adding an class to body, you could try something like:

Code: Select all

<body class="<?php if ($Wcms->loggedIn === true) : ?> yourClass <?php endif ?>">
This will append a class, if an user is logged in and editing is only active when logged in.
WonderCMS doesn't require bootstrap to work at all, and if you'd like to hide it for your visitors, something similar to above should work.

2. Example for a simple change in theme.php

Code: Select all

<!-- Theme CSS -->
<?php if ($Wcms->loggedIn === true) : ?>
	<link rel="preload stylesheet" as="style" href="<?= $Wcms->asset('css/style.css') ?>">
<?php endif ?>
- You can replace the above theme CSS with the bootstrap you have, and it won't be loading for your visitors at all.
I ran this for a quick test and it works as expected.

Slaven and I tried fixing the Summernote file uploader + selector a few weeks ago, but we ran out of time as we focused on polishing the upcoming 3.2.0, which will come with some additional speed improvements and submenus (for themes that will support it).
Really happy you're digging into WCMS and enjoying it :) I'll gladly take a look at the Editorjs - appreciate the suggestion.

On Summernote and how it handles images, once we implement the uploader again, it should not be converting them to base64 (which is their wanted behaviour) - unless you drag and drop them. Don't feel your concerns are going unnoticed :)

OneManLaptop
Developer
Posts: 68
Joined: Tue Mar 16, 2021 3:29 pm

Re: Test Drive & A Few Little Questions

Post by OneManLaptop »

That's fantastic, thanks a lot. :)

I've just made a small donation to Wonder CMS to say thanks for your commitment to the software. It should fund a few takeout meals and drinks when you're burning the midnight oil on this project, haha. I'm currently being squeezed between two urgent projects but when things are a little calmer, I'd love to create a theme for WondeCMS. Keep up the great work and I'm really excited for future development.

User avatar
wiz
Admin
Posts: 749
Joined: Sat Oct 30, 2010 12:23 am

Re: Test Drive & A Few Little Questions

Post by wiz »

Thank you for the amazing support. We've taken the liberty and added you to our donors section (https://wondercms.com/donors). We added a new section "last donor :). A part of the donation will be to further donate for cancer research and leave some for hosting costs and paying development (since we sometimes hire someone do to a harder part of the project "properly").

Donations these days are a rarity, which makes this even more special. :)
I'm personally really excited of what is to come. To many more years of WonderCMS-ing and to an amazing start of Monday.
Thank you again!

Post Reply