WordPress maintenance or security needs? Reach out!
TLDWP

Plugin: navz-photo-gallery (Used by 12 domains)

ACF Photo Gallery Field

Important Notice for New Users of ACF Photo Gallery Field

If you are installing the ACF Photo Gallery Field for the first time on your WordPress website, we’d like to inform you that this plugin will no longer be maintained as of October 2024. As an alternative, we have launched a new and improved plugin called ACF Galerie 4.

We encourage you to check out ACF Galerie 4 for enhanced features and ongoing support. ACF Galerie 4 includes a built-in migration tool that seamlessly transfers data from ACF Photo Gallery Field or ACF Gallery Pro to ACF Galerie 4. Learn more.

Thanks

A lightweight extension of Advanced Custom Field (ACF) that adds Photo Gallery field to any post/pages on your WordPress website.

  • Visually create your Fields
  • Add multiple photos and you can also modify title, caption and link to anything
  • Assign your fields to multiple edit pages (via custom location rules)
  • Easily load data through a simple and friendly API
  • 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
  • Supports WordPress classic and Gutenberg editor
  • RESTFul API

Donation

Navneil Naicker is the sole developer working on this free WordPress Plugin in his leisure time. He would like to integrate it with premium plugins like Elementor Pro and Advanced Custom Fields Pro. Please donate to support Navneil in continuing further development of this plugin. Click on the link “https://www.buymeacoffee.com/navzme” to donate.

Usage

acf_photo_gallery is a helper function that takes in ACF_FIELD_NAME and POST_ID will query the database and compile the images for you. The output of this function will be an array.

acf_photo_gallery(ACF_FIELD_NAME, POST_ID);

Example

The following example is using Twitter Bootstrap framework to layout. You can use any framework of your choice.

ID);
    //Check if return array has anything in it
    if( count($images) ):
        //Cool, we got some data so now let's loop over it
        foreach($images as $image):
            $id = $image['id']; // The attachment id of the media
            $title = $image['title']; //The title
            $caption= $image['caption']; //The caption
            $full_image_url= $image['full_image_url']; //Full size image url
            $full_image_url = acf_photo_gallery_resize_image($full_image_url, 262, 160); //Resized size to 262px width by 160px height image url
            $thumbnail_image_url= $image['thumbnail_image_url']; //Get the thumbnail size image url 150px by 150px
            $url= $image['url']; //Goto any link when clicked
            $target= $image['target']; //Open normal or new tab
            $alt = get_field('photo_gallery_alt', $id); //Get the alt which is a extra field (See below how to add extra fields)
            $class = get_field('photo_gallery_class', $id); //Get the class which is a extra field (See below how to add extra fields)
?>


Add Extra Fields

To add extra fields add the following to your themes functions.php file.

//Create extra fields called Altnative Text and Status
function my_extra_gallery_fields( $args, $attachment_id, $acf_key ){
    $args['alt'] = array(
        'type' => 'text', 
        'label' => 'Altnative Text', 
        'name' => 'alt', 
        'value' => get_field($field . '_alt', $attachment_id)
    );
    $args['status'] = array(
        'type' => 'select', 
        'label' => 'Status', 
        'name' => 'status', 
        'value' => array(
            array(
                '1' => 'Active',
                 '2' => 'Inactive'
            ), 
            get_field($field . '_status', $attachment_id)
        )
    );
    return $args;
}
add_filter( 'acf_photo_gallery_image_fields', 'my_extra_gallery_fields', 10, 3 );

Supported field types:
* text, date, color, datetime-local, email, number, tel, time, url, week, range, checkbox, radio, textarea, select

How to get values of extra fields

You can use ACF helper function get_field

get_field('photo_gallery_alt', $id);
get_field('photo_gallery_class', $id);

Pull caption from attachment caption field

By default the caption is being pulled from description field. Add the following filter to your function.php to pull the caption from attachment caption field.

add_filter( 'acf_photo_gallery_caption_from_attachment', '__return_true' );

REST API

Send HTTP Request to URL to get JSON response of all posts

http://{domain}/wp-json/wp/v2/{POST_TYPE}/

Send HTTP Request to URL to get JSON response of specific post

http://{domain}/wp-json/wp/v2/{POST_TYPE}/{POST_ID}/

When you receive the response, see the ACF item which contains ACF photo gallery name and array of images.

Installation and basic usage tutorial

ACF Photo Gallery Field on WordPress Custom Post Type tutorial

How to use Elementor dynamic tags with ACF Photo Gallery Field plugin tutorial

Compatibility

This ACF field type is compatible with: ACF 4, 5 and 6

Issues

Just like any other WordPress plugin, this plugin can also cause issues with other themes and plugins. If you are facing issues making this plugin work on your WordPress site, please do ask for help in the support forum. This way we can help you out and prevent this issue from happening to someone else. If you want to talk to me directly, you can contact me via my website http://www.navz.me/

DomainExposuresHeadersLast Checked
l*s*b*a.com (WP 6.7.5) F Jul 28, 2026
n*s*e*i*-*r*s.org (WP 6.8.6) F Jul 24, 2026
v*v*-*x*l*s*v*.cz F Jul 17, 2026
v*v*-*f*i*a.cz F Jul 17, 2026
v*v*t*a*e*.cz F Jul 17, 2026
c*s*a*k*l*m*s*e*a.eu F Jul 17, 2026
v*v*-*s*e.cz F Jul 17, 2026
v*v*-*m*r*k*.cz F Jul 17, 2026
t*r*n*o*o*e*b*i*d*r.com F Jul 12, 2026
i*-*n*.ru F Jul 9, 2026
v*v*-*u*t*a*i*.cz F Jul 8, 2026
l*s*b*a.ch (WP 6.7.5) F Jul 4, 2026

Top 50 Plugins

Plugin Count
elementor 1,769,546
contact-form-7 1,749,981
elementor-pro 1,052,223
woocommerce 816,082
revslider 607,977
jetpack 454,169
js_composer 419,320
wp-rocket 341,914
essential-addons-for-elementor-lite 264,421
gravityforms 256,924
complianz-gdpr 256,737
google-site-kit 232,875
cookie-law-info 227,814
instagram-feed 224,435
sitepress-multilingual-cms 210,461
header-footer-elementor 206,426
google-analytics-for-wordpress 205,227
bluehost-wordpress-plugin 192,353
elementskit-lite 179,948
gutenberg 167,312
cookie-notice 148,571
litespeed-cache 144,502
gtranslate 124,687
wpforms-lite 123,530
the-events-calendar 122,126
astra-sites 112,994
popup-maker 109,488
woocommerce-payments 109,111
gutenberg-core 103,132
tablepress 102,372
honeypot 97,721
astra-addon 93,680
wp-smushit 90,667
duracelltomi-google-tag-manager 90,296
layerslider 89,062
all-in-one-seo-pack 88,933
bb-plugin 86,786
coblocks 86,664
akismet 84,909
premium-addons-for-elementor 84,280
cleantalk-spam-protect 82,390
ml-slider 82,251
mailchimp-for-wp 81,565
megamenu 80,147
woocommerce-gateway-stripe 79,293
jet-engine 77,971
fusion-builder 76,925
ewww-image-optimizer 76,777
wp-pagenavi 76,482
smart-slider-3 76,014

Top 50 Themes

Theme Count
hello-elementor 620,559
Divi 495,186
astra 413,486
flatsome 139,309
Avada 120,788
generatepress 114,633
oceanwp 80,215
kadence 78,625
pub 72,283
enfold 68,633
salient 65,039
twentyseventeen 54,205
bb-theme 53,345
betheme 52,372
twentytwentyfour 52,317
blocksy 50,753
cocoon-master 49,244
dt-the7 45,391
twentytwentyfive 44,990
woodmart 43,696
neve 38,026
Avada-Child-Theme 36,901
gox 36,289
h4 36,036
bridge 31,221
twentytwentyone 30,243
lightning 30,028
twentytwenty 28,729
swell 28,063
bricks 26,498
Impreza 26,031
Newspaper 24,165
twentytwentythree 22,103
epik-redesign 19,110
twentytwentytwo 18,748
uncode 18,454
pro 17,625
twentysixteen 17,590
sydney 16,367
storefront 16,296
Total 14,353
hello-theme-child-master 14,025
factory-templates-4 13,734
themify-ultra 12,929
extendable 12,681
hestia 12,551
yootheme 12,472
yith-wonder 12,080
porto 11,949
twentyfifteen 11,850