-
Posts
125 -
Joined
-
Last visited
-
Days Won
2
Everything posted by Sanyaissues
-
Improve site-wide search to include module description
Sanyaissues replied to eelkenet's topic in Wishlist & Roadmap
That would be nice. To be honest, I never use forums or website search. By default, I just fire up Google. My usual suspects are /talk /blog /docs site:processwire.com/ deepl site:processwire.com/talk deepl site:processwire.com/blog languages site:processwire.com/docs $page -
Tutorial: Browser sync or Live reload (small footprint)
Sanyaissues replied to ukyo's topic in Tutorials
Also, for those using DDEV there's a ddev-browsersync add-on, that's simple to use: ddev add-on get ddev/ddev-browsersync ddev restart And then, open .ddev/browser-sync.cjs and add the files you want to watch (the more specific, the better), e.g: files: ["/site/templates/**/*.php", "/site/templates/**/*.css"] Start browsersync, and launch the browser ddev browsersync ddev launch :3000 //Or just open https://yoursite.ddev.site:3000 Update a template and test it! You will notice a brief connected message: Edit: Adding this, in case it could be useful for someone else Here's an example of some useful settings: // #ddev-generated let docroot = process.env.DDEV_DOCROOT; let filesdir = process.env.DDEV_FILES_DIR; let url = process.env.DDEV_HOSTNAME; let nonSslUrl = process.env.DDEV_PRIMARY_URL.replace(/^https:/, 'http:'); if (filesdir === "") { filesdir = null; } module.exports = { files: [ "./site/templates/**/*.{latte,php,js,css}" // watch these file types in templates ], ignore: ["node_modules", filesdir, "vendor"], open: false, ui: false, server: false, notify: false, // disable Browsersync notification proxy: { target: nonSslUrl }, host: url, snippetOptions: { blacklist: ["/processwire/**"] // avoid refreshing admin backend }, }; -
@tpr thanks for the module! Just a heads-up for anyone looking to use this module with the latest Nette Tester. I’ve updated the tester version from v2.0.2 to v2.5.4 and fixed a few minor issues caused by changes in Tester. You can find the updated fork here: https://github.com/lemachinarbo/ProcessNetteTester Update now is part of the module! https://github.com/rolandtoth/ProcessNetteTester Let me know if I broke something, but it seems to be working (for me... haha).
- 12 replies
-
- 1
-
-
The book is easy to read, kinda silly but fun. When I started reading I had zero experience with OOP, so it was funny to jump to understand "design patterns" without having an idea of the basics... BUT, it did help me to make the switch. I'm more confident now working with Custom Classes. I'm totally going to read it again from the start to interiorize the patterns (hopefully haha).
-
@nurkka try amazon lightsail with your favorite Linux flavor (they gave you 3 months free for you to play) and install Webmin for server administration. It is an easy and cheap way to live under amazon infrastructure. Or the same but with Heztner with a cpx31 or cpx41.
-
[Solved] How you work with pw on external server
Sanyaissues replied to olivetree's topic in Getting Started
@Ivan GretskyI used to do Cowboy Coding (just learn the term! Love it) all the time, using Cloud9, so I only needed my browser to code. Then I switched to VsCode and remote development, but extensions started eating up my small server instance's memory (The default @builtin TypeScript extension is a RAM monster! and I wasn't even using it!). I spend half my time monitoring server-side extensions... until I finally made the switch to DDEV. That's definitely in my next-to-try list @bernhard -
saving ..sometimes, and nothing in errors.txt
Sanyaissues replied to joe_g's topic in General Support
I have no idea but in that case I would start by: 1. Activating debug mode. 2. If you have TracyDebugger go to ProcessWire info Pannel > Clear Session, Cookies, & Modules Refresh. If you don't, install it 😉 3. Just for the sake of it Clear all your caches 4. Log what's happening when the page is saved: Put this in your ready.php $this->addHookBefore('Pages::save', function (HookEvent $event) { $page = $event->arguments(0); bd("Attempting to save: {$page->title}"); }); $this->addHookAfter('Pages::save', function (HookEvent $event) { $page = $event->arguments(0); bd("Saved: $page->title"); }); $this->addHookBefore('Pages::saved', function (HookEvent $event) { $page = $event->arguments(0); $changes = $event->arguments(1); bd($changes, "Changes on $page->title"); }); Check the Dumps: -
[Solved] How you work with pw on external server
Sanyaissues replied to olivetree's topic in Getting Started
PW running on DDEV local containers for deploying and then a shell script (or sometimes duplicator) to publish to a live server. -
RockForms - Simple, secure and versatile forms based on NetteForms
Sanyaissues replied to bernhard's topic in Modules/Plugins
@bernhard I was aware of RockForms' existence but just by name, but never took the time to read more about it. I just finished reading the docs, and man, that module is a beast! hats off! -
Set default description for input field file on load
Sanyaissues replied to TomPich's topic in General Support
When you’re feeling lost and already halfway to uncharted waters, there’s only one man to call: The Captain Hook. -
Congrats @DrewPH!! Now you will need to ask your clients to update the feedback comments so people can know you are one of the best wordpress ProcessWire developers in Malta.
-
Playing with the new toy! 🚀👕 Screen recording 2024-10-29 15.50.20.webm
-
Set default description for input field file on load
Sanyaissues replied to TomPich's topic in General Support
wire()->addHookBefore("InputfieldFile::renderItem", function(HookEvent $event) { $pagefile = $event->argumentsByName('pagefile'); if ($pagefile->field->name === 'yourFileField') { $pagefile->description = 'Communiqué de presse'; $pagefile->page->save($pagefile->field->name); } }); Try this @TomPich. -
I'm reading Head First Design Patterns, because a recommendation of @da² in this beautiful post.
-
I spent the last two days going back and forth between FieldtypeRepeater and FieldtypeCombo for some fields, but FieldsetPage was exactly what I was looking for! I wish I had discovered it earlier 🤦♂️ Thanks @bernhard!
-
$wire->addHookBefore('Inputfield::render', function (HookEvent $event) { $inputfield = $event->object; // Proceed only for 'yourField' if ($inputfield->name !== 'yourField') { return; } // Get the associated page if (!($page = $inputfield->hasPage)) { return; } // Check if the page is part of the yourPageArrayField on page with id 1 // (or whatever the ID of the page with your pageArraField is) $productPages = pages()->get(1)->yourPageArrayField; if ($productPages->has($page)) { $inputfield->attr(['checked' => 'checked', 'value' => 1]); } });
-
Thanks and nice to meet you both @gebeer and @bernhard! RockCommerce looks so promising, it really feels like the procceswire way to do e-commerce.
-
Image cropping doesn't work with custom center
Sanyaissues replied to Jozsef's topic in API & Templates
$image = $gallery_page->images->first()->size(540, 404, [ "cropping" => ['50%', '35%'], "quality" => 80, "focus" => false ])->webp->url; Maybe it is auto detecting a focus presset. Try disabling it. -
After probably 12 years with Processwire, I just discovered that pressing the 🌲 tree icon link, in the breadcrumbs, opens a modal with the page tree.
-
Problem with og:image and WhatsApp / Meta Share Debugger
Sanyaissues replied to Žarko Kuvalja's topic in General Support
Also, you can still trim some fat, that image can be easily under 100kb. You can do it manually with squoosh (try jpg, that image don't need to be a png) or tinypng, or dynamically -
TailwindCSS suggestions/autocomplete in LATTE files with PHPStorm
Sanyaissues replied to nurkka's topic in RockFrontend
@nurkkaa month ago my intellisense stop the autocomplete and I solved by rolling back the extension version. Again it was VScode, but maybe is this bug related to PHPStorm? https://github.com/tailwindlabs/tailwindcss-intellisense/issues/1033#issuecomment-2362876115 I discovered the issue by looking at the VScode Tailwind Css Intellisense Output, instead of a successfully build I was getting: [GLOBAL] No matching project for document -
TailwindCSS suggestions/autocomplete in LATTE files with PHPStorm
Sanyaissues replied to nurkka's topic in RockFrontend
I'm VScode user and this on the settings.json does the trick: "tailwindCSS.includeLanguages": { "latte": "php" }, Guessing here, try something like https://www.jetbrains.com/help/phpstorm/tailwind-css.html#ws_css_tailwind_complete_classes_custom_context //or maybe "latte": "php" "includeLanguages": { "latte": "html" }, -
I'm interested too!
-
RockFrontend now supports translations in LATTE files ?
Sanyaissues replied to bernhard's topic in RockFrontend
{\ProcessWire\__text('foo')} works (but it didn't solve my problem hahaha). But guess whose module did the trick -
RockFrontend now supports translations in LATTE files ?
Sanyaissues replied to bernhard's topic in RockFrontend
Thanks for the message @bernhard! By any chance, have you ever used Functional Fields + RF + Latte? I noticed that when I declare __text('foo') directly in home.latte, the functional field doesn't recognize it. However, when I add it to _rockfrontend.php, it works.