Recently Updated Topics
Showing topics posted in for the last 7 days.
- Past hour
- Today
-
Field Access A Process module that provides an overview of field access settings, including template overrides. Usage The table has a sticky header so that the columns can be understood when the table is scrolled. The empty space underneath the table is to allow scrolling to the bottom of the table. There are fields for filtering the table by field name or by template name. The field names link to the Access tab of the field settings, and the template names link to edit the access settings for the field in the context of that template. A collapsed field at the top of the page has information about the meaning of the table column headers, and tips for understanding the values in the table: Table column headers Control: Is access control enabled for this field? View: Roles that can view the field Edit: Roles that can edit the field Show: Show field in page editor if viewable but not editable (user can see but not change) API: Make field value accessible from API even if not viewable Overrides: Overrides of the field access settings in template context Tips If the guest role has view access then it means that all roles have view access. You can hover the guest role in the View column to see a tooltip with all the role names if you want a reminder of those. Overrides: when access control is enabled as a template override, the Control, View, Edit, Show and API columns only display settings that are different from the field access settings. If a column is empty it means the field access setting applies. https://github.com/Toutouwai/ProcessFieldAccess https://processwire.com/modules/process-field-access/
-
Thanks for reporting this @BrendonKoz. It should be fixed in v0.1.4
- 11 replies
-
I quite agree with your two points above. "Section for practical code examples." They could be added to the method descriptions, and not just sample code strictly related to a given method, but code showcasing typical scenarios with related methods and often used techniques, “coding patterns.” "Currently a lot of core features are very fragmented and hard to find if you don't know they exist in the first place." So true! I have some notes of some important settings, which I often set up differently from the defaults, but having to look through them just to find something is time consuming. Some sort of clever way of gathering information and providing it in a categorized and digested way would help, I think.
-
Thanks @BrendonKoz! Will check this out.
-
Hi all, no ideas so far? I copy the JS from the above mentioned codepen here: window.addEventListener("load", initGallery); function initGallery() { const triggers = document.querySelectorAll(".trigger"); let popImg = document.querySelector("#mypopover img"); triggers.forEach((trigger) => { trigger.addEventListener("click", () => { let popImgUrl = trigger.dataset.full; popImg.src = popImgUrl; popImg.alt = popImgUrl; }); }); } Any help much appreciated! ottogal
- Yesterday
-
Is there a way to enable/disable page protection programmatically? With a hook?
-
AgeWire is a powerful, fully customizable age verification module for ProcessWire, built with modern web standards and powered by Tailwind CSS. Perfect for sites requiring age gates (alcohol, tobacco, adult content, etc.). Key Features Two Verification Modes: Simple Yes/No buttons Date Picker with separate MM/DD/YYYY inputs (bot-resistant) 13 Stunning Themes: Modern, Dark, Classic, Minimal, Gradient, Neon, Elegant, Corporate, Vibrant, Nature, Sunset, Ocean, Purple 4 Smooth Animations: Fade In, Slide Up, Zoom In, Bounce In International Date Formats: MM/DD/YYYY (US) DD/MM/YYYY (EU) YYYY/MM/DD (ISO) Advanced Security: Secure, HttpOnly, SameSite cookies Configurable lifetime (1 day to 6 months) Bot protection via manual date entry Smart Exclusions: Skip verification on specific templates or pages Admin pages auto-excluded Privacy & Compliance: Optional Terms & Privacy Policy checkbox Custom links to your legal pages Fully Responsive – Mobile-first design Custom CSS support Tailwind CDN integration (no build required) Installation Download from GitHub Place AgeWire folder in /site/modules/ Go to Modules > Refresh Install AgeWire GitHub: https://github.com/mxmsmnv/AgeWire Download: https://github.com/mxmsmnv/AgeWire/archive/refs/tags/v1.0.9.zip Perfect for: Wineries & breweries Vape & tobacco shops Adult content sites Age-restricted events Feedback, bug reports, and pull requests are welcome! If you like AgeWire, please ⭐ star it on GitHub! Made with ❤️ for the ProcessWire community.
-
- 11
-
-
-
Thank you very much for your detailed answers @jploch, I really appreciate it. In fact, it concerns more PW topics, such as how these are seen and used for page grid. I thought that site profiles and page grid interact with each other, but I wasn't sure, hence my question, including the one about pro cache. When you come from other CMS systems, it's always a matter of ruling out multiple interferences. Thank you for your explanation on the homepage about how I can configure this.
- Last week
-
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.
-
@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
-
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
-
Awe-inspiring website! I loved that you demod the backend as well. Kudos to the team!
-
You can have a Look a the findRaw function: https://processwire.com/api/ref/pages/find-raw/
- 1 reply
-
- 1
-
-
Module: AIOM+ (All In One Minify) for CSS, LESS, JS and HTML
DV-JF replied to David Karich's topic in Modules/Plugins
Great news, I've a couple of old sites where I'm still using this module. Thank you @matjazpfor taking care! -
Module Module: RuntimeMarkup Fieldtype & Inputfield
Macrura replied to kongondo's topic in Modules/Plugins
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." -
Thanks, @matjazp. I need to get myself looking at the github issues more regularly.
-
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 🤷
-
Stefan, thanks for such a great module. 😀
-
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.