Jump to content


  • Posts

  • Joined

  • Last visited

Everything posted by grimezy

  1. Hey @bernhard, Thanks so much for this mini tutorial, when I get time I'll attempt to test it out and see how I go. ?
  2. Hey everyone, Wasn't sure if this is possible but am wondering if anyone had a solution to this. Perhaps with a hook or something? A client has many parent pages to select from when creating a new page and they are then asked which parent page should this new page be created. A select field is then used to populate the list but this is a very big list. 500+ and growing which isn't that bad, but their employees are using iPads and I don't think the on-screen keyboard opens when targeting a select field and I don't think there is a way to force open the on-screen keyboard to search easier on the list... they have to scroll continuously and this is becoming an issue. It would be a lot more efficient for them to search for the parent page using a auto-complete/search select field if there are many items to list. Is there any way this can be achieved? Thanks!
  3. I also moved away from Freshbooks. They trippled their fee (was on a grandfathered plan) and their support when extracting and closing my account was a nightmare! (They sent my entire backup to someone else and didn't close my account properly, so clients were getting 2 lots of invoices from me!) I'm glad I built a new more customised system suited to how I process things for my business using PW. The amazing thing is, when I look back at it... it took me only about 1 full week to migrate and get going thanks to how easy it was using PW ? It now takes care of invoicing clients, online payments using form builder, PDF tax reports and expenses, multiple business setup (wife sells magazines and books), invoice activity/history. Will be interested to see how some things are done with this invoicing profile to improve on my setup. Well done @ryan.
  4. Just in case it helps anyone else, after upgrading from PW core 3.0.148 to latest (3.0.161), the ending bracket gets striped from the CDATA element when generating the output for the RSS XML feed. Not sure what has changed or caused this. Changed line 187 from: $description = '<![CDATA[' . $description . ']]'; to: $description = '<![CDATA[' . $description . ']]>'; Thanks.
  5. Thanks @Roope! This has fixed the issues I was having.
  6. Just a warning, this seems to have a conflict with SEO Maestro module? I can't diagnose much as I'm at work and it's very busy at the moment. Can anyone else confirm this? Thanks.
  7. This was the code I used to replace all items, just in case anyone needs the same in the future. ? $blog_pages = $pages->find("template=blog, include=all"); foreach($blog_pages as $p) { foreach($p->content_repeater as $item) { if($item->type == 'rm_text') { $item->of(false); $string = $item->body; $pattern = '[\/site\/assets\/files\/(\d){1,20}\/]'; $replacement = '/site/assets/files/' . $p->id . '/'; $new_string = preg_replace($pattern, $replacement, $string); $item->body = $new_string; $item->save(); } } } Note: Don't forget to disable 'Fix broken images' under HTML options under your body content field, for the images not to be stripped from the output!
  8. Thanks @horst, This pointed me in the right direction, looking at some preg_replace examples within that module. I used the online preg_replace tool here: https://www.phpliveregex.com/#tab-preg-replace to finally get what I was looking for: ? $string = '<img alt="" src="/site/assets/files/10877/img_543.jpeg" />'; $pattern = '[\/site\/assets\/files\/(\d){1,20}\/]'; $replacement = '/site/assets/files/' . $page->id . '/'; preg_replace($pattern, $replacement, $string); Output: <img alt="" src=/site/assets/files/<new_page_id>/img_543.jpeg" /> Thanks!
  9. Hi everyone, I have just updated my wife's website, and used the PW pages import/export tool to export all her blog posts. Everything worked well except that the Page ID's are different, so images which are in ckeditor body field are pointing to their old page id's and not the new page id's. Causing error's when you try to change any image properties within the ckeditor, such as alignment etc... and no images within the body field are shown on the front end of the site. Is there a step that I have missed somewhere? I did this step last, so I'm guessing all page id's were taken up, so the import used new page id's? Has anyone made a preg_replace() for URLs to just change image url strings to update to a new page id? For example I need the following example: <img alt="" src="/site/assets/files/10877/img_543.jpeg" /> changed to: <img alt="" src="/site/assets/files/{$page->id}/img_543.jpeg" /> Thanks!
  10. Hey @tpr, I'm also experiencing a different issue with AoS and the new toggle fieldtype. When entering the new toggle field to display results in the admin Page List (template->advanced->list of fields to display), if the page tree is not already open, the 'edit' string is attached to the string of text, when you open up a branch. If the tree is already opened however, it is fine. Please see the attached image. Thanks!
  11. I had the exact same issue with huge blank spaces @buster808. One thing you can do to avoid the huge white space is use the truncate method introduced in PW 3.0.101. Ryan wrote a great blog post on how to use it: https://processwire.com/blog/posts/processwire-3.0.101-core-updates/ Hope this helps.
  12. I think there is a feature request for this at the moment. https://github.com/uikit/uikit/issues/3812
  13. Great work @ryan! A really nice fresh new look. I especially love the little fine details of all the wires and plugs. I also like all the little testimonials scattered everywhere which relate to the content above them. Just two little things I noticed that were not mentioned yet. When in a sub category of the About menu, the navigation menu displayed on the left appears for each item except for 'Reviews' page. The top menu has the same flow and look regarding the plug and circle for items 'About', 'Download' and 'Docs', but the others don't. The plug and circle when on the 'Docs' page, using a widescreen monitor, the circle is outside the cord or overlapping the plug, depending on the width of the viewers monitor. I can't believe so much has been done in such a short amount of time though, great work!
  14. Great stuff. I haven't really had the need to place any grids inside any of my widgets, so have never thought of doing anything like that, but if I were to approach it with my configuration, I would probably just add some of the templating elements into the repeater matrix section.
  15. Sorry I took a while to respond... some appliances in the house broke that needed fixing and got a new Roland electronic drum kit, which I told the wife was more for my boys, but I have been hogging it... ? Site still isn't finished, but almost... I tried to put together a video which shows: Creating a new test page Using repeater matrix field to add different content to the main body of the test page Creating a new page widgets group and a slideshow widget Creating a new test template page using the UIKit framework as the container for the widget Targeting specific / all pages to show the container Adding some classes to the container So I hope this shines some light on how I use this... kinda the best of both worlds... I can add main page content via repeater fields, but if I need content anywhere else, I can build out the template and target where I want the widget to go for any pages outside the main page content, or use the same widget in different locations on selected pages. I think I will try using fieldsetgroup or fieldsetpage, (I think) to try to combine the repeater matrix fields used for the main content and the widgets, so I really only have to maintain one template section and a single bit of code, if it needs expanding or more features are requested by a client.
  16. More the classes, but I group the pages under a page named as the corresponding component. So for example I have a parent page called uikit components, then under that, different component parents, such as alert, then its classes under that, such as default, primary. I guess it all depends on how often they will change / add classes once its out of beta, and then it wouldn't change all that often. I guess something like this would more benefit anyone that was first implementing something like this, as I transitioned from uikit 2, to uikit 3. I might see if I can make it a bit more neater, and user friendly, and then just export the parent page and all it's siblings and export it using PW's export pages tools for others to use? I'm not sure if others have have gone about it this way? or if there is a better way to go about it?
  17. I currently just create all the uikit classes as pages. It would be good to have a way to sync new classes that become available from uikit. Im not sure if there is anything that can be used from uikit which just lists all the classes somewhere?
  18. Yeah sure, I'll try put something together this week to post if I don't get to busy. ?
  19. https://modules.processwire.com/modules/mark-in-page-tree/
  20. Nice work @joer80! It's great to see how others approach their own page builders. Hopefully we can all learn better ways of building out our own page builders. I've taken a slightly different route and have used repeater matrix fields to build out the page layout/sections, whereas you have used pages. I like how yours integrates the structure and content into the flow of the page tree. I originally thought about this, but had concerns of content & layouts that I wanted to repurpose for some/all pages. I know it would be easy to copy a page and it's children to another parent, but I thought it would be easier to use a selector field to select where I wanted to place these. How do you approach this? Do you have any difficulty with this? The other reason I went this approach was I could easily lock down the template section and users could still change the current content and all of the widget options that I make available. The downside with my approach was it got a bit messy once the site started to grow. I recently had to change mine up a bit due to this. I originally had just a parent page 'templates' and 'widgets' but soon got out of control. I now have the same parents pages, but now seperate child pages into groups. I'm still looking to improve on this which I hope I can refine it the more I use it. I also changed the widgets parent page to store all widgets that are on multiple pages and singular widgets page to sit under the pages or parent pages which they are used for, which sit at the top of the page tree. Thank you @tpr for implementing the sticky page feature in AdminOnSteroids! ? I also improved the way I could target classes, buy separating my css files. Ones that target the page ID, the page name and the widget name as a class. I think I will try and extend this as you have done through a backend-end editor for these files. One thing I would love to find out is a way to automatically update all the uikit classes from an external source. So that whenever anything is changed and updated, new classes would be added. Or have a development section in the page template to test new classes with... etc, so not to break anything. But great stuff, well done! ? Just shows you what can be built using this awesome CMS. ?
  21. I too was wondering how to best approach this, as I needed a base configuration that sped up the design layout for each template a client requested. I just spent too much time on this than anything else. Because I am a one man show, and this isn't my primary job, I finally think I found a happy medium, using the following: A combination of using: One main template which is used to build any layout Repeater Matrix Fields as html blocks/containers, which build html code based on the UIKit v2 framework (grid classes, subslasses, etc...) I tried to code in a function which uses the recent Item Depth settings for a Repeater Matrix field to know when to open and close div elements with levels of code blocks, but couldn't quite get it right, as my math and coding skills aren't that great yet, but if anyone manages to get something like this working, it would be great! So instead I just created a bloated if else statement, but I still use the item depth feature to see how the blocks of code would be indented for easy readability within the backend. Backend templates for each widget, so I can add configurations and settings to each particular widget, and a way I could call this from a page reference field A 'Page Reference' field to select which widgets I wanted to show in these containers. A 'Selector' field to target which pages these particular html blocks/containers should be visible. I would love have this in some kind of installable module, but I'm just not skilled enough/don't have the time I hope though that this has given someone an idea of how you can use the above combination to take the hassle out of building page layouts, without touching the front-end code continually I have attached a screenshot to make it a bit clearer on what I am doing... (or trying to do!)...
  22. Thought id also post a link to this great blog post by Ryan, which includes the successor to the MarkupLoadGCal module: https://processwire.com/blog/posts/composer-google-calendars-and-processwire/ Hope this helps.
  23. That's great to hear Margaret! Will be good to see how things come along and good to see a big project being worked on using ProcessWire in Australia.
  24. Hey Blynx, Thanks for the nice module Not sure, it's probably just me, but to get this working (local MAMP setup) I had to use the full module class name (MarkupProcesswirePhotoswipe) (not the alias Pwpswp) and the css/javascript etc paths were incorrect , so instead of MarkupPwpswp/path-to-files within the .module file, I had to change these to MarkupProcesswirePhotoswipe/path-to-files After this all worked nicely Thanks again!
  25. Hey @adrian Thanks for the quick reply. I didn't realise there was an updated version, so I have upgraded to v15 and still only exports what is set to the default option. I was currently on v14. I have made a vid of replicating the issue, which also shows all the info you might need. Just let me know if you need any other information. I'll PM you shortly with the video. Thanks.
  • Create New...