• Content count

  • Joined

  • Last visited

Community Reputation

116 Excellent

About joer80

  • Rank
    Sr. Member

Contact Methods

  • Website URL

Profile Information

  • Gender
  • Location
    Texarkana, TX

Recent Profile Visitors

3,167 profile views
  1. joer80

    The nav_link template and the button template has options for selecting a page so the link never breaks, a page section, which is just a child row of a page which is typically a section, or a url for external links. I also built in code that adds smooth scrolling if you did a section link and you happen to be on the same page already, for one page websites. I made this website today as an example that shows that part and an alternate header look. I also made the external url field used on the button template support hanna codes, so I can use things like [[directions]] or tel:[[phone]] for the button link value. The map row is just a uikit grid with the collapse option set in the gutter drop down.
  2. joer80

    Sure. I will try to do a screen recording of building a page with a few rows attached. Do you know of a free web based one I can use? With the concept of having a page that either has detail pages as children or design rows as children, I didn't want to have pages under pages. The Navigation page holds all of my navbar container rows, which select the html tag body->header and dump inside that. The children of navbar container can be a nav_logo, nav_bar, or nav_item. (For buttons) . They have alignment and visibility options. Nav_bar can have nav_links or nav_grid children for mega menus, or you can fill out the selector text box to add a group of pages that is always accurate.
  3. joer80

    The role of my page.php page is to do this: Get the themes page and set it as a variable for later use. (Anything can access this page to get the asset timestamp, active theme, etc.) Set a variable for the selected page layout of the current page, so I know what uikit elements we are adding from that. If there is not one on the current page, check the parent for a detail page layout. Get a list of code snippets that target html tags for this page, sorted by priority. (If they match the page layout, the page, or are sitewide, implement them by adding them to the snippet array.) By implement, if its a code snippet type, it outputs the html or php using output buffer and adds to the snippet array. If its not a code snippet, it is a uikit item and I will start the output buffer also and include the template file directly. (I also set a variable for that page to use inside the template before I include it. (The $page variable gets saved as the template name.) So if its a section template, I save the $page data as a $section variable. In my "section" template, I can access itself with $section, or the root page it is on with $page. Inside the section template I can loop through $section children also, setting the children as $cell so the cell.php page can access itself with $cell->x After the snippet array is built using code snippets and uikit page templates, I loop through the /html/ page and its children. I pass that page to a render function, and it loops through the html tags listed and puts the snippets where they belong, outputting the result to the page. This is a delayed outputting format that lets a snippet tweak other snippets if needed, since they are stored in an array before output, and any snippet can target various parts of the page. ie. The last snippet loaded can still add to the head section.
  4. joer80

    Any time I have css, there are 3 main places I can put it. There is a "Themes" template that acts as a parent to all themes, and I have the Theme templates under that. The third is the page itself, which is usually a code snippet or a page layout or page. The Themes page controls the selected/active theme and holds styles that apply to every theme in its CSS box. The children are styles that only apply to themselves. So you could do a red theme, blue theme, etc. So in that case the navbar css that is not related to color goes to the parent, and all color related css would go to the child. That way you can change the active child and swap colors, but the child is nothing but color data so it is very easy to edit. They all get merged into one file on page save. The third is all page layouts, pages and snippets have css boxes as well, so if you want to add css to just one row, or one page, or one feature, you can do that without adding clutter/bloat to your theme. So if you add a sitewide snippet of "Thin Top Bar", you can add top bar css to itself so it is portable between websites. You move that one page and no theme changes are necessary on the new website. In fact, every code snippet has the fields for images, files, css, js, php, and html, so the whole feature should be portable between websites without touching the theme unless you want to. The module has 2 hooks. One hooks before page save to update the current page css and the other hooks after page save and merges all pages that have css boxes.
  5. joer80

    There are a few ways to do this. I actually have 2 page layouts per page. One for the page itself, and one for any child/detail pages it has under it. You could just force a page layout and add content there and never read children as content items/rows. Or what I did this time, which let me do both, was to allow people to add a detail page or a /content/ child item to a page. Anything put in a /content/ child is uikit stuff for that page only. If you don't add a content child, the only option is adding them to the page layout selected. The great thing about detail pages is you can still have that "fill out a form" experience when adding content, and still work as a page builder using the page layout page or a child content page as needed for one off things. One thing I have not looked into is having a page.php for one and page2.php for another. (To control what the children are used for.)
  6. joer80

    Have you used any of the open source options that would be a good alternative?
  7. joer80

    How the banner pages work: Add a slideshow to a page, its children are slides, and those can have layers. So I set the transition on the slideshow, the background and content animation type on the slide, and the content on a child layer. (Image, text, links etc.)
  8. joer80

    The HTML Snippet Targets idea I borrowed from the markup regions idea. I wanted to be able for any sitewide or page layout snippet to target any major html tag. One sitewide snippet may target inside bottom of head, and another after body/header/footer tag.
  9. joer80

    The staff and old website were already using clickdesk.
  10. joer80

    I don't have any templates locked down, just one root admin user and one programer on the project. Graphics designers can go in and swap banners and such so it would probably be good to lock down the php related page snippet templates.
  11. joer80

    New website design for HealthCARE Express. Used UIkit3 for the front end look. Jquery Store locator for the locations page. PW Modules used: Hanna code, google map marker, Inputfield Ace Extended, MarkInPageTree, Video embed for YouTube/Vimeo, and an in house asset minification module. Backend is pretty unique. Basically, I use the processwire templates for UIKit items instead of pages. ie. card.php, container.php, section.php. navbar.php, grid.php, slideshow.php. I also add some extra things like page.php, inner_page_heading.php, image.php, page_snippet.php, text.php. (Page snippet is if I want to run php.) Most of the root pages in the admin page tree use the page.php template. Their children are either detail pages or layout rows for that page. I also have a blog.php that uses the page.php file, just because that lets me force the children to be blog posts. The page and blog templates have fields like meta page title, meta page description, selected page layout, css, js, images, files. All markup is added through admin as well through things like the selected page layout. I have one page in my page tree for page layouts and I add children for the markup. ie. I can add a "Service" page layout to the backend, and add a "page heading" child, an intro "section" child, a service "grid" child, etc. You can check out screenshots. It basically gives me a page builder! The children of the grid page are forced to be cells, and have gui to select the columns and such. I have a css field and a js field attached to almost everything. On page save, if that page has one, it pulls them all and merges them all into one css file and saves it to the server with a timestamp as filename. That way all php, css, and js code is done through backend.
  12. joer80

    This is still an issue.
  13. I wonder if the slowdown you saw was just your servers mysql config file needing tweaks to increase ram it can use for sorting. Maybe you can post your my.ini file? Also, one thing pw core is not good at I have found, is getting a unique list of things. ie. Find all distinct Person names from template person, but without loading them all into memory and then looping through them all to merge them down. Is it easy to do a distinct or group by with this and set the results as a processwire page array? If so, this is a lifesafer in some situations.
  14. joer80

    My EFS setup is no longer running. I decided to take a more traditional approach that lets me login via ssh and make direct changes to the server. Sorry I could not be of more assistance!
  15. joer80

    If I do this: <link pw-append="html-head" rel="stylesheet" href="style.css" /> <link pw-append="html-head" rel="stylesheet" href="style2.css" /> It prints it on the same line in my source code. <link pw-append="html-head" rel="stylesheet" href="style.css" /><link pw-append="html-head" rel="stylesheet" href="style.css" /> Is it possible to insert a new line after the append? Thanks!