Recommendation for FX Builder

After moving a site to CP I tried @Ciprian 's FX Builder.

I found something in the page builder that is lacking - but would make it super friendly to use.

It’s fine for new posts, but you can’t edit existing posts. Which is what I think 90% of people would want to do with the plugin. SO when I switch to FX Builder tab I get a blank screen if I have existing content.

What most page builders do, is import all the content over to one builder container (usually the classic editor type widget), and then you can edit the page accordingly. I think this would be a good addition to the FX Builder plugin. Since I think most people will be importing existing sites over to CP.

Yes, I am aware of this, but I could not find a reliable way of migrating the content over.

The idea is that if you have an old page (using the classic editor) and you install FX Builder, you will now have to copy the old content into FX Builder and split it into columns, or sections.

  1. Should I do this automatically, by creating a one-column layout and inserting the content there, same as the (Gutenberg) block editor creates a default classic block?

  2. Or should I allow the user to create, copy and paste content into FX Builder, practically rebuilding the page?

Going with #1, would require creating some hooks to create sections programmatically, and this might also help in the future with creating preset layouts, for example “insert a 3-column row” quick button.

So, in conclusion, your idea is good, but it requires a bit of work. I’ll add it to my TODO list.

1 Like

Hello @Ciprian
Option 1 is what most page builders do - just dump it all in one “classic” type column.

Option 2 would be too difficult I think, and who knows what code or shortcodes people add to their sites - could end up a real mess trying to make that work.

Thank you for considering this option. :pray:

Option 1 is the easiest, indeed, but after dumping everything in a 1-column section, the user will still need to reorganize the content and place it manually into various columns and rows.

Option 2 would need to be explained via contextual help and tutorials.

Back to option 1, I will make this a high priority, as it needs a few hooks. For example, something like:

function fbx_create row( $type, $content ) {}

And then I could call it with the actual page content:

global $post;

fbx_create_row( '1-column', $post->content );

The function above could then be called by other plugins or developers to dynamically create preset layouts.

Still, a ways to go.

Well, option 1 would allow to open existing content in FX then yes, with minimal copy paste one can edit and organize.
It is the most straight forward. After all if I go in to edit, and it gets converted to a single column layout then I can decide to beautify it a little by sectioning my existing post and arranging content into columns.

1 Like

I agree with this.

It should be done within 2 weeks (ish).

I have created a GitHub issue - Import classic editor content to FX Builder · Issue #3 · wolffe/fx-builder · GitHub -, if you need more context or if you want to contribute :smiley:

2 Likes

Hey @Ciprian does your FX Builder allow for adding Class and Div values to the containers?
For example:
class="about-col-2"

1 Like

Yes it does.

1 Like

To the containers, yes, to the individual columns, no.

But you can add a class called .container-7 and then target the 2 columns inside as .container-7 .fxb-col-1 and .container-7 .fxb-col-2.

image

1 Like

Hi @Ciprian that’s perfect. :+1:

As I’m rebranding Web242 soon, I going to just go full in with CP and your FX Builder.

While more CSS, I think it will be a much easier experience than working with Elementor. And the site will load faster too!

3 Likes

Definitely faster! And thank you!

2 Likes

Hi Ciprian,
The premium versions of page-builders allow people to add sitewide headers and footers to their website. Makes life a heck of a lot easier for designers.

( Not the <header> and <footer> code, I mean as page-builder templates )

This would be a real game-changer. If you do consider it, I’d be pleased to support this as a premium feature for building new sites.

Regards,
Avrom

1 Like

In one of my themes, I have a new CPT called Template Part. This is used for header, footer, various sidebars, and various other sections of the website. I used the Pattern (wp_block CPT in WordPress, until they broke it), and then I coded my Template Parts.

I could do the same here, and have these Template Parts usable for more than the header and footer.

I would then need to code an inserter in FX Builder to insert a template part.

Is this how you’re seeing it?

2 Likes

Hi Ciprian,
That CPT even adds more flexibility and options.:+1:

I’m thinking though of a dedicated header or footer template (to use your term). So when that template is activated it replaces the theme header or footer.

Is that different than what you meant?
Thanx.

2 Likes

It is different, yes.

But the dedicated header/footer would still be a CPT (behind the scenes). I have never used a page builder myself before, so I don’t know exactly how they work, but I’m thinking they hook into the wp_head() and the wp_footer() functions.

But wp_head() only contains the code in the <head> element.

Not sure how I would approach this. I’ll think about it, though. Maybe I’ll research some other page builders and see how they are doing it.

I think the head and foot sections are in the page body.
But in a page builder they are generally not directly editable when doing page content.
For example In elementor you can create several Head or Foot Sections if you wanted and select which page they display on. So on a membership site the non-member pages might have a join button rather than the full menu that signed in members get

1 Like

I see.

I’m trying to keep the plugin simple, and Elementor is the opposite of that. I’m trying not to compare it with Elementor.

The problem here is injecting the custom header/footer in the body, which will start to add bloat to the plugin.

Hi Ciprian,
Not only bloat, but maybe potential problems as well. Yes keep it lightweight as you originally planned. That is kinda the whole point.

But I’ll certainly take template parts. That is useful. Could place those right into theme files I think. Useful for client sites. :+1:

That’s what you meant, right?

Thank you for considering the ideas.

1 Like

Currently, my theme and some of my plugins use these template parts natively, i.e. they have support baked in via PHP.

But I could definitely provide PHP functions to add in your own theme. Something along these lines:

<?php
if ( function_exists( 'fx_get_template_part' ) {
    fx_get_template_part( 123 );
}
?>

And in your Template Parts CPT section, you would have the actual design:

My example above is from a Real Estate website.

1 Like

(apologies I deleted my post by accident on mobile. SO reposting.)

Hi Ciprian,
Not only bloat, but maybe potential problems as well. Yes keep it lightweight as you originally planned. That is kinda the whole point.

But I’ll certainly take template parts. That is useful. Could place those right into theme files I think. Useful for client sites. :+1:

That’s what you meant, right?

Thank you for considering these options.

1 Like