Jump to content

Recently Updated Topics

Showing topics posted in for the last 7 days.

This stream auto-updates

  1. Past hour
  2. Hello again! The new AppApi release v1.4.0 is live now! Changes in 1.4.0 (2025-11-01) Add compatibility for ProcessWire instances installed in a subdirectory (Thank you @saerus for mentioning this issue) Add helper functions that can manipulate subdirectory links. -> Can be very handy for using ProcessWire as a headless CMS for your JavaScript applications (See FAQ for more information) Add config param to disable automatic adding access control headers (Thank you @gerritvanaaken for the ticket) Fix an issue where adding trailing slashes automatically lead to problems with route parameters (Thank you @gingebaker for the ticket) Thank you all for using AppApi, leaving feedback and for posting Github Issues and PRs. Thanks to you, the module keeps getting better and better.
  3. Today
  4. I was asked if I could help my daughter's track and field club organize a database with all the results throughout the club's history. My response was of course: I'll fix it with PW. After digging into the subject a bit, I realize that I will need "Fractional Seconds in Time Values" for the race results. Is this something that could be added to the date/time field type or is it better to create a separate field type for this purpose? https://w3c.github.io/opentrack-cg/spec/model/#time https://dev.mysql.com/doc/refman/8.4/en/fractional-seconds.html
  5. Always wanted those on Page. Even before custom classes existed. Great addition! I thing that custom classes truly need more introduction and use cases. So eagerly waiting for Ryan's upcoming blog post.
  6. Yesterday
  7. Hi ausblick, I'm happy to answer your questions. Basically, these are topics that for the most part don't specifically concern PAGEGRID, but rather ProcessWire in general. In ProcessWire, site profiles are essentially preconfigured starting points for a new site. They define the structure, templates, fields, and sometimes demo content that get installed when you first set up ProcessWire. Unlike themes in WordPress, which can be changed later, site profiles are installed together with ProcessWire when you first setup the site and can't be changed later. PAGEGRID supports the creation of site profiles, and there are currently two smaller PAGEGRID profiles that can be installed (click the thumbnail to see the frontend). However, these are currently only available in PAGEGRID Cloud. If you want to try them quickly, you can create a free cloud account. Cloud sites can then also be exported as a site profile (with a self-hosting license). But I can also upload them here as ZIP archives if you prefere. For my projects I usually don't use site profiles. Since PAGEGRID allows you to install pre-built blocks (which create all the templates and fields for you), it's already a good starting point for a new website. All you have to do is add the blocks you want to your page and design them using the style panel (visually) or with CSS code. Since my websites usually look very different from each other, I prefer blocks that are largely unstyled by default. Yes. Procache works with PAGEGRID. But it is not really needed since PAGEGRID is already using markup cache for all it's output. If you build a site that is mostly rendered through PAGEGRID it will be very fast out of the box, without any additional customisation. E.g. page-grid.com which is build with PAGEGRID has a performance score of 100 (best score) in Google lighthouse speed test and is not using any additional caching. First you have to add a PAGEGRID field to your home template inside the admin. Then open the file home.php inside your site/templates folder and add the following lines: <div id="content"> <?= $pagegrid->styles($page); ?> <?= $pagegrid->renderGrid($page); ?> <?= $pagegrid->scripts($page); ?> </div> Note in this example I am using the blank site profile and markup regions are enabled. The #content div in this file will replace the #content div in _main.php See the Markup Regions documentation for more information.
  8. @ryan, You'd mentioned at some point that existing installs could retain the old theme and perhaps users prompted to update to the new one. At the moment if I upgrade an existing site to the dev branch, the new theme is enabled by default. This breaks any custom TinyMCE styling as the new theme overrides it. Are you planning to implement this prior to the next master version? Ideally for us, given we have several hundred sites which we update to the latest master when it is available, nothing would change for the users. We could then turn on recommending a theme upgrade on a per site basis, or if we choose to, force the upgrade on the users. Cheers, Chris
  9. Hi, being french, you can imagine that most my websites are multinlingual 🙂 and i alwys use this kind of language switcher foreach($languages as $language) { if( ! $page->viewable($language) ) continue; $url = $page->localUrl($language); $iso = $language->name == 'default' ? 'fr' : $language->name; // use your own default language instead of fr... if($language->id != $user->language->id) { echo '<a hreflang="' . $iso . '" href="' . $url . '" title="' . $language->title . '">' . $iso . '</a>' . "\n"; // echo '<a hreflang="' . $iso . '" href="' . $url . '" title="' . $language->title . '"><img src="/site/assets/img/' . $iso . '.svg" alt="' . $language->title . '" /></a>' . "\n"; // echo '<a hreflang="' . $iso . '" href="' . $url . '" title="' . $language->title . '">' . $language->title . '</a>' . "\n"; } else { echo '<span>' . $iso . '</span>' . "\n"; // echo '<span><img src="/site/assets/img/' . $iso . '.svg" alt="' . $language->title . '" /></span>' . "\n"; // echo '<span>' . $language->title . '</span>' . "\n"; } } and never ran into the issue you describe whether the urls are ...com/toto and ...com/en/toto or ...com/fr/toto and ...com/en/toto (in this case you have to give a name -the name you gave you default language- to the homepage, not the preferred way tu use pw but it works if necessary) the two important things are the use of $url = $page->localUrl($language); like @monollonom says and the line where $language->name is defined for the default language in case it may help 🙂 have a nice day
  10. Awe-inspiring website! I loved that you demod the backend as well. Kudos to the team!
  11. Last week
  12. You can have a Look a the findRaw function: https://processwire.com/api/ref/pages/find-raw/
  13. Great news, I've a couple of old sites where I'm still using this module. Thank you @matjazpfor taking care!
  14. Hello @perplexed Are you sure that you have added this method to the WireMail object and not to the form object? I have tested it without problems. Please take a look here at the example of a simple contact form and let me know if this solves your problem. Jürgen
  15. if you are still using this module, one way to get around the aforementioned error is to copy the class into a new file (from the Fieldtype module) and then put this at the top of the inputfield module: if(!class_exists('ProcessWire\RuntimeMarkupUtilities')) { include_once __DIR__ . '/RuntimeMarkupUtilities.php'; } i haven't extensively tested it yet but so far it seems to work. I couldn't import any fields as the admin would crash and this has now allowed importing fields without this module showing the "class "RuntimeMarkupUtilities" does not exist error."
  16. Thanks, @matjazp. I need to get myself looking at the github issues more regularly.
  17. Thanks @Robin S for taking a look - much appreciated. It seems like a random issue here even with my simplest modules. I have played around with removing those FileCompiler files and DB entries and sometimes it helps and other times not. Sometimes I literally need to remove the namespace so I can uninstall, then add it back and then I can reinstall. I am just worried about breaking the admin for users upgrading my modules. I also wonder if sometimes it matters how the module is upgraded - replacing files directly vs updating via the PW Upgrades module - perhaps it triggers a modules refresh before the module gets to load and potentially break things 🤷
  18. Stefan, thanks for such a great module. 😀
  19. Yeah, I thought so. I'm using my own by the spam emails are still getting 0.9 (same as me!). I don't get these spam emails since there's nothing promotional in them whatsoever and yet they're making it passed everything.
  20. Hi @Noboru. Glad you got it working. I'll look into the DefaultPage issue and maybe add a help note about it the class is really needed.
  21. I figured as much with the rest of the backend theme moving to CSS variables - thanks for confirming.
  22. Dear community, I am searching for a solution to show the items of a repeater field in the link dialog window. More in detail: the items of repeater_1 (Repeater field) should be selectable in the link dialog window of text_1 (TextareaLanguage/CKEditor field). The two fields are located in the same template. The repeater items should be selectable just as you normally can select pages. Any suggestions? I would really appreciate your help! Best Nomak
  23. Thanks @FireWire Heck, the same thing - default PW module for caching is keeping this URLs in navigation visible for everyone. Strange. Gonna report. Hey @ryan I didn't know where to post this prob, so I've tagged you. Sorry.
  24. @horst - we can't add those labels ourselves.
  25. Many thanks for this useful tipp, ... ... & congrats to this "lucky number post"! 😁
  26. We had one site that was struggling under the strain of AI bots (the admin became almost unusable); The hosting support confirmed they were getting hit massively by AI bots. They ended up implementing apache level blocks. Then we had 2 other sites (running on Digital Ocean droplets) which started to get hit and were crashing, hitting 100% CPU. I have since installed WireRequestBlocker on those 2 sites (and had to up the memory, CPU and storage) On one of them we are now seeing a lot of activity, and IPs being blocked, and have been running smoothly since. In the meantime i'm trying out the ai.txt which can be generated here: https://site.spawning.ai/spawning-ai-txt Has anyone else tried it?
  27. WSL is not docker. It is a virtualization technique tough.
  1. Load more activity
×
×
  • Create New...