Home

Creating a drop down menu with custom links

Custom fields are a native part of WordPress and appear on pages, posts and custom post types, however, the native custom field interface is not very user friendly. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean pretium dictum augue, eu lobortis sem consequat eu. Mauris luctus nec magna a mattis. Aenean dapibus tincidunt lectus in ultricies.

Install the ACF plugin

Custom fields are a native part of WordPress and appear on pages, posts and custom post types, however, the native custom field interface is not very user friendly. With ACF installed, you can tailor what fields to show and what they look like. For instance, you may require a ‘Hero Image’ to be selected for your home page. You can use ACF to easily create this Image field and show it when editing the home page! Here is the difference between native custom fields and Advanced Custom Fields.

How to install ACF
<h1><?php the_title(); ?></h1>

<?php if ( get_field('sub_heading' ) ): ?>
    <h2><?php echo esc_html( get_field('sub_heading') ); ?></h2>
<?php endif; ?>

<div class="hero">
    <?php $image = get_field('hero_image'); ?>
    <img src="<?php echo esc_url( $image['url'] ); ?>" alt="<?php echo esc_attr( $image['alt'] ); ?>" />
</div>

<?php if( have_rows('event') ): ?>
    <ul>
    <?php while( have_rows('event') ): the_row(); ?>
        <li>
            <a href="<?php echo esc_url( get_sub_field( 'url' ) ); ?>"><?php echo esc_html( get_sub_field( 'title' ) ); ?></a>
        </li>
    <?php endwhile; ?>
    </ul>
<?php endif; ?>

Field groups are used to organize fields and attach them to edit screens. Each field group contains a title, fields, location rules and visual settings. To get started with your first field group, please read our Creating a Field Group guide.

Create new fields

Cras lacinia ultrices lacus. Cras eget ex scelerisque, ultricies diam sed, ultricies nisi. Aliquam tristique neque a quam sollicitudin, eu tincidunt ligula congue. Maecenas at velit eget nunc venenatis dapibus sed eu neque. Fusce ornare est convallis lacus condimentum, non ullamcorper elit sollicitudin. Ut a lectus sapien. Sed convallis sem nec orci ultricies, fringilla venenatis nunc ullamcorper. In mattis feugiat ex, vitae tempor tellus consectetur vitae. Pellentesque nibh ligula, eleifend vel ante ultrices, imperdiet elementum purus. Nunc faucibus at sapien quis pharetra. Duis ultricies tincidunt magna, sed efficitur ipsum maximus ut. Aliquam eleifend congue sollicitudin. Nulla facilisi. Vivamus posuere a turpis cursus faucibus. In mi magna, porta vitae maximus at, interdum ut nisi. Quisque ut ante elit.

  • Install the ACF plugin
  • Create new fields
  • Create field content
  • Display fields in your theme
  • Register custom post types and taxonomies

Create field content

Cras lacinia ultrices lacus. Cras eget ex scelerisque, ultricies diam sed, ultricies nisi. Aliquam tristique neque a quam sollicitudin, eu tincidunt ligula congue. Maecenas at velit eget nunc venenatis dapibus sed eu neque. Fusce ornare est convallis lacus condimentum, non ullamcorper elit sollicitudin. Ut a lectus sapien. Sed convallis sem nec orci ultricies, fringilla venenatis nunc ullamcorper. In mattis feugiat ex, vitae tempor tellus consectetur vitae. Pellentesque nibh ligula, eleifend vel ante ultrices, imperdiet elementum purus. Nunc faucibus at sapien quis pharetra. Duis ultricies tincidunt magna, sed efficitur ipsum maximus ut. Aliquam eleifend congue sollicitudin. Nulla facilisi. Vivamus posuere a turpis cursus faucibus. In mi magna, porta vitae maximus at, interdum ut nisi. Quisque ut ante elit.

Display fields in your theme

Cras lacinia ultrices lacus. Cras eget ex scelerisque, ultricies diam sed, ultricies nisi. Aliquam tristique neque a quam sollicitudin, eu tincidunt ligula congue. Maecenas at velit eget nunc venenatis dapibus sed eu neque. Fusce ornare est convallis lacus condimentum, non ullamcorper elit sollicitudin. Ut a lectus sapien. Sed convallis sem nec orci ultricies, fringilla venenatis nunc ullamcorper. In mattis feugiat ex, vitae tempor tellus consectetur vitae. Pellentesque nibh ligula, eleifend vel ante ultrices, imperdiet elementum purus. Nunc faucibus at sapien quis pharetra. Duis ultricies tincidunt magna, sed efficitur ipsum maximus ut. Aliquam eleifend congue sollicitudin. Nulla facilisi. Vivamus posuere a turpis cursus faucibus. In mi magna, porta vitae maximus at, interdum ut nisi. Quisque ut ante elit.

Cras lacinia ultricesUllamcorperPellentesqueTincidunt
Pellentesque nibh ligulaPellentesque nibh ligulaPellentesque nibh ligulaPellentesque nibh ligula
Duis ultricies tincidunt magnaDuis ultricies tincidunt magnaDuis ultricies tincidunt magnaDuis ultricies tincidunt magna
Duis ultricies tincidunt magnaDuis ultricies tincidunt magnaDuis ultricies tincidunt magnaDuis ultricies tincidunt magna
Duis ultricies tincidunt magnaDuis ultricies tincidunt magnaDuis ultricies tincidunt magnaDuis ultricies tincidunt magna
Sample Table Caption

Cras lacinia ultrices lacus. Cras eget ex scelerisque, ultricies diam sed, ultricies nisi. Aliquam tristique neque a quam sollicitudin, eu tincidunt ligula congue. Maecenas at velit eget nunc venenatis dapibus sed eu neque. Fusce ornare est convallis lacus condimentum, non ullamcorper elit sollicitudin. Ut a lectus sapien. Sed convallis sem nec orci ultricies, fringilla venenatis nunc ullamcorper. In mattis feugiat ex, vitae tempor tellus consectetur vitae. Pellentesque nibh ligula, eleifend vel ante ultrices, imperdiet elementum purus. Nunc faucibus at sapien quis pharetra. Duis ultricies tincidunt magna, sed efficitur ipsum maximus ut. Aliquam eleifend congue sollicitudin. Nulla facilisi. Vivamus posuere a turpis cursus faucibus. In mi magna, porta vitae maximus at, interdum ut nisi. Quisque ut ante elit.

Register custom post types and taxonomies

Cras lacinia ultrices lacus. Cras eget ex scelerisque, ultricies diam sed, ultricies nisi. Aliquam tristique neque a quam sollicitudin, eu tincidunt ligula congue. Maecenas at velit eget nunc venenatis dapibus sed eu neque. Fusce ornare est convallis lacus condimentum, non ullamcorper elit sollicitudin. Ut a lectus sapien. Sed convallis sem nec orci ultricies, fringilla venenatis nunc ullamcorper. In mattis feugiat ex, vitae tempor tellus consectetur vitae. Pellentesque nibh ligula, eleifend vel ante ultrices, imperdiet elementum purus. Nunc faucibus at sapien quis pharetra. Duis ultricies tincidunt magna, sed efficitur ipsum maximus ut. Aliquam eleifend congue sollicitudin. Nulla facilisi. Vivamus posuere a turpis cursus faucibus. In mi magna, porta vitae maximus at, interdum ut nisi. Quisque ut ante elit.

JS components

Curious which components explicitly require our JavaScript and Popper? If you’re at all unsure about the general page structure, keep reading for an example page template.

  • Alerts for dismissing
  • Buttons for toggling states and checkbox/radio functionality
  • Carousel for all slide behaviors, controls, and indicators
  • Collapse for toggling visibility of content
  • Dropdowns for displaying and positioning
  • Modals for displaying, positioning, and scroll behavior
  • Navbar for extending our Collapse and Offcanvas plugins to implement responsive behaviors
  • Navs with the Tab plugin for toggling content panes
  • Offcanvases for displaying, positioning, and scroll behavior
  • Scrollspy for scroll behavior and navigation updates
  • Toasts for displaying and dismissing
  • Tooltips and popovers for displaying and positioning