Having a problem with your social media content? Too much competition to deal with? Worry not! Here is how a Rephraser can help.
Automation software greatly reduces payroll processing errors, enhances compliance, increases efficiency, and makes paychecks easier to create and file. Automation […]
The Internet is a part of our everyday life nowadays. Every day we spend a good amount of time on […]
Whether you aspire to start a small business or launched a digital marketing agency, you must spend sufficient time reading […]
All entrepreneurs need problem-solving and innovative skills. Finding solutions or creating new possibilities is accomplished through problem-solving. The ability to […]
Shopping for 2D animation software for your next project? Here are five of the best 2D Animation tools that are worth exploring.
In current digital marketing, inbound link creation directly correlates with online success. Link building is all about gaining inbound connections, […]
As a business owner, you know that maintaining strong customer relationships is crucial for success. A customer relationship management (CRM) […]
How to create and style an HTML Table in Oxygen builder using dynamic data from ACF Repeater table.
With the recent updates of Oxygen bringing the Repeater fields to the builder. It's a great addition, which opens up to a lot of possibilities. One particular use that I needed for the Oxygen Repeater module (using ACF Repeater) is to output the results as a table.
The builtin Repeater in Oxygen builder doesn't allow for such manipulation at the moment. However, there's a workaround solution to get Oxygen builder output ACF Repeater table. Which you can style further with the magic of CSS.
Step 1: Starting ACF Repeater table
Create your custom repeater fields, in this example I'll create a simple [subject] [result] table. The method can be replicated to any number of columns.
Create a field group:
Label: Subject & Results
Field name: r_subject_&_results
Field type: Repeater
Expand the Repeater field and add the nested fields. In this case will be:
Label: Subject with field name: r_subject.
Label: Result with field name: r_result
Step 2: Using Oxygen Builder
Create the template, page, any other CPT you want to add the table to.
Insert the Code Module, and add below PHP code:
r_subject_&_results = ACF Repeater
r_subject = Field 1
r_result = Field 2
<!-- repeater fields table output-->
$i = 0;
if( have_rows('r_subject_&_results') ): ?>
<?php while( have_rows('r_subject_&_results') ): the_row(); $i++;
$post = get_sub_field('r_subject');
if( empty($post) )
setup_postdata( $post );
<?php if( $i == 1 ): ?>
<?php endif; ?>
<td><?php the_sub_field('r_subject'); ?></td>
<td><?php the_sub_field('r_result'); ?></td>
<?php if( $i == 2 ): $i = 0; ?>
<?php endif; ?>
<?php endwhile; ?>
<?php wp_reset_postdata(); // IMPORTANT - reset the $post object so the rest of the page works correctly ?>
<?php endif; ?>
The above code will basically create a table based on the ACF repeater fields r_subject and r_result
Step 3. Applying CSS Styles to the Table
As you can see in the above code, the table is created and given a class of r-table
And just like an HTML Table it has < th > and < tr > that you can style further.
This is easily done with CSS. Here's a reference to CSS Tables styling on W3School.
if you have any question, feel free to write in the comments below.