Posts by JayW

    not going to be a viable option going forward

    Are dinner plates really smashing around us? Websites crashing on the floor in pieces? I'm not seeing that. Remember it doesn't need to do everything under sun, it's a platform you can extend however you like. V3 did bring a lot of cool stuff, it's got a premium vibe, easy learning curve, and underrated "secret sauce" of how it combines with templating and functions. In terms of a fast user-friendly place to put web content, for your apps or whatever, I struggle to see other options able to pull the same bag of tricks. I like open source too, but always happy to pay for well-designed software. When clients understand that, they're not going to listen to your post. BTW, you signed up just to announce you won't be using the software anymore?

    I see. I've built one shop site and never had this issue, but looking on my dev site, yes it does default to zero...

    But only if I deliberately leave the sale_price blank, and also check the box "use sale price"! That's human error. But I suppose it's fair enough to want to defend against human error when the consequence might mean selling an expensive item for $0.

    Perhaps I'm missing something, but can't you simply check if sale price is populated?

    <perch:if exists="sale_price">

    Another suggestion is to add a checkbox to the template:

    <perch:shop id="on_sale" type="checkbox" value="1" label="Use sale price" suppress="true" />

    And then :

    <perch:if exists="sale_price AND on_sale">

    $<perch:shop id="sale_price" />

    <perch:else />

    $<perch:shop id="price" />

    The benefit here is that you can have a sale price ready to go, and then check box to activate it.

    Maybe it's just me but I don't mind infrequent updates, and value a stable version. I would keep using Perch for years even without updates, because of the extensive toolset. I'd be surprised to find a similar range of tools that often effortlessly work together and link up well. All those templating attributes! They get me out of trouble all the time. With Wordpress, developing there felt like I was continuously falling down an icy chasm :-)

    Thanks but I already knew about that. I was hoping to get the total in the collection function, as I'm outputting the total at the top of the page, not down near the pagination links.

    The other problem with the pagination template var "total", is it only kicks in when there's pagination. So if there's 20 or less results when pagination count is 20, that variable can't be accessed.

    It's okay I've found a workaround. I'm using a condition where count ($col_item) is used when there's not enough results for pagination, and the pagination template var when there's more than 1 page of results. Bit messy, but works. And to get the total up the page where I need it displayed, I'm using CSS :

    essentially :

    <perch:if exists="paging">


            .num-items::before {

                content: "<perch:content id="total" type="hidden">";


            <perch:if id="number_of_pages" match="gt" value="1" >

                .num-items-b {display:none}





    I have a user-filtered list working great and Perch Runway really is amazing for enabling this powerful filtering.

    But I noticed that if I use pagination, the number of items returned is confined to that number. I want pagination, but I want to inform the user the total results.

    Now... I *could* perform another identical call, but without pagination. It works, but it feels like a waste of energy to do double the load on server just to get that number. Is there any way I get can the total results in just the first call? Seems like that number must be available somewhere, otherwise how would it know how many page links to render?

    code: if 40 results are found and paginated into 20 per page, it only reports 20 were found when I use php count() to get that info. I'm hoping there's an easy way. I wanted to avoid too much complicated php :-)

    edit how do i format code on this forum so it's neat?

    1. $col_item = perch_collection('my_collection', [ 'filter' => $filters, 'template' => 'my-collection/my-template.html', 'paginate' => true, 'count' => 20, 'sort' => $sort_id, 'sort-order' => $sort_order, 'sort-type' => $sort_type, 'skip-template' => true, 'return-html' => true, ]);

    Simple, minimal, stylish, artistic colours, good photography...

    BUT... I gather it's meant for mobiles only, not 34 inch ultrawide desktop monitors! It's a common problem as more designers forget to cater for the larger end of responsive. Everything scales up to super jumbo size on large displays.

    For example on your /gallery index page, you have 4 categories, but only 3 are visible on my screen, even when I have more than 80 cm of physical horizontal screen space available I still need to horizontally scroll to see the 4th category. That's a "mobile first, desktop never" approach.

    I was reading a thread about perch 4,

    Maybe you missed this quote from the lead dev:

    "progress is still being made, updates are still coming, and support is still here. Perch isn't about to stop or disappear or anything like that. It's just that at the current volume of license sales I need to do other work"

    Fair enough.

    Life can't be too bad when your side-hustle is Perch Runway! good times.

    Same here, found a bunch of member sign-up spam on a client's shop site. Most of it from last November.

    I tried adding the honeypot, but it didn't work. It seems the honeypot field only works with the forms app, not shop member rego?

    In theory it should be easy to solve when the spammers put links and sentences about bitcoin in the first and last name fields. Detecting this with javascript is easy, but then I'm not sure what to do from there. Ideally the form would successfully submit, as with honeypot, but not go all the way to creating a new member.

    Also, no bulk deletion of members! Ouch, all that clicking delete/confirm over and over.

    I have an orders history page too, where all previous invoices are listed. I added a print style sheet to the invoice template, so the invoice page looks nicely formatted when printed, without site navigation etc.

    Web browsers can save to PDF via the print dialog box, so there's no need to re-create functionality that's built into browser. If you're worried people don't know about this, you could always mention it on the invoice page. Anyway, good luck if you decide to generate PDFs!

    If customer already receives invoice via html email, my thoughts on this are it's up to user to manage what happens from that point. Some might want to "print" or downloaded as PDF, which most email clients and web browsers can do when select print from the menu. I guess you want to ignore that and generate the PDF anyway.

    I hate code bloat and that's why I like Perch

    Have you made a site with Perch before? If you try, you can make a bloated whale with Perch. Your frontend is up to you.

    If you're looking for 5 star reviews of Perch, mid-way through asking for help on contact forms... that could be a red flag.

    Or just build the demo site. Stay up late a few nights in a row. Just do it! Then you can write your own review of Perch.

    If you want super-flexible form submission control, maybe use an external service such as JotForm, then embed on your site. These services are not always free, and come with some bloat and performance loss compared with native forms, but have handy form builders and conditional logic widgets and other cool features. They make it easy to send data on to other systems like google docs, zapier etc.

    I think you've answered it yourself. Just add the code as you suggested into the author.html template.

    Then in post.html template, add it again, remember to make it hidden field like the others...

    1. <perch:if exists="authorGivenName">
    2. by <span class="p-author"><perch:blog id="authorGivenName" type="hidden" /> <perch:blog id="authorFamilyName" type="hidden" />, <perch:blog id="authorRole" type="hidden" /></span>
    3. </perch:if>

    Hi Hussein, thanks for your thoughts.

    I tried using your Pipit plugin to detect if user is logged in, and it works except for a small glitch. Sometimes it kicks the user out of control panel, (logs them out) when editing the page where the logged-in check is happening. This might be a glitch specific to the environment here, I'm not sure. Not a big deal, but I ended up removing the Pipit plugin and instead rely solely on a hidden URL. This was for a site help page for editors, intended to be seen only by them.

    Roles are great, but I would still like tags on top of that. So that for example "Editor Pete" could have slightly different page edit access than "Editor Penny". This would also be beneficial when giving control panel access to third parties, such as marketing agencies or copywriters who may only need access to specific pages.

    Jotted down a few notes after a recent Runway build. Most of these ideas are (probably) minor things, and some of them would not be new suggestions.

    In no particular order:

    * Last edited by, and date

    Surprising omission, but it would be great if all editable items in the control panel showed "Last edited by (user) on (date+time)." Bonus points for clicking that text to get a full history of edits for that item.

    * Dangerous Undo

    Possibly the world's most dangerous undo button. This loaded shotgun reverts to previous version and publishes immediately without a re-do safety net. Unless editors expect that behaviour, they may get a surprise. Suggestion might be a confirmation prompt stating what is about to happen, or even a label change to something like "revert"; or just add a re-do safety net.

    * Control panel side navigation

    Another world first - a menu with pagination - its own back button! Nobody gets it. I ended up making a custom menu for editors, which is great, but there's still an awkward back arrow and "pages" item above the custom menu. I'd like to hide that, leaving only the custom menu.

    * html links in notes-before

    Love the notes-before feature. Would love even more if I could pop an HTML link in there, so I could open a new tab with some more information for editors.

    * Tags for perch editors, similar to member tags.

    Or just a solution to have certain pages hidden or inaccessible in the control panel, from certain editors. Currently it's all or nothing.

    * If (user X is perch editor with tag y) then show page.

    Following on from above suggestion, a way to display pages on the site only if editors are logged in to control panel, and have specific tags, otherwise the page returns a 404. So basically just like member tags, except for perch control panel users. It's not practical to have editors "sign up" again to the site, just so they can see exclusive site content meant for staff only.

    * The help link in top right should open new window/tab

    Navigating away from the edit form can cause problems when going back. The help link should open new tab by default.

    * Option to omit assets from search results.

    Using global search in control panel returns everything including resources. The problem is these resources can pollute the returned results. If the user is trying to find a collection item, it would be helpful if they could optionally exclude resources from the returned results.

    My 2 cents: I support perpetual license with maintenance as a good compromise.

    Out of box thinking - I wonder what would happen if Perch was offered for free, and Runway increased by the price that Perch was? Or have a free edition where everything worked, but put hard limits on collection item/product counts? Marketing and incentives for new users are important, and these things could be improved for Perch.

    As a creative frontend dev I've been working with CMS systems since Vignette Story Server days of late 90's early 00's. It no longer exists, the founders retired early having made millions from hard-selling their clunky difficult system to enterprise. But is that the goal? To make millions and retire early? Story Server was bad, but I've seen a lot worse in the CMS space. Perch Runway is a breath of fresh air compared with memories of clunky control panels of the past, or "do you want fries with that" plugin ecosystems of the present. Wordpress gives me a headache, there's always something bleeting at you for attention in the admin panel. Perch is more relaxed, and I hope that continues. It needs to continue one way or the other!