Jump to content

Kiwi Chris

Members
  • Posts

    272
  • Joined

  • Last visited

  • Days Won

    4

Kiwi Chris last won the day on April 11 2022

Kiwi Chris had the most liked content!

Profile Information

  • Location
    New Zealand

Recent Profile Visitors

3,502 profile views

Kiwi Chris's Achievements

Sr. Member

Sr. Member (5/6)

409

Reputation

  1. I think this might not be too hard to implement. Currently there's just \site\templates, but if there were something like site\[theme]\templates, then it would be possible to have multiple versions of templates. This could be potentially useful during development to test out a new theme while retaining the existing one, and if it were linked to roles so it's possible to specify what theme a given role uses, it would make it easy to provide completely different looks for different users. It could allow A/B testing with users to determine design preferences. This would also be useful in a multisite scenario if different sites use common backend templates, but use a different theme to present on the frontend.
  2. Something that I might find useful would be database abstraction so that it's possible to use more than one database engine. mySQL/MariaDB works fine in the majority of cases, but there are times where licensing or functionality means that an alternative database engine would be preferable. The two that I have an interest in are PostgreSQL and Microsoft SQL Server with each of these having scenarios where I find them a better fit than mySQL/MariaDB. Although not something that would result in a new version, improved documentation is another big one. Lots of great features have been added to ProcessWire over the years, but some of them lurk here in forum posts, or PW Weekly, rather than having everything in the main documentation site. Same applies for ProFields. It would be nice to have all documentation in one place.
  3. @adrian I've checked and yes it seems to be to do with the settings tab. Sorry, didn't think to check that. Looks like it's a core issue.
  4. I seem to have found a bug in this module. When installed, clicking save on a locked page saves changes, but when not installed, an alert 'This page is locked for edits' displays as expected.
  5. Umbraco: https://our.umbraco.com/ I've actually used it in the past for someone who was on Microsoft stack. It's C# ASP.Net based so different tech stack to ProcessWire, but I found it not too different in many respects, and it didn't take me long to get my head around how to make it work. Like ProcessWire it doesn't make any assumptions about how you want to structure your data or format output, and has a good permissions system built in. It also has pretty good documentation. Where I find ProcessWire easier, is with regard to updates and installing new modules. Also Umbraco Forms is way more expensive than FormBuilder. Umbraco does have an integrated editor for modifying code for templates and partials inline, so although an editor or IDE is preferable, you don't have to have one to set up an Umbraco site. I don't know how the two compare performance wise. ASP.Net Core is meant to be pretty fast. I actually do quite a bit of ASP.Net work, especially now it's cross platform and I can host on Linux, although mostly I don't use a CMS at all, as it's pretty quick to build CRUD database access and authentication with built-in libraries, and with HTMX I can easily build a fast admin UI without having to mess around with frontend frameworks.
  6. I don't have a link, but some bullet points of things I like about it. Clear separation between data and presentation layers (but doesn't force you into a SPA or operate as a headless CMS although you can do that with it if you want). Excellent permissions management system at both template and individual field level. Simple object model - everything is a 'page' with 'fields' - (similar to Drupal's nodes, but without the baggage). Great admin UI for no code creation of pretty much any kind of structured data. Actively developed third party migrations module (RockMigrations) that lets you mix and match visual and code based development of object definitions. Excellent third-party debugging tool, TracyDebugger Easy to learn API (I managed to understand the basics of it within half an hour - Drupal and WordPress by comparison, I was still scratching my head after quite a few hours.) Secure Fast Things people might not like about ProcessWire: You're unlikely to be able to build a website with one-click install. There are some site profiles that may suit some scenarios, but the whole point of ProcessWire is that it doesn't second guess you and force its opinions on you. ProcessWire's only area where it is somewhat opinionated is how it stores and structures data at the SQL level. Currently it only supports mySQL/MariaDB, and normally each field has its own table in the database, although ProFields modules Table, and Combo allow more traditional database table structures. It's also relatively easy to build custom fieldtype modules with their own database schemas. Version/source control: If you don't use a third party module like RockMigrations, syncing data changes between development and production with a team of developers might be complicated. (Actual output templates are no problem)
  7. @MarkE yes that would be handy. I assumed a module would be necessary, just wasn't quite sure what to hook into.
  8. Sounds like a useful module. Could this help with a related issue to locks I've had in that in ListerPro (or other places), I've wanted to have locked pages, but allow users to duplicate them? Imagine a scenario where someone has repeat orders and wants to make new orders that are very similar to previous ones with a few changes, so they should be able to duplicate an existing order, but not change it. I'm fine with changing the lock status via api on creation of the duplicate, but I've struggled with enabling the icon to click to allow copying a locked page.
  9. That's weird, site loaded fast for me with cache cleared (ie under a second). I have had some periodic issues with warnings about high server load that I haven't been able to identify yet. It might be another site that's causing performance issues and slowing the server down temporarily. There are only a handful on the server, and most are tiny, but thanks for the heads up. I'll see if I can get to the bottom of it.
  10. I did something similar to this with a website for a photography club. In this case the equivalent of your projects would be competition entries. I wrote a custom dashboard module for this and hooked into ready.php to prevent display of the normal page tree for normal admin users, used AdminRestrictBranch, and ListerPro from a link in the dashboard module, so users could list, edit, and create just pages that belonged to them.
  11. @ryan this is a bit of an old thread, but I never came up with a solution. Any suggestions? I tried a hook in ready.php but it doesn't seem to do anything. Not sure if I'm hooking the right event? /** * Prevent clients from unlocking BOMS as they need to have 'unlock' permission in order to be able to use 'copy' permission. */ $wire->addHookAfter('Pages::statusChangeReady', function ($event) { $currentPage = $event->arguments('page'); $user = wire('user'); if ($currentPage->template == 'bom' && $currentPage->isLocked() && $user->hasRole('client')) { $this->exit(); } });
  12. This is the experience I had. In the end I gave up and arranged alternative hosting. It seems other people had similar problems, and I wasted far too much time trying to get it to work. I double checked and found that I could run ProcessWire fine with Nginx on my local development environment but Azure App service wouldn't properly handle the nginx config.
  13. I'm using a fork of this module by @kixe so not sure if this issue exists in other versions of the module or not, but I'd be interested to know, and a suggested fix if it does: My problem is that if someone accesses one of the multisite domains, that loads fine, however it seems that if you do enter an address like: www.site1.com/www.site2.com it will load any other site as a sub-url of the first domain entered rather than redirecting, because technically every subsite is just a subpage of home, but the module code handles redirecting so that a subsite home page loads instead of home. What should happen if someone enters www.site1.com/www.site2.com is that it should redirect to www.site2.com
  14. I just read this after I got home from Saturday morning netball with my 11 year old daughter. Sounds like ProcessWire kids are a thing. ?
  15. Have you seen this: https://github.com/momentum81/php-remove-unused-css It's incomplete, hasn't been updated in a while, and won't remove all unused CSS but might still achieve some reduction in CSS size.
×
×
  • Create New...