Jump to content

Recently Updated Topics

Showing topics posted in for the last 7 days.

This stream auto-updates

  1. Today
  2. Thanks for an awesome module. This one is going to be super useful! I've deployed this today to generate descriptions for Audio Visual brands using OpenAI and got it working without major issues. I noticed a couple of things worth looking at: 1) I couldn't get the Test Chat to work with GPT-5 Nano - a response was received but the content was empty. Switching to GPT 4.1 worked fine. 2) If using OpenAI as a single provider I had to use the 'provider' option or I got an error in the response saying 'no key for Anthropic' or similar. It would be useful here if, be default, it would use whichever provider was found with an active key perhaps? That way the 'provider' option wouldn't be needed unless for a specific call to a specific provider. 3) It would be useful if the number of total used tokens and / or tokens still available information from the provider was presented in the module. I'm not sure if that information is even possible from their API though? Thanks again. I look forward to using this module more in future!
  3. Strange... I'm seeing some inconsistencies which seem at odds with what the docs say is possible, but maybe I'm going wrong somewhere... If anyone has any tips, I'd appreciate it! For example, in my _main.php and template.php I had: <main id="main-content">...</main> but content would not populate until I used pw-id: <main pw-id="main-content">...</main> I thought that both id and pw-id were possible? I've also had more luck adding scripts before the body tag using divs instead of putting the script tags within region tags for some reason. What worked for me: <div id="regionscript">...</div><!--#regionscript--> in the template instead of placing scripts within region tags. With an optional div in the _main.php: <div id="regionscript" pw-optional></div>
  4. Yesterday
  5. I don't think that this will really protect the font. Once the font has been downloaded to the visitor's browser, I can be saved locally without further server request.
  6. Last week
  7. @wbmnfktr I'd love to understand what you are suggesting but I don't. Could you please be more descriptive? What problem do you solve? What is the goal? What is the solution? How would it help me with my day to day work? What would be the expected outcome? What would be the benefit (compared to other approaches)?
  8. Thank you. It turns out that there were some serverside issues, and the problem went away on it's own. I am assuming (but not 100% sure) that it was a file permission issue.
  9. Hi everyone, I found a small bug on this page: https://processwire.com/modules/category/seo-accessibility/ where the letters "O/A" in "SEO/Accessibility" are interpreted as a ligature. Here is a fix : #headline-text { font-variant-ligatures: none; }
  10. I'm running into an issue with the TinyMCE integrated in Processwire. I have a front-end that uses bootstrap 5.3, and the classes that TinyMCE uses for certain thing are different to the classes that Bootstrap uses. For example, if you align text to the right, it will add a class "align_right", whereas bootstrap uses "text-end". I can change the classes for this in the code, but then the TineMCE-window doesn't show the alignment because it does not react to the new classname. I understand that Processwire is headless, and as such cannot take all different front-end options into account, but wouldn't it then be better to not use classes for this, but instead use inline CSS? That works within all front-end frameworks as far as I know. Because it now uses classnames, it is catering to 1 specific front-end option in my opinion.
  11. Hey everyone! I just released a new module called InviteAccess. It's something I built for my own workflow and figured it might be useful for others too. The problem: when handing off a staging site to a client or a design agency, you either open it to the world or reach for HTTP Basic Auth — which works but isn't pretty and requires server config. I wanted something in between: a proper gate page that looks like it belongs to the project, with separate codes for each team. What it does InviteAccess hooks into ProcessPageView::execute (before any template rendering) and blocks all frontend requests until a valid invite code is entered. Logged-in ProcessWire users always pass through automatically. You define codes in the module config, one per line: SUMMER2025|Summer Campaign AGENCY-PREVIEW|Agency Team CLIENT-ACCESS|Client Preview The label after the pipe shows up in the access log, so you can see exactly which team accessed the site and when. Features Multiple invite codes with optional labels Session-based auth — enter once, stays valid for a configurable number of hours JSON access log with timestamp, IP, user agent, URL — last 50 entries shown right in the admin config panel Light / Dark / Auto theme switcher on the gate page (saved in localStorage, reacts to OS preference) Accent color setting — red, blue, green or black Configurable allowed pages that bypass the gate entirely CSRF protection, hash_equals() for timing-safe comparison, Cloudflare-aware IP detection The gate page uses ApfelGrotezk font and a design inspired by processwire main page itself — warm gray background, white card, mobile-first. Screenshots Installation cd site/modules git clone https://github.com/mxmsmnv/InviteAccess.git Then Modules → Refresh → Install → Configure. GitHub: https://github.com/mxmsmnv/InviteAccess Happy to hear any feedback or suggestions!
      • 12
      • Like
      • Thanks
  12. Hi everyone, I'd like to share a module I've been working on: WirePDF — a PDF generation module with full UTF-8 and Cyrillic support. What it does Adds a toPdf() hook to any page, so generating a PDF is as simple as: $page->toPdf(['filename' => 'document.pdf']); You can also pass custom HTML, use a dedicated template file, or save the PDF directly to disk. Key features Two engines: mPDF (recommended) and Dompdf Full field support: all native PW fields + ProFields (Table, Repeater, RepeaterMatrix, Combo) Typography: 14 fonts including DejaVu Sans for multilingual/Cyrillic content Headers & footers with {PAGENO}, {nbpg}, {DATE}, {sitename} variables Watermarks, password protection, configurable margins and paper sizes Logging via ProcessWire's built-in log system (Setup > Logs > wirepdf) Installation cd /site/modules git clone https://github.com/mxmsmnv/WirePDF.git cd WirePDF composer install Then install via Modules > Refresh in the admin. GitHub: https://github.com/mxmsmnv/WirePDF Feedback and bug reports welcome!
      • 8
      • Like
      • Thanks
  13. i think you need complete form https://processwire.com/about/contact/
  14. This looks amazin @Peter Knight, are you releasing this to the public or as a paid module?
  15. https://github.com/MSCLN/processwire-basque-language-pack Translated from the spanish language pack https://processwire.com/modules/pw_spanish/
      • 2
      • Like
  16. Glad to hear that! In the age of AI I think it's hard to get your mind to have patience and stop to learn the fundamentals, so kudos to you!
  17. Hello Mikel, First of all, this looks like a great module. We have been looking for a way to sell fonts as easily as possible for a long time, but haven't found a simple solution. I have a question regarding product delivery for multiple digital products. We want to sell digital files, specifically fonts. There are special requirements for fonts, and I would like to know if this is possible with the module. We usually have several product pages for different font families. Here, either the entire family or individual styles can be purchased. We don’t have product pages for single fonts that belong to a font family. Example: The product page “Font Family A” contains 4 purchase options: 1) Font style Regular 2) Bold font style 3) Italic font style 4) Family (includes Regular, Bold, Italic) Of course, there are also cases with font families where we have 15 or more font styles. My question is, if someone buys and pays for Regular and Bold, what does the customer get as the product delivery page? Our idea is, they receive a delivery page showing all fonts purchased to date, including the fonts they have just purchased, which can be downloaded by clicking on one of the font styles. As I understand it, the customer receives one delivery page per product? That would make it quite cumbersome for the customer to download all font styles. Would love to hear about your thoughts. Thomas
  18. I have it on my list and I will test it. I will try to find a solution for such a scenario if I can reproduce the behavior. Thanks for pointing it out.
  19. Thanks @maximus - looks good so far - I'll keep testing and let you know if I find any other issues.
  20. Hi everyone, I'd like to introduce Banana Imagine — a ProcessWire module that brings high-quality AI image generation directly into your image fields using the Google Nano Banana API. Key features: Clean generation interface right below supported image fields Generate 1–4 variations at once Smart subtle prompt variations for better batch diversity Selected images saved natively to the page (with clean naming: [pageID]-[timestamp].jpg) Simple configuration: API key + choose which image fields to enable GitHub: https://github.com/mxmsmnv/BananaImagine This module is a fork / spiritual successor to my previous module GrokImagine (xAI/Grok-based): https://processwire.com/talk/topic/31744-grokimagine-ai-image-generation-via-xai/ Installation & usage instructions are in the README: Just drop the folder into /site/modules/, install, add your Google AI API key (billing required for image gen), select fields → you're good to go. Screenshots: Feedback, bug reports, and feature ideas are very welcome! Thanks, Maxim
      • 13
      • Like
  21. Cheers for the info @poljpocket That's good to know. Thanks for your contributions to the community @bernhard I saw you created a lot of modules - I may try out RockCommerce at some point if I can get it to work with Stripe also. My site is likely to get image-heavy at some point so I'll probably cache it with one of the above solutions. I'm guessing caching mitigates repeater latency completely more or less on smaller/brochure sites? I'm not building anything too complex for the moment. Curious as to how well caching would hold up on a client store site of 100s of products though...
  22. does anyone know how to handle jumplinks and url-segments? can i do something like this: // redirect to success page $urlSeg1 = $input->urlSegment(1); if($urlSeg1 == "success") { $session->redirect("/go-to-page/success/"); } else { // jumplinks should do what it does } Right now, jumplinks do not work with templates having url segments active
  23. Hello @LostKobrakai, did you ever get a masonry layout working with ProcessWire srcset images in the end? Building a portfolio site and scoping out some ideas. It looks like the new CSS spec for masonry layouts - or "css grid-lanes" will be a thing but it's not ready yet. EDIT: Just realised the OP posted in 2014 lol. In any case, readers might find this of interest: https://metafizzy.co/blog/imagesloaded-v5-released/ I may see if I can get it to work
  24. Thank you, now it has been installed correctly.
  1. Load more activity
×
×
  • Create New...