Recently Updated Topics
Showing topics posted in for the last 7 days.
- Past hour
- 
	That will definitely be welcome, for sure! Thanks in advance.
- Today
- 
	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.
- 
	@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 than 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!
- Yesterday
- 
	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 HTMLDV-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 & InputfieldMacrura 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."
- Last week
- 
	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.
- 
	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.
- 
	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
- 
	  $user->hasRole('superuser') block still visible to guestsLeftfield replied to Leftfield's topic in General Support 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.
- 
	@horst - we can't add those labels ourselves.
- 
	
- 1 reply
- 
	- 2
- 
					
						
					
							  
- 
					
						
					
							  
 
 
- 
	  New blog: Throttling AI bot traffic in ProcessWireMacrura replied to ryan's topic in News & Announcements 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?
- 
	WSL is not docker. It is a virtualization technique tough.
- 
	I am creating a module. The first-time install works without error, and the module functions without error. However, when I uninstall the module, then attempt to install the module again, I get the following error: "Unable to install module [module]: Role collision detected ([role]): role already exists." The role was deleted successfully, and no reference to that name exists in the database. Has anyone come across this before?
- 
	@Spinbox I'm not sure why that wouldn't be working if the fields are initialized with a translate button. I've never nested RPB fields. I'd like to support whatever features RPB has. I've reached out to @bernhard to see if there's anything that he may know of to help or confirm that nesting is supported. Will come back with more info when I can.
- 301 replies
- 
	- 1
- 
					
						
					
							  
 
- 
	
		- translation
- language
- 
					(and 1 more) 
					Tagged with: 
 
 
 
	 
	 
	 
					
						 
	 
	 
					
						 
	 
	 
	 
	 
	 
                     
	 
	 
                     
					
						 
	 
	 
	