Guide

Page builder conversion rules

Complete flat_html_rules sets for the builders whose markup a generic converter cannot read on its own: Bricks, Elementor, Divi, Oxygen and GenerateBlocks. Copy the block for the builder the site uses into your config file — or combine several, which is what a site that changed builders once already needs.

Below are complete configuration examples for popular WordPress page builders.

Bricks Builder

 1# config-bricks.yaml
 2flat_html_rules:
 3  # Headings
 4  - class: "brxe-heading"
 5    tag: "div"
 6    markdown: "## {content}\n\n"
 7  - class: "brxe-heading"
 8    tag: "h1"
 9    markdown: "# {content}\n\n"
10  - class: "brxe-heading"
11    tag: "h2"
12    markdown: "## {content}\n\n"
13  - class: "brxe-heading"
14    tag: "h3"
15    markdown: "### {content}\n\n"
16
17  # Text blocks
18  - class: "brxe-text"
19    markdown: "{content}\n\n"
20  - class: "brxe-text-basic"
21    markdown: "{content}\n\n"
22
23  # Lists
24  - class: "brxe-list"
25    markdown: "{content}\n\n"
26
27  # Buttons (extract as links)
28  - class: "brxe-button"
29    markdown: "[{content}]\n\n"
30
31  # Code blocks
32  - class: "brxe-code"
33    markdown: "```\n{content}\n```\n\n"

Elementor

 1# config-elementor.yaml
 2flat_html_rules:
 3  # Headings
 4  - class: "elementor-heading-title"
 5    markdown: "## {content}\n\n"
 6  - class: "elementor-size-large"
 7    markdown: "# {content}\n\n"
 8  - class: "elementor-size-medium"
 9    markdown: "## {content}\n\n"
10  - class: "elementor-size-small"
11    markdown: "### {content}\n\n"
12
13  # Text widgets
14  - class: "elementor-text-editor"
15    markdown: "{content}\n\n"
16  - class: "elementor-widget-text-editor"
17    markdown: "{content}\n\n"
18
19  # Buttons
20  - class: "elementor-button-text"
21    markdown: "[{content}]\n\n"
22
23  # Lists
24  - class: "elementor-icon-list-text"
25    markdown: "- {content}\n"
26
27  # Testimonials
28  - class: "elementor-testimonial-content"
29    markdown: "> {content}\n\n"
30  - class: "elementor-testimonial-name"
31    markdown: "<strong>{content}</strong>\n\n"
32
33  # Tabs and accordions
34  - class: "elementor-tab-title"
35    markdown: "### {content}\n\n"
36  - class: "elementor-tab-content"
37    markdown: "{content}\n\n"
38  - class: "elementor-accordion-title"
39    markdown: "### {content}\n\n"
40  - class: "elementor-accordion-content"
41    markdown: "{content}\n\n"

Divi Builder

 1# config-divi.yaml
 2flat_html_rules:
 3  # Module titles
 4  - class: "et_pb_module_header"
 5    markdown: "## {content}\n\n"
 6
 7  # Text modules
 8  - class: "et_pb_text_inner"
 9    markdown: "{content}\n\n"
10
11  # Blurb modules
12  - class: "et_pb_blurb_content"
13    markdown: "{content}\n\n"
14  - class: "et_pb_blurb_title"
15    markdown: "### {content}\n\n"
16
17  # Buttons
18  - class: "et_pb_button"
19    markdown: "[{content}]\n\n"
20
21  # Testimonials
22  - class: "et_pb_testimonial_description"
23    markdown: "> {content}\n\n"
24  - class: "et_pb_testimonial_author"
25    markdown: "<strong>{content}</strong>\n\n"
26
27  # Tabs
28  - class: "et_pb_tab_title"
29    markdown: "### {content}\n\n"
30  - class: "et_pb_tab_content"
31    markdown: "{content}\n\n"
32
33  # Toggle/Accordion
34  - class: "et_pb_toggle_title"
35    markdown: "### {content}\n\n"
36  - class: "et_pb_toggle_content"
37    markdown: "{content}\n\n"
38
39  # Pricing tables
40  - class: "et_pb_pricing_title"
41    markdown: "### {content}\n\n"
42  - class: "et_pb_pricing_content"
43    markdown: "{content}\n\n"

Oxygen Builder

 1# config-oxygen.yaml
 2flat_html_rules:
 3  # Headings
 4  - class: "ct-headline"
 5    markdown: "## {content}\n\n"
 6  - class: "ct-headline"
 7    tag: "h1"
 8    markdown: "# {content}\n\n"
 9  - class: "ct-headline"
10    tag: "h2"
11    markdown: "## {content}\n\n"
12  - class: "ct-headline"
13    tag: "h3"
14    markdown: "### {content}\n\n"
15
16  # Text blocks
17  - class: "ct-text-block"
18    markdown: "{content}\n\n"
19
20  # Rich text
21  - class: "ct-rich-text"
22    markdown: "{content}\n\n"
23
24  # Buttons
25  - class: "ct-button"
26    markdown: "[{content}]\n\n"
27
28  # Links
29  - class: "ct-link-text"
30    markdown: "{content}\n\n"

GenerateBlocks

 1# config-generateblocks.yaml
 2flat_html_rules:
 3  # Headlines
 4  - class: "gb-headline"
 5    markdown: "## {content}\n\n"
 6  - class: "gb-headline"
 7    tag: "h1"
 8    markdown: "# {content}\n\n"
 9  - class: "gb-headline"
10    tag: "h2"
11    markdown: "## {content}\n\n"
12  - class: "gb-headline"
13    tag: "h3"
14    markdown: "### {content}\n\n"
15
16  # Buttons
17  - class: "gb-button"
18    markdown: "[{content}]\n\n"
19  - class: "gb-button-text"
20    markdown: "{content}"

Combining Multiple Page Builders

If your site uses multiple page builders or plugins, you can combine rules:

 1# config-combined.yaml
 2flat_html_rules:
 3  # Bricks Builder
 4  - class: "brxe-heading"
 5    markdown: "## {content}\n\n"
 6  - class: "brxe-text"
 7    markdown: "{content}\n\n"
 8
 9  # Elementor
10  - class: "elementor-heading-title"
11    markdown: "## {content}\n\n"
12  - class: "elementor-text-editor"
13    markdown: "{content}\n\n"
14
15  # WPBakery/Visual Composer
16  - class: "vc_custom_heading"
17    markdown: "## {content}\n\n"
18  - class: "wpb_text_column"
19    markdown: "{content}\n\n"
20
21  # Gutenberg blocks
22  - class: "wp-block-heading"
23    markdown: "## {content}\n\n"
24  - class: "wp-block-paragraph"
25    markdown: "{content}\n\n"
26  - class: "wp-block-quote"
27    markdown: "> {content}\n\n"