Jump to content

Adam Kiss

Moderators
  • Content Count

    1,303
  • Joined

  • Last visited

  • Days Won

    7

Adam Kiss last won the day on September 26

Adam Kiss had the most liked content!

Community Reputation

600 Excellent

About Adam Kiss

  • Rank
    Master of the universe

Contact Methods

  • Website URL
    http://adamkiss.com

Profile Information

  • Gender
    Male

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Not a problem — I create (and/or manage) around 20-25 sites a year. These are tiny, 1-5 page promo sites, all with bespoke, one-off design, and are either fully static, or connecting to a single "registration" system (which is atm running aforementioned PW). 90% of these are for an event, or an event series, so they start, last a while, and end anywhere between two months and half a year. I'm the only person editing them, and most of the edits happen straight in code. ATM, they are 99% built on Eleventy - https://11ty.io, and the fully static ones are built and deployed via Netlify, and the ones which are connecting to the registration system (via tiny bits of PHP) are deployed from the Github CI/CD to our own servers. I also (actually started this year) created/manage few long-term sites, which I've build on Kirby — It's basically a spiritual brother to ProcessWire, but fully file based, so it fits my development process better - I can sync the website up and down fully with git, without any need for managing the database. As for the system itself, I'll write up a blog post about it (probably) when I finish it, so I can post it here / send it to you later, but the short of it is I'm moving it to Laravel due to builtin support of PostgreSQL, queues and testing, and the rewrite will allow me to introduce a couple of design changes to overall system, which would actually be possible with PW as well (probably…), but if I'm going for a rewrite, I might as well go full rewrite.
  2. @pwired — there was a time when I'd agree with you, but there are quite a bit of options for I ❤️ PW devs out there - for flat file CMS at least. So in the end I'd say that ProcessWire and its community are better served by focusing at its one thing.
  3. Yo Ryan and everyone, I don't use ProcessWire anymore for new stuff — the size and scope of the projects makes using a database nonsense — but there is one half internal system that happily chugs along, for 7 years now (I think? Maybe 8 years?) Latest page ID created was 38047 😎 So, thank you for everything — mostly for keeping my job while "new system" isn't happening 😄
  4. Hey everyone searching for this topic — if you're using Let's Encrypt with URL validation, don't forget to replace the part blocking dotfiles location ~ /\. { deny all; } With block denying everything BUT .well-known location ~ /\.(?!well-known).* { deny all; }
  5. Bootstrapping means 'require'-ing ProcessWire website from elsewhere, like this: <?php require_once '/absolute/path/to/your/PW/site/index.php'; foreach( \ProcessWire\wire('pages')->get('/')->children() as $ch ) { echo "{$ch->title}\n"; } I've just tried this so I won't lie to you: I literally just created this in in my home directory, ran it in terminal with PHP and got a list of page titles in the console. So by writing your own importer, people mean something like this: <?php require_once '/path/to/processwire/index.php'; $wire = \ProcessWire::wire(); // get stuff you want to import $articlesToImport = \OldCMS\DB::query($oldSiteDB, 'select * from articles join whatever'); // iterate over it and create pages for it foreach($articlesToImport->next() as $oldArticle){ $newArticle = new \ProcessWire\Page(); $newArticle->template = 'article'; $newArticle->parent = $wire->get('/articles/'); $newArticle->title = $oldArticle->get('title'); $newArticle->body = $oldArticle->get('html'); $newArticle->save(); } And that's it. You've just imported some articles from your old CMS to your brand new ProcessWire installation. Of course, on "real" pages you'll want to think about this for a bit; Maybe create pages for authors first, some categories, some tags, and then maybe add the pages in parts, so you don't timeout mid-import, or turn off timeout.
  6. You know, I've encountered Suhosin three times on various shared hostings so far — and it was always interfering with running websites we put there. "Suhosin, premiere tool for misconfiguration of PHP."
  7. Adrian, sorry, I don't even remember what project this was I've tried to go through some of my past projects, which could have been it, but I haven't found anything. New thread with wha you need might be better way to be lazy
  8. Adam Kiss

    New Logo

    Details please! So, what motor does have it? Model? Color?
  9. No 'real benchmarks' as in repeated tests on X different scenarios. Original usecase (and one measured) is a template listing shop items — ~40 products — where only difference in the rendered HTML is an input value - which is either default '0' or anything else picked up from $post or session. It's a rather slow server, but load time for that page dropped from ~2.5s to ~450ms, which is the same as template caching (roughly), but usable on every page load, not only the first one. I use MarkupCache (which in turn uses the same caching mechanism as the template-level caching), so there is maybe three or four function calls 'overhead' versus the template-level caching — which is nothing (I might be wrong, haven't been digging in that code lately). --- There is a number of improvements I would like to make, but was working on a different projects lately.
  10. Or, you could use my page render cache. https://github.com/adamkiss/PageRenderCache/blob/master/README.md
  11. I don't think there is anything simple to diff database vs the dump; (additionaly, if you do the diff dump only, you'd then have to diff database versus set of dumps… yeah.)
  12. Number 15. Above the symfony author. http://www.cloudways.com/blog/php-influencers-to-follow/
  13. vagrant (+ virtualbox) + git is pretty encapsulated vagrant streamlines the process of generating virtual machines to develop on, by providing 'prepackaged' virtual images + options to include other provisioning software (like puppet, chef, etc.). Some use Vagrant VMs as 'apps', meaning that each project has its own virtual machine, some other people have one VM for multiple sites (a la *AMP software). In your case, you could have your site versioned in git, together with your mysql dump and Vagrantfile (vagrant 'recipe' for your vm), and when you come to new machine, you'd do something like 'git clone project && cd project && vagrant up', go have a coffee, come back and start working. (of course, it's never quite that simple IRL , but in gist vagrant is quite nice. I am in the process of setting up local vagrant from clean ubuntu + serverpilot.io over vpn. fun times)
×
×
  • Create New...