Recently Updated Topics
Showing topics posted in for the last 7 days.
- Past hour
-
I think the error message is pretty straightforward in this case: "Array and string offset access syntax with curly braces is no longer supported" On line 3899 from your excerpt, a variable called "str" (which I assume holds a String value), is extracting an offset using curly braces, something that much older versions of PHP supported, but has been deprecated for awhile now. How old is the ProcessWire version that you are using? From checking Github and looking at my own sites, the MarkupHTMLPurifier module is currently at version 4.9.7, is included in the core so does not need to be installed separately, and hasn't been updated in over 4 years (the Markdown README was updated 2 years ago). If you upgraded the module separate from the rest of the core, it's entirely possible that there are incompatibilities due to not all core modules being updated simultaneously, thus the problem(s) you're experiencing with text in a textarea field.
- Today
-
@eelkenet Thanks, I'm adding your suggestion to our README to accompany the other example(s).
-
PW 3.0.265 – Core updates and AgentTools updates
ryan replied to ryan's topic in News & Announcements
@AndZyk It's been requested by another person and I was just waiting for someone else to ask for it. I've added a setting (in tomorrow's version) that let's you choose where you want the response to appear: notification, in the field, or both. In my case, I need the "both" option because my PageEngineer fields are pretty far down on the page. If there's no notification, the person editing sometimes misses the response. And if it doesn't appear in the PageEditor field, then you don't see what you are replying to. But now you can choose what works best for your case. I agree, tomorrow's version will also repeat the prompt above the response. Maybe for a future version. Right now PageEngineer is a Fieldtype using an Inputfield that's part of the page editor form, and that gives you the flexibility of putting it where you want it. The current setup means you could always present it as its own tab in the page editor too. But I do like your idea as a potential option for a future version. I found that some of these requests can take quite awhile to complete and something more than a spinner was needed to communicate what was happening. I asked Codex to come up with a spinner that better represented the thinking process that takes place when you submit an engineer request, and I was pleasantly surprised by the result. Like anything else, if some people don't like it we could always make it optional. It's possible, but it depends on the Inputfield supporting it. Most core ones do, but at this point I prefer predictable reliability, aiming for stuff that will work everywhere. As the AgentTools module matures maybe more options like this can be available. Not all models support image files, though I think most of the big ones do. Likely we'll add this at least to the site engineer. Maybe for page engineer too, though you could do it now just by adding a file field to the page and telling page engineer to use it, whether in a prompt, or in the system prompt defined with the page engineer field. -
module Native Analytics — a native analytics module for ProcessWire
Roych replied to Roych's topic in Module/Plugin Development
NativeAnalytics 1.0.29 is out This release polishes the recent contributions from @adrian and fixes a few edge cases: Hourly trend chart now live-updates the current hour (previously it could update the last slot of the day). "Find page" autocomplete now suggests only real pages with recorded data — bot rows and 404 probes are excluded. Page search no longer fails on environments without mbstring. Uninstalling only the dashboard module is now non-destructive — it won't remove the main module or drop your analytics tables. Full data removal still happens when you uninstall the main NativeAnalytics module. And anwser to @millipedia No step missing on your side — this was a bug. The tracking endpoint (/pwna-track/) was being recorded as the pageview path on some setups (subdir/proxy/trailing-slash), so every session showed it. Fixed in 1.0.29 release: the endpoint paths are now hard-excluded from being stored. Thanks R -
I think I just moved to this one because it has touch ID and USB charging. I'm sure the numeric keyboards now have all those, but I couldn't go back. My mouse position Vs edge of keyboard has been re-established.
-
Please do 🙂. I can’t guarantee everything is flawless at this early stage but I can guarantee speedy fixes. LMK where you can see areas for improvement. P
-
It's now possible to run multiple scripts in different Console tabs at the same time. Probably not something you'll need often, but if you have a very long running one you can run other ones in other tabs at the same time without needing to wait.
- Yesterday
-
SEO Neo feature focus: SERP Preview The SERP Preview has two useful tab groups. Live Google SERP preview with desktop/mobile toggle. Multilingual language switching is also possible. The tab group is auto-generated based on your installed languages. Apologies in advance if the DE/FI translation isn't spot on. CleanShot Google ChromeEdit Page Lakes & Trails • lakesandtrails.go2026-06-10 at 21.56.57.mp4
-
Hi @ukyo, thanks for this great module! It's a real time saver 👍 According to the README, this module supports focus and position mapping, but the focal point is ignored when rendering the image. It simply performs a center crop. Focus and zoom applied in Image field: Rendered output via $image->render("landscape"):
-
Hi @maximus I am using SEOMestro at the moment but saw that this module has a convenient migration feature for that case. Really nice! Is it possible to automatically add a "suffix" to the meta_title? What I like to to is created titles like: "Home | my-company.com" or "Our Services | my-company.com" Where the first part is the actual page title and the second part is my suffix text. Is it somehow possible to define this pattern in the global configuration of the module inside this global defaults JSON? { "meta_title": "field:title", "meta_description": "field:summary|truncate:160" }
- Last week
-
Using AI with ProcessWire: Where Do I Even Start?
wbmnfktr replied to zilli's topic in Getting Started
@zilli this is such a great progress review you gave us here. From "not knowing where to start/anything" to trying and exploring, finding solutions and new options, and even noticing that nothing is perfect on first try but iterating on it can you bring you quite far. 3 months ago I had to ton of ProcessWire skills in my projects to be able to get things done in a proper and clean way, but since Ryan started to explore and use AI more and brought us AgentTools, I skipped my skill files in projects that use AgentTools. It's working perfectly fine so far. Modules are sometimes edge-cases but at the end everything started to work as intended. I love to explore more tools, guidelines, agents, harnesses, models, and whatever the latest hype is. But at the end of the day I mostly only use OpenCode with Z.AI and the OpenCode Go plan to get things done. Sometimes for really huge tasks I try the Opus models through Windsurf/Devin ($10 legacy plan ftw!). What I learned with trends and hype cycles... wait a week or two. If people still talk about it, try it. Otherwise don't even care. Gastown? Beads? OpenClaw? Ralph Loop? Karpathy XYZ? SpecKit? [...] - meh. Not really. Looks nice, may work for some, but not for me. -
module Stripe Payment Links Admin – Analytics & Reporting
Mikel replied to Mikel's topic in Modules/Plugins
Update: Withdrawals tab + Stripe custom fields (v 1.1.0) Hi all, a quick update on StripePlAdmin, the companion admin module for StripePaymentLinks. Two new things in this release: Withdrawals tab Surfaces the right-of-withdrawal (cancellation) requests that the main module stores per user (spl_withdrawals repeater). Same architecture as the other tabs — configurable columns, status/date/search filters, CSV export — plus inline-editable status and admin notes that save immediately via a small CSRF-protected AJAX endpoint. Consumer name/email link straight to the user account. The tab only shows up when the main module actually provides the feature. Custom Fields column Stripe checkout custom fields (the ones you define on a Payment Link) are now read out of the stored stripe_session meta and shown as Label: Value pairs — text, numeric and dropdown fields (dropdowns mapped back to their option label). It's a configurable column on the Purchases tab, flows into the CSV export, shows up in the purchase-details modal, and is included in the search. As always, feedback welcome, Cheers, Mike- 1 reply
-
- 4
-
-
Hi everyone, Accessibility overlays have a bad reputation — mostly because they're sold as SaaS, phone home to third-party servers, and charge monthly fees for something that should be built-in. Ally is different: self-hosted, MIT, no external requests at runtime. GitHub: https://github.com/mxmsmnv/Ally What it does Adds an accessibility panel to your site's frontend, powered by Sienna (MIT). The JS bundle and OpenDyslexic font ship with the module and are served from your own server — nothing loads from external CDNs at runtime. Font size adjustment Dark, light, and high contrast modes High/low saturation, monochrome Dyslexia-friendly font (OpenDyslexic, bundled locally) Highlight links and headings Letter spacing, line height, bold text Reading guide, stop animations, big cursor 53 languages with auto-detection from html[lang] or browser settings Full ProcessWire multi-language support — maps $user->language to the correct locale automatically Configurable position, offset, button size, and accent color Skips admin pages and Chrome Lighthouse by default No build step — prebuilt JS bundle included. One caveat: the widget is injected via Page::render hook. If you serve pages through ProCache static HTML, the hook doesn't run on cached pages — exclude those pages from ProCache if you need the widget there. Overlay widgets supplement, but do not replace, accessible markup. Use Ally alongside good semantic HTML, not instead of it. Requirements: ProcessWire 3.0.200+, PHP 8.1+ MIT License.
-
- 6
-
-
-
There are still a few modules left to do...
-
Thx for the loveletter @gebeer and others. I thought I've already replied, but it seems that post got lost. I'm getting a lot of 500 errors these days in the forum. I wouldn't say I've quit the community. What I've stepped away from is making significant investments in the ecosystem and trying to build a business around it. That didn't work out for me, so I had to move on. As for RockMigrations: I understand and even share some of the concerns raised here (even though I find terms like "bloated nature" a bit harsh). It started as a somewhat experimental proof of concept, and yes, I built it with my other modules in mind. At the same time, it has always been completely free because I felt it was too important to put behind a paywall, and it has always been open to PRs. 😉 Nevertheless, over time it turned out to be very reliable and became an essential tool for my work. Considering that all my ProcessWire projects from the last decade rely on it, I expect it will remain supported for quite some time. That's the status quo. What I did find a little surprising, though, was seeing migrations become part of the core years later, seemingly almost overnight, while RockMigrations and the other migration modules weren't much of a reference point in that process. Unfortunately, it's not the first time I've seen that happen. What I learned from that experience is that it's not something I can build a business on. So I really haven't quit on the community — I've simply moved on from trying to build a business around my ProcessWire contributions, and my reduced forum activity is just a consequence of that. But I check in from time to time to see what's going on and I try my best to be available and helpful if anybody needs anything related to my modules. 🙂
- 7 replies
-
- 13
-
-
-
ProcessWire updates are fun again (or: less clickery, more coffee)
Peter Knight replied to gebeer's topic in Dev Talk
That’s brilliant 🤩 Thanks for the skill- 1 reply
-
- 1
-
-
Great :-) I have also done a small genealogy/history project with ProcessWire this year: https://www.glashytt.at/
-
Missing category: ProcessWire discussion that isn't a support question
Peter Knight replied to Peter Knight's topic in Pub
WIP Possible approach below. Add a new top-level category — ProcessWire Discussion. It contains community-facing boards that were previously under General support and some new ones. Labels and descriptions are just placeholders. ProcessWire Discussion A place to talk about ProcessWire beyond support — share, discuss and connect with the community. General Discussion — ProcessWire chat that isn’t a support question. Showcase / Case Studies — Have you done something nice with ProcessWire? Share it here. Wishlist & Roadmap — Tell us what you’d like to see in ProcessWire. Module Spotlight — Highlight and discuss notable modules without it being a support question. Business & Freelancing — Pitching PW to clients, agency adoption, pricing and project management. Community & Events — Meet-ups, conferences, PW-related events and community news. Jobs — Post your requirements here if you would like to hire an experienced ProcessWire developer. -
You are a beast @maximus. The community is grateful to have you.
-
A big thanks to @@Mikel for flagging some of the items which form 1.19.1. Uninstall (fixed) The safety check that requires you to opt-in via `$config->MediaHubUninstall` in `site/config.php` was firing a beat too late. By the time the error showed, companion modules and their pages were already partially torn down. 1.19.1 hoists that check into a `hookBefore('Modules::uninstall')` so nothing is touched if the flag is missing. Also tightened companion module cleanup, admin page deletion, and crop-field removal so the whole flow is now atomic: succeeds completely or aborts cleanly. Import (fixed) Importing existing images on a non-MediaHub site (Setup → Media Hub → Import Existing) wasn't generating thumbnails. Bonus: retina `srcset` (1x/2x) and lazy loading on inputfield thumbnails. Icons (aligned) The library and the MediaHub inputfield each have view-mode toggles (grid, proportional or masonry, detail or list), but 1.19.0 used slightly different icon sets between the two surfaces. 1.19.1 aligns them on the same Lucide set. Labels bug (fixed) The new Labels section in 1.19.0 shared structural class names with Collections. This meant Labels were incorrectly displayed on some Collections filters nd menus. Labels and Collections are now strictly separate row types throughout the sidebar. Full changelog 1.19.1 blog post 1.19.1 download
-
That's f*****g insane! Excuse my french. There is a license or two I bought but never really ever digged into PageGrid. Maybe... this is a very good reason to do so. Great work you guys did here!