ACF My Media Cluster

0

ACF My Media Cluster is an extension for Advance Custom Fields which adds the feature to create groups of media files for download on a page/post/custom post type. The plugin does come

Version
Last updated
Active installations
WordPress Version
Tested up to
Rating
Total ratings
Tags
This plugin is outdated and might not be supported anymore.

Description

ACF My Media Cluster is an extension for Advance Custom Fields which adds the feature to create groups of media files for download on a page/post/custom post type. The plugin does come with both a simple to use shortcode and a helper function if you wish to customize your output.

  • Visually create your Fields in the ACF interface.
  • Assign your fields to post types
  • Easily load data through a simple and friendly helper function, or just use the shortcode.
  • Uses the native WordPress custom post type for ease of use and fast processing
  • Uses the native WordPress metadata for ease of use and fast processing
  • Add multiple media files to your posts, pages, and custom post types. You can also modify title, caption and description from this interface.

Usage

Use the helper function below to pull data from the database. The function will be return an array. The helper function takes in 3 parameters.

acf_media_cluster(string|required $acf_field_name, int $postID, array $options);

Example

Based on the helper function above. Let say we want to pull annual reports from current page.

acf_media_cluster('annual_reports', get_the_ID());

The data that will be return will be an array. You can then loop over the array and use the data anyway you want.

$ap = acf_media_cluster('annual_reports', get_the_ID());
if( !empty($ap) ){
    foreach($ap as $item){
        var_dump($item); //Use the data as you wish
    }
}

Options

The 3rd parameter of the acf_media_cluster(string|required $acf_field_name, int $postID, array $options); helper function is options which takes in an array. You can pass the following:

acf_media_cluster('annual_reports', get_the_ID(), array(
    'orderby' => 'post__in',
    'order' => 'ASC'
));

For acceptable values for order and orderby, please refer to https://developer.wordpress.org/reference/functions/get_posts/

Shortcode

In your editor, add the following shortcode where you want the media to appear.

[acf-media-cluster field_name="my_media_field"]

The shortcode accepts the following parameters.

string|required $field_name – Which ACF field name should be used
string $container_id – Wrap the output with your custom CSS ID name
string $container_class – Wrap the output with your custom CSS class name
string $skin – Do you want default CSS styling to apply? yes|no
string $format – html format for the output. table|list
string $title – a title wrapped in an container tag. Leave blank for no tag.
string $title_container – html tag to wrap the title in, with no brackets. “h3” is default.
string $show_meta – Do you want to display file metadata (size, downloads, date)? yes|no

Compatibility

This ACF field type is compatible with:
* ACF 6
* ACF 5

This ACF field is compatible with the iThemes Security plugin, but you must uncheck the option for “Disable PHP in plugins” under PHP Execution in System Tweaks.

Credits

This plugin is based on ACF Media Cluster by Navneil Naicker. (https://wordpress.org/plugins/acf-media-cluster/)

It also takes some inspiration from the Download Attachments plugin by dfactory, which sadly no longer exists.