Jump to content

Modular page with reordering and code reuse


microcipcip
 Share

Recommended Posts

Is there a way in ProcessWire of building single pages made of several draggable sections? For example, let's suppose that I am building the homepage and I want to have a banner section twice, a content area three times, and a testimonial section once, and a contact form at the end.

My understanding of ProcessWire is that everything is a page, so I guess that these "Sections" in the ProcessWire world would be just pages with a specific template that are not browsable by default. Is this correct, or is there any other way of building something like this?

Basically what I am looking for is a functionality like SilverStripe Blocks: https://github.com/sheadawson/silverstripe-blocks 

overview-1.0.png

Link to comment
Share on other sites

You can certainly do it using page tables or the profield matrix, but often people don't like the UX of those fields to much for this use case. But it's the best we've got for that kind of content – and seeing that silverstripe UI I think it's not so much a problem for you.

  • Like 2
Link to comment
Share on other sites

15 minutes ago, louisstephens said:

Those links are for Profields Table, which is a different thing than PageTable.

PageTable is an installable module in the core but there's no formal documentation for it. Repeater Matrix has a friendlier UI in that you can see all your content in Page Edit without having to open modals for each 'block'.

  • Like 1
Link to comment
Share on other sites

Just now, Robin S said:

Those links are for Profields Table, which is a different thing than PageTable.

PageTable is an installable module in the core but there's no formal documentation for it. Repeater Matrix has a friendlier UI in that you can see all your content in Page Edit without having to open modals for each 'block'.

@Robin S, you are correct about that. I was just editing my response as I copied the wrong links out of text file when I was posting my response. My apologies, I am going to go back and edit my response.

Link to comment
Share on other sites

Thanks a lot everyone :). It seems that PageTable field type is what I was looking for. It amaze me so much that it is included in the core, just a click away :)
The Repeater Matrix looks amazing but I haven't got the budget yet to buy the proModules, although I can't wait to try them out, expecially the FormBuilder seems a huge timesaver!

I have few questions regarding the PageTable field type.

  • Is it possible to hide from the user (in the page tree) the folder I use for containg the PageTable sections? It seems that if I restrict access to the containing template the user can't add new pages anymore.
  • How do I prevent PageTable sections from being accessibile in the front end? Should I just unpublish the containing folder and I should still be able to fetch the data right?
  • Like 1
Link to comment
Share on other sites

7 minutes ago, microcipcip said:
  • Is it possible to hide from the user (in the page tree) the folder I use for containg the PageTable sections? It seems that if I restrict access to the containing template the user can't add new pages anymore.
  • How do I prevent PageTable sections from being accessibile in the front end? Should I just unpublish the containing folder and I should still be able to fetch the data right?

The solution to both of these is to create a parent for your PageTable pages under the Admin branch of the tree.

Edit: actually, that doesn't deal with the second question, but this thread has some techniques for disallowing direct access to a page:

 

  • Like 3
Link to comment
Share on other sites

2 minutes ago, microcipcip said:

I created a "editor" role with this access (see attachement) but I get the error in the second attachment

The parent of the PageTable pages must use a template that the editor has "add children" permission for.

2017-02-11_112212.png

  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...