Content & media fields

Rich content, media, dates, colours and links. All are free. Media fields let you choose a return format so you get exactly the shape you want in code.

Image Free

Pick an image from the media library.

Configure

Return format (array, url or id), preview size, and which library to allow.

Stores

array (default) → id, url, alt;  url → the URL string;  id → the attachment ID.

Display

<?php $img = fstn_get_field( 'headshot' ); ?>
<?php if ( $img ) : ?>
  <img src="<?php echo esc_url( $img['url'] ); ?>" alt="<?php echo esc_attr( $img['alt'] ); ?>" />
<?php endif; ?>

With return format id, use core helpers for responsive images:

<?php echo wp_get_attachment_image( fstn_get_field( 'headshot' ), 'large' ); ?>

File Free

Pick any file (PDF, zip…) from the media library.

Configure

Return format (array, url, id), library.

Stores

array (default) → id, url, filename; or the URL string / attachment ID.

Display

<?php $file = fstn_get_field( 'brochure' ); ?>
<a href="<?php echo esc_url( $file['url'] ); ?>" download><?php echo esc_html( $file['filename'] ); ?></a>

WYSIWYG Free

The full visual editor, for rich formatted content.

Configure

Which toolbar to show, and whether the media button is available.

Stores

Formatted HTML.

Display

<div class="content"><?php echo wp_kses_post( fstn_get_field( 'body' ) ); ?></div>
Escaping: a WYSIWYG value is HTML, so print it with wp_kses_post() (not esc_html, which would show the tags).

oEmbed Free

Paste a URL (YouTube, Vimeo, a tweet…) and Fieldstone turns it into an embed, exactly like pasting it into the editor.

Configure

Embed width/height where the provider supports it.

Stores

The URL you saved; on display it is rendered as the provider's embed HTML.

Display

<div class="video"><?php echo fstn_get_field( 'trailer' ); ?></div>
External service: rendering an embed asks the provider (e.g. YouTube) for its embed code — the same outbound request core makes for a pasted URL.

Date Free

A date picker.

Configure

Display format (what editors see), return format (what code receives, default Y-m-d), and the week's first day.

Stores

A string in the return format, null when empty.

Display

<?php $date = fstn_get_field( 'event_date' ); ?>
<time datetime="<?php echo esc_attr( $date ); ?>">
  <?php echo esc_html( date_i18n( 'F j, Y', strtotime( $date ) ) ); ?>
</time>

Need a time as well? See the Pro Date/Time and Time fields.

Color Free

A colour picker, with optional opacity.

Configure

Default colour, and whether opacity (alpha) is allowed.

Stores

A hex string: #rrggbb, or #rrggbbaa when opacity is below 100%.

Display

<span style="background: <?php echo esc_attr( fstn_get_field( 'brand_color' ) ); ?>;"></span>

Link Free

A URL, link text and target in one field — the same picker WordPress uses for links.

Configure

Return format (an array, or just the URL).

Stores

An array with url, title and target (default), or the URL string.

Display

<?php $link = fstn_get_field( 'cta' ); ?>
<?php if ( $link ) : ?>
  <a href="<?php echo esc_url( $link['url'] ); ?>" target="<?php echo esc_attr( $link['target'] ?: '_self' ); ?>">
    <?php echo esc_html( $link['title'] ); ?>
  </a>
<?php endif; ?>

Icon Picker Free

Choose an icon from the available set.

Configure

Which icon set to offer.

Stores

The chosen icon's identifier as a string.

Display

<span class="dashicons <?php echo esc_attr( fstn_get_field( 'icon' ) ); ?>"></span>

Post Link (Relationship, lite) Free

Link this post to another single post. The free, single-target relationship; Pro adds multi-post Relationship and Post Object fields with two-way links.

Configure

Which post types to allow, and return format (WP_Post or id).

Stores

A WP_Post object by default, or the post id.

Display

<?php $related = fstn_get_field( 'related_project' ); ?>
<?php if ( $related ) : ?>
  <a href="<?php echo esc_url( get_permalink( $related ) ); ?>">
    <?php echo esc_html( get_the_title( $related ) ); ?>
  </a>
<?php endif; ?>