{"id":381723,"date":"2026-11-02T13:05:32","date_gmt":"2026-11-02T13:05:32","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/default-image-acf\/"},"modified":"2026-11-02T13:05:05","modified_gmt":"2026-11-02T13:05:05","slug":"noempty-image-for-acf","status":"closed","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/noempty-image-for-acf\/","author":23580590,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0","stable_tag":"1.0","tested":"7.1.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"NoEmpty Image for Advanced Custom Fields","header_author":"Abdul Rehman","header_description":"Allows you to set a fallback default image for Advanced Custom Fields (ACF) image fields when no image is selected.","assets_banners_color":"","last_updated":"2026-11-02 13:05:05","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/profiles.wordpress.org\/abdulrehmanirfan","rating":5,"author_block_rating":0,"active_installs":0,"downloads":43,"num_ratings":5,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0":{"tag":"1.0","author":"abdulrehmanirfan","date":"2026-11-02 13:05:05","revision":3779838}},"upgrade_notice":{"1.0":"<p>Initial release of NoEmpty Image for Advanced Custom Fields.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":5},"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3779838,"resolution":"1","location":"assets","locale":"","width":1600,"height":735}},"screenshots":{"1":"The \"Default Image\" setting inside an ACF Image field."}},"plugin_section":[],"plugin_tags":[2211,290299,2217,125265,265772],"plugin_category":[59],"plugin_contributors":[290300],"plugin_business_model":[],"class_list":["post-381723","plugin","type-plugin","status-closed","hentry","plugin_tags-acf","plugin_tags-acf-image","plugin_tags-advanced-custom-fields","plugin_tags-default-image","plugin_tags-fallback-image","plugin_category-utilities-and-tools","plugin_contributors-abdulrehmanirfan","plugin_committers-abdulrehmanirfan"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/noempty-image-for-acf.svg","icon_2x":false,"generated":true},"screenshots":[{"src":"https:\/\/ps.w.org\/noempty-image-for-acf\/assets\/screenshot-1.png?rev=3779838","caption":"The \"Default Image\" setting inside an ACF Image field."}],"raw_content":"<!--section=description-->\n<p><strong>NoEmpty Image for Advanced Custom Fields<\/strong> allows WordPress developers and content creators to set a default fallback image directly within Advanced Custom Fields (ACF) Image field settings.<\/p>\n\n<p>When editing a post, page, or custom post type where an ACF Image field is left empty, the plugin automatically provides the specified default image. This prevents broken layouts, eliminates the need for repeated fallback conditional checks in template files, and ensures a seamless display across your entire WordPress site.<\/p>\n\n<p>Developed and maintained by <strong>Abdul Rehman<\/strong>.<\/p>\n\n<h3>Key Features<\/h3>\n\n<ul>\n<li><strong>Native ACF Field Setting<\/strong>: Adds a \"Default Image\" uploader directly inside any ACF Image field settings.<\/li>\n<li><strong>Automatic Fallback<\/strong>: Returns the default image whenever a post or page has no image selected.<\/li>\n<li><strong>Full ACF Return Format Compatibility<\/strong>: Works seamlessly with all ACF return formats:\n\n<ul>\n<li>Image Array<\/li>\n<li>Image URL<\/li>\n<li>Image ID<\/li>\n<\/ul><\/li>\n<li><strong>Lightweight &amp; Fast<\/strong>: Zero frontend overhead; hooks directly into ACF's native value loading pipeline.<\/li>\n<li><strong>Extensible for Developers<\/strong>: Provides the <code>noempty_image_for_acf_value<\/code> filter hook for dynamic conditional fallbacks.<\/li>\n<li><strong>ACF PRO &amp; Secure Custom Fields (SCF) Compatible<\/strong>: Supports Advanced Custom Fields (Free &amp; PRO) as well as Secure Custom Fields.<\/li>\n<li><strong>Fully Compatible with PHP 8.x and Latest WordPress<\/strong>: Clean, secure, and compliant with WordPress coding standards.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<h3>From WordPress Dashboard:<\/h3>\n\n<ol>\n<li>Log in to your WordPress admin dashboard.<\/li>\n<li>Navigate to <strong>Plugins \u2192 Add New<\/strong>.<\/li>\n<li>Search for <code>NoEmpty Image for Advanced Custom Fields<\/code>.<\/li>\n<li>Click <strong>Install Now<\/strong>, then click <strong>Activate<\/strong>.<\/li>\n<\/ol>\n\n<h3>Manual Installation:<\/h3>\n\n<ol>\n<li>Download the plugin ZIP package (<code>noempty-image-for-acf.zip<\/code>).<\/li>\n<li>Log in to your WordPress dashboard and go to <strong>Plugins \u2192 Add New \u2192 Upload Plugin<\/strong>.<\/li>\n<li>Choose the downloaded ZIP file and click <strong>Install Now<\/strong>.<\/li>\n<li>Click <strong>Activate Plugin<\/strong>.<\/li>\n<\/ol>\n\n<p><em>Note: Make sure Advanced Custom Fields (ACF) or Secure Custom Fields is installed and activated.<\/em><\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20require%20advanced%20custom%20fields%3F\"><h3>Does this plugin require Advanced Custom Fields?<\/h3><\/dt>\n<dd><p>Yes, this plugin is an add-on for Advanced Custom Fields (Free or PRO) and also works with Secure Custom Fields (SCF).<\/p><\/dd>\n<dt id=\"how%20do%20i%20set%20a%20default%20image%20for%20an%20acf%20image%20field%3F\"><h3>How do I set a default image for an ACF image field?<\/h3><\/dt>\n<dd><ol>\n<li>Go to <strong>Custom Fields \u2192 Field Groups<\/strong> in your WordPress admin.<\/li>\n<li>Edit or add an <strong>Image<\/strong> field.<\/li>\n<li>Under the field settings, locate the <strong>Default Image<\/strong> setting.<\/li>\n<li>Click <strong>Add Image<\/strong> to choose or upload your default image from the media library.<\/li>\n<li>Save the field group.<\/li>\n<\/ol><\/dd>\n<dt id=\"what%20return%20formats%20are%20supported%3F\"><h3>What return formats are supported?<\/h3><\/dt>\n<dd><p>All three ACF return formats are supported: Image Array, Image URL, and Image ID. The plugin returns the default image in whichever format your field is configured to return.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20the%20default%20image%20is%20deleted%20from%20the%20media%20library%3F\"><h3>What happens if the default image is deleted from the Media Library?<\/h3><\/dt>\n<dd><p>The plugin includes a safeguard check. If the selected default image has been deleted from your Media Library, it safely falls back to returning false or empty to prevent PHP warnings or broken links.<\/p><\/dd>\n<dt id=\"is%20it%20compatible%20with%20php%208%2B%20and%20latest%20wordpress%3F\"><h3>Is it compatible with PHP 8+ and latest WordPress?<\/h3><\/dt>\n<dd><p>Yes, the plugin is fully tested and compatible with PHP 7.4 through PHP 8.4, and the latest versions of WordPress.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0<\/h4>\n\n<ul>\n<li>Initial release by Abdul Rehman.<\/li>\n<li>Fully compatible with WordPress 6.x \/ 7.x and PHP 7.4 through 8.4.<\/li>\n<li>Enhanced ACF compatibility (supports ACF Free, ACF PRO, and Secure Custom Fields).<\/li>\n<li>Improved code architecture with safe dependency checking.<\/li>\n<li>Added attachment verification to prevent broken image references if default image is deleted.<\/li>\n<li>Added developer filter hook <code>noempty_image_for_acf_value<\/code>.<\/li>\n<li>Translation-ready with internationalization support.<\/li>\n<\/ul>","raw_excerpt":"Easily set a fallback default image for Advanced Custom Fields (ACF) image fields when no image is selected.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/381723","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=381723"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/abdulrehmanirfan"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=381723"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=381723"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=381723"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=381723"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=381723"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=381723"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}