Auto breaking

Permalink
First of all: English is not my native language, but hopefully ppl that read this get my point. This is about a future I really miss in Concrete5. Concrete5 is so excellent in many ways and the ease of use getting better and better for each update, but what I really, really miss, is an option to perform breaking of the page in a set length.

For example: If you could define number of vertical blocks or pixel (just thoughts) and when the page exceed this length, it will automatically be breaking into new page. If the page layout is two columns,
you could select which column to perform auto breaking on, for example right.

Maybe it’s difficult to understand what I mean but let say that you have a site that publish news or selling products, you have set the news or product page to perform auto breaking on for example 10 vertical blocks. On the mentioned page you have reached 10 blocks and you want to add a new one (new news or new product). When you have added the new block and put the information needed and go out of editor and the page is saved or published, Concrete will add a new page (page 2) where the 11 block is shown. In addition, a navigation bar for previous and next plus page numbering is shown in the bottom.

Someone will maybe think that this is covered trough prev next block and cycle trough pages in same level but think on how extremely difficult and time consuming this is.
Let say that I have reached 10 blocks of products on one page, I make a new page in same level and name it product 2. For each new block that I add to main product page, I must copy the last one (the 11 block) to product2 page. After 1 year, I have 10 product pages, and I am going to stop to sell 4 products that is published in product3 page. I also got 2 new products that fit to be published before first product on page product5. To make it look ok, I have to rearrange all content from page product3 until last product page.

If Concrete5 had an option for automatically breaking and it for example is set to 10 blocks vertical:
I navigate to wanted product page, open editor and delete or add blocks as necessary. When I’m done and click save or publish, Concrete5 rearrange all blocks and pages so it show 10 blocks on each page that is generated.

The result I imagine would look a little bit like the page for add-ons found in Concrete5 marketplace:
A set number of blocks and a prew, next and total page navigation in bottom.

 
mnakalay replied on at Permalink Reply
mnakalay
Hello. You are talking about 2 different things. First you are asking to divide the content according to the page's physical height. Then you talk about number of blocks. It is not the same.

The first one I would say is not going to happen as it requires 2 different languages (PHP and JavaScript) to work together to deal with many different scenarios... A bit complicated.

For the second one, it really depends on what you are trying to do.

For instance, if you use the Page List block you can show a list of pages and you can decide to only show a certain number at a time. In this case, the block will automatically add pagination and you will be able to navigate between records.

Many blocks come with pagination included. Others can be modified to use it as well. Concrete5 does come with a powerful pagination module but you have to know how to code to use it in custom ways.
oddhelge replied on at Permalink Reply
Afternoon mnakalay.
Thanks a lot for your reply. Giving thoughts around this topic gives me meat on the bone to see the problems from different ways.

When I wrote about that the breaking of the page could be done either by number of vertical blocks or pixels, it’s just spinning thoughts since I’m not an programmer nor know how this can be done.

I know you have paging possibilities in Concrete5, for example paging among pages in same level of pages, but the you have to create the pages and put blocks and information on these individual pages. Like I told in my first post: my English is bad and the point I tried to describe maybe wasn’t clear enough or could be misunderstood.

I try to give an example:
You run a Concrete5 site where the main topic is news about horse racing.
For each “news” you add a block with text on the home page.
After 10 blocks with news, the home page is so long that it’s not logic to continue it,
so you make a new page in same level and you call it news2.
After a little time, the main news page have 10 text blocks and news2 have 10 text blocks so you make news3.
What happen now?, You get 1 more article you want to publish, so make a new text block on main news page. The result is that the main news page after this have 11 text blocks, so you copy-delete-paste the last text box to the top of news2 due to that you want the logical flow follow the date the text block was published. Now you have 11 text blocs on news2 and you have to do the same procedure with this page.
After 1 year you have 10 news pages and the arranging of blocks will be very time consuming if it have to be done like described.
Anyway: after this one year, it’s known that one of the horses was doped, and you don’t want to have text blocks about this horse on your site, so you delete 2 text blocks in the top of news2 page. Since You want the text blocks to follow the time stamp they was published, you have to rearrange all the blocks on pages from news2 to news 10 so the flow is 10 blocks each page that is according to time stamp.

This is just an example. The block content can be anything, but the point is that you want a certain length on the page and when it’s reached, it’s divided into a new page. This new page isn’t in the document tree, it’s a system generated page outflow from main news page (that is in the document tree) In the example I mentioned: If something like this could be realized, when you delete 2 blocks on top of the news2 page, click save or publish, the blocks are rearranged, so all pages until the last one have 10 block each.

Like I said: I’m not an programmer and I don’t know about it’s possible to make something like this or about how extreme much coding is needed to make something like this work. I just made this post to come with a suggestion where Concrete5 could become even better for sites that have a continues flow of new text boxes on one page.

I know the English is bad, I know the examples isn’t good, but hopefully you get a idea about what I try to describe

Helge
mnakalay replied on at Permalink Reply
mnakalay
To use your news example, let's say each piece of news has its own page. Maybe each is a full article.

Then you use the page list block to show a list of all your news pages. You don't need to add them to your page one by one, the page list block will make the list automatically.

You set the page list block to show only 10 articles at a time, to show pagination, and to display the list with the most recent article first.

Now you have your list, showing only titles and maybe thumbnails if you want. Clicking on any article from the list takes you to the page where you can read the full news article.

If at any time you add a new article to your site by publishing a new page containing the full news article, your page list block will automatically show the new page first and will automatically show only 10 articles and a pagination.

You really don't need to do anything manually for what you want to do.
A3020 replied on at Permalink Best Answer Reply
A3020
@oddhelge Take a look at Page Splitter if you're still trying to look for a solution to easily split up content in multiple pages: https://www.concrete5.org/marketplace/addons/page-splitter/...