[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fhhITZ6y_Gqo4Avy99st5YRN3iTh1aVajy4Zas6P1zGw":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":25,"download_link":26,"security_score":27,"vuln_count":28,"unpatched_count":29,"last_vuln_date":30,"fetched_at":31,"vulnerabilities":32,"developer":90,"crawl_stats":38,"alternatives":98,"analysis":193,"fingerprints":587},"image-source-control-isc","Image Source Control Lite – Show Image Credits and Captions","3.8.0","Thomas Maier","https:\u002F\u002Fprofiles.wordpress.org\u002Fwebzunft\u002F","\u003Cp>Are you concerned about being held liable for violating copyright law and would like to start crediting owners properly?\u003C\u002Fp>\n\u003Cp>Do you want to give back to photographers and illustrators by adding image credits, so they are rightfully attributed?\u003C\u002Fp>\n\u003Cp>Or are you a creator yourself and want to show information on the picture licenses for your image gallery under which publishers can use or purchase your work?\u003C\u002Fp>\n\u003Cp>Image Source Control is your go-to solution when it comes to \u003Cstrong>handling copyright-protected photos and delete unused images\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fimagesourcecontrol.com\u002Fdocumentation\u002F?utm_source=wporg&utm_medium=link&utm_campaign=wp-linkbar-documentation\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fimage-source-control-isc\u002F\" rel=\"ugc\">Support\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fimagesourcecontrol.com\u002Funlock-isc\u002F?utm_source=wporg&utm_medium=link&utm_campaign=wp-linkbar-pro\" rel=\"nofollow ugc\">Premium Features\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fimagesourcecontrol.com\u002Ffeatures\u002Fdelete-unused-images\u002F?utm_source=wporg&utm_medium=link&utm_campaign=wp-linkbar-delete\" rel=\"nofollow ugc\">Delete Unused Images\u003C\u002Fa>\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>This level of personal and competent support deserves more than just five stars.\u003Cbr \u002F>\n  Highly recommended!\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>⭐⭐⭐⭐⭐ by \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Fexcellent-plugin-and-absolutely-outstanding-support\u002F\" rel=\"ugc\">eunde\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Image Credit layouts\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Choose between different credit displays:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>List all image sources below the content of a specific page or place the list manually\u003C\u002Fli>\n\u003Cli>Show an image caption overlay above or below the image\u003C\u002Fli>\n\u003Cli>Embed a complete image credit list with thumbnails on your website\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Frontend Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Display image credits in the content, for image galleries, images added by shortcodes, and featured images\u003C\u002Fli>\n\u003Cli>… see more listed under Premium features below\u003C\u002Fli>\n\u003Cli>Define the layout and position of the caption overlay\u003C\u002Fli>\n\u003Cli>Show the image source fully, or only on click or mouseover\u003C\u002Fli>\n\u003Cli>Attach the Per-page list automatically, by using a shortcode, or with a PHP function\u003C\u002Fli>\n\u003Cli>Display image sources on archive pages\u003C\u002Fli>\n\u003Cli>Link to the copyright holder and include a link to the image license\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Backend Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Add credits for any image file uploaded to the Media library\u003C\u002Fli>\n\u003Cli>Dedicated image source fields for the following blocks: Image, Cover Image, Featured Image, Media & Text\u003C\u002Fli>\n\u003Cli>Quickly assign a centrally defined source to any image and choose three options: hide image sources for these images, show a specific source (e.g., your name), or the uploader’s name\u003C\u002Fli>\n\u003Cli>Warn about missing image sources\u003C\u002Fli>\n\u003Cli>Manage, display, and link available licenses\u003C\u002Fli>\n\u003Cli>Enable the features for any files in the media library or for images only\u003C\u002Fli>\n\u003Cli>Filter the media library list by images with or without sources, or only those using the standard source\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Featured Image Caption\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>ISC Lite works for Featured Images. By default, you will see the image credits options in the media library and the featured image options in the block editor.\u003C\u002Fp>\n\u003Cp>The featured image caption shows in the Per-page list with all other image sources on the page.\u003C\u002Fp>\n\u003Cp>Check out the premium features to display the image caption overlay for featured images.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Premium Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fimagesourcecontrol.com\u002F?utm_source=wporg&utm_medium=link&utm_campaign=all-features\" rel=\"nofollow ugc\">Check out all features of Image Source Control\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>The Indexer looks for all images in all published content in one go\u003C\u002Fli>\n\u003Cli>List credits for images outside the content\u003C\u002Fli>\n\u003Cli>Add multiple links to the source string\u003C\u002Fli>\n\u003Cli>Manage image credits for images hosted outside the Media Library\u003C\u002Fli>\n\u003Cli>Handle images without file extensions\u003C\u002Fli>\n\u003Cli>Show image usage in the image details and the List view of the media library\u003C\u002Fli>\n\u003Cli>Bulk-edit image copyright information in the media library\u003C\u002Fli>\n\u003Cli>Preview image credits in the media library\u003C\u002Fli>\n\u003Cli>Show the standard picture credit for all images without a selected source\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fimagesourcecontrol.com\u002Fblog\u002Fiptc-copyright-information-image-caption-wordpress\u002F\" rel=\"nofollow ugc\">Display IPTC copyright metadata\u003C\u002Fa> in the backend and automatically as a standard source in the frontend\u003C\u002Fli>\n\u003Cli>Show the full text only after a click or on mouseover on the caption overlay\u003C\u002Fli>\n\u003Cli>Choose which data is displayed in the \u003Ca href=\"https:\u002F\u002Fimagesourcecontrol.com\u002Ffeatures\u002Fglobal-list\u002F\" rel=\"nofollow ugc\">Global List\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>List only images with a proper source in the Global List\u003C\u002Fli>\n\u003Cli>Show the Global List as a table or a simple list view\u003C\u002Fli>\n\u003Cli>Show image sources for Elementor background images, images in Kadence Blocks Galleries, and Kadence Related Content Carousel\u003C\u002Fli>\n\u003Cli>Developer options to show overlay captions for CSS background images\u003C\u002Fli>\n\u003Cli>Support for \u003Ca href=\"https:\u002F\u002Fimagesourcecontrol.com\u002Fblog\u002Fgroup-block-background-image\u002F\" rel=\"nofollow ugc\">background images of the Group block\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Exclude certain images from showing the overlay by adding the \u003Ccode>isc-disable-overlay\u003C\u002Fcode> class\u003C\u002Fli>\n\u003Cli>Detect Unused Images (see below)\u003C\u002Fli>\n\u003Cli>Personal email support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Extended compatibility with Elementor, Avada, WP Bakery, Divi, Fusion Builder, and other page builders\u003Cbr \u002F>\nas well as with plugins like Advanced Custom Fields, WPML, Kadence Blocks, Kadence Related Content Carousel, Lightbox Gallery, Newsletter plugin, and JetEngine.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fimagesourcecontrol.com\u002Fpricing\u002F?utm_source=wporg&utm_medium=link&utm_campaign=pricing\" rel=\"nofollow ugc\">See Pricing\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Unused Images\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Premium media cleaner features to remove unused images safely.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Go to \u003Cem>Media > Unused Images\u003C\u002Fem> to see and remove unused images\u003C\u002Fli>\n\u003Cli>Check automatically all pages in the frontend to detect real use\u003C\u002Fli>\n\u003Cli>Run a deep check in the database to find references to images outside the content, like in meta data or options\u003C\u002Fli>\n\u003Cli>Bulk delete unused images\u003C\u002Fli>\n\u003Cli>Check either all images and pages, or only new or changed ones\u003C\u002Fli>\n\u003Cli>Works for pages behind a login (e.g., membership sites or maintenance mode)\u003C\u002Fli>\n\u003Cli>Filter the list by various states\u003C\u002Fli>\n\u003Cli>Ignore certain images from being listed as unused\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Constantly extended support for finding used and unused images in plugins and page builders, e.g., Elementor, Divi, WP Bakery, WP User Meta, and the Newsletter Plugin.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fimagesourcecontrol.com\u002Fpricing\u002F?utm_source=wporg&utm_medium=link&utm_campaign=pricing\" rel=\"nofollow ugc\">See Pricing\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Btw., Image Source Control is a suitable alternative to the discontinued or closed plugins Image Credits, \u003Ca href=\"https:\u002F\u002Fimagesourcecontrol.com\u002Fblog\u002Fcredit-tracker\u002F?utm_source=wporg&utm_medium=link&utm_campaign=credit-tracker\" rel=\"nofollow ugc\">Credit Tracker\u003C\u002Fa>, or FSM Custom Featured Image Caption.\u003C\u002Fp>\n\u003Ch3>Instructions\u003C\u002Fh3>\n\u003Cp>Take a look at the \u003Ca href=\"https:\u002F\u002Fimagesourcecontrol.com\u002Fdocumentation\u002F?utm_source=wporg&utm_medium=link&utm_campaign=documentation\" rel=\"nofollow ugc\">Image Source Control Documentation\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Find a list of missing images sources and other debug tools under \u003Cem>Media > Image sources\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>You can choose to display image sources below the post content or as a small caption overlay above your images. Just visit the settings page of the plugin to enable those options.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Manually included image sources on pages\u002Fposts\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>You can add the Per-page list manually to pages or posts via the shortcode \u003Ccode>[isc_list]\u003C\u002Fcode> in your content editor or a text widget.\u003C\u002Fp>\n\u003Cp>Use \u003Ccode>[isc_list id=\"123\"]\u003C\u002Fcode> to show the list of any post or page.\u003C\u002Fp>\n\u003Cp>Use the PHP code \u003Ccode>\u003C?php if( function_exists('isc_list') ) { isc_list(); } ?>\u003C\u002Fcode> within your template files.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>List all image sources\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>You can add a paginated list with ALL attachments and sources attached to posts and pages—the Global list—using the shortcode \u003Ccode>[isc_list_all]\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Use \u003Ccode>[isc_list_all per_page=\"25\"]\u003C\u002Fcode> to show only a limited number of images per page.\u003C\u002Fp>\n\u003Cp>Use \u003Ccode>[isc_list_all included=\"all\"]\u003C\u002Fcode> to show all attachments in the list, including those not explicitly attached to a post.\u003C\u002Fp>\n\u003Cp>The plugin searches your post content and thumbnail for images (attachments) and lists them if you included at least the image source or marked it to use the default image source.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Remove “nofollow” from all source links\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>In order to remove “nofollow” from source links, follow the \u003Ca href=\"https:\u002F\u002Fimagesourcecontrol.com\u002Fdocumentation\u002F#remove-nofollow-from-all-source-links\" rel=\"nofollow ugc\">instructions in our documentation\u003C\u002Fa>.\u003C\u002Fp>\n","Show image credits, image captions, and copyrights. Manage image sources and warn if they are missing. The original plugin since 2012.",3000,126644,92,41,"2026-02-16T11:00:00.000Z","6.9.4","6.0","7.4",[20,21,22,23,24],"attributions","captions","copyrights","credits","image-sources","https:\u002F\u002Fimagesourcecontrol.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fimage-source-control-isc.3.8.0.zip",97,4,0,"2025-01-17 00:00:00","2026-03-15T15:16:48.613Z",[33,49,61,76],{"id":34,"url_slug":35,"title":36,"description":37,"plugin_slug":4,"theme_slug":38,"affected_versions":39,"patched_in_version":40,"severity":41,"cvss_score":42,"cvss_vector":43,"vuln_type":44,"published_date":30,"updated_date":45,"references":46,"days_to_patch":48},"CVE-2024-13515","image-source-control-lite-show-image-credits-and-captions-reflected-cross-site-scripting","Image Source Control Lite – Show Image Credits and Captions \u003C= 2.28.0 - Reflected Cross-Site Scripting","The Image Source Control Lite – Show Image Credits and Captions plugin for WordPress is vulnerable to Reflected Cross-Site Scripting via the 'path' parameter in all versions up to, and including, 2.28.0 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that execute if they can successfully trick a user into performing an action such as clicking on a link.",null,"\u003C=2.28.0","2.28.1","medium",6.1,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:R\u002FS:C\u002FC:L\u002FI:L\u002FA:N","Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')","2025-01-18 05:33:49",[47],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fc4debc89-d5ea-4cf1-8e69-197a75794d0b?source=api-prod",1,{"id":50,"url_slug":51,"title":52,"description":53,"plugin_slug":4,"theme_slug":38,"affected_versions":54,"patched_in_version":55,"severity":41,"cvss_score":42,"cvss_vector":43,"vuln_type":44,"published_date":56,"updated_date":57,"references":58,"days_to_patch":60},"CVE-2025-22711","image-source-control-reflected-cross-site-scripting","Image Source Control \u003C= 2.29.0 - Reflected Cross-Site Scripting","The Image Source Control plugin for WordPress is vulnerable to Reflected Cross-Site Scripting in versions up to, and including, 2.29.0 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that execute if they can successfully trick a user into performing an action such as clicking on a link.","\u003C=2.29.0","2.29.1","2025-01-15 00:00:00","2025-01-22 16:50:03",[59],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fc80e2a84-fa77-49a8-b197-c258aba58537?source=api-prod",8,{"id":62,"url_slug":63,"title":64,"description":65,"plugin_slug":4,"theme_slug":38,"affected_versions":66,"patched_in_version":67,"severity":41,"cvss_score":68,"cvss_vector":69,"vuln_type":70,"published_date":71,"updated_date":72,"references":73,"days_to_patch":75},"CVE-2023-52187","image-source-control-sensitive-information-exposure-via-log-file","Image Source Control \u003C= 2.17.0 - Sensitive Information Exposure via Log File","The Image Source Control Lite – Show Image Credits and Captions plugin for WordPress is vulnerable to Sensitive Information Exposure in all versions up to, and including, 2.17.0 via the plugin's log file. This makes it possible for unauthenticated attackers to extract sensitive data including system and plugin configuration..","\u003C=2.17.0","2.17.1",5.3,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:N\u002FS:U\u002FC:L\u002FI:N\u002FA:N","Insertion of Sensitive Information into Log File","2023-12-29 00:00:00","2024-01-22 19:56:02",[74],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fe3b3ce65-b226-4b93-ab0c-984f774454f7?source=api-prod",25,{"id":77,"url_slug":78,"title":79,"description":80,"plugin_slug":4,"theme_slug":38,"affected_versions":81,"patched_in_version":82,"severity":41,"cvss_score":83,"cvss_vector":84,"vuln_type":85,"published_date":86,"updated_date":72,"references":87,"days_to_patch":89},"CVE-2021-24781","image-source-control-lite-insecure-direct-object-reference","Image Source Control Lite \u003C 2.3.1 - Insecure Direct Object Reference","The Image Source Control WordPress plugin before 2.3.1 allows users with a role as low as Contributor to change arbitrary post meta fields of arbitrary posts (even those they should not be able to edit).","\u003C2.3.1","2.3.1",4.3,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:L\u002FUI:N\u002FS:U\u002FC:N\u002FI:L\u002FA:N","Authorization Bypass Through User-Controlled Key","2021-10-04 00:00:00",[88],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F5ab989ea-f498-4c74-b761-416d73059108?source=api-prod",841,{"slug":91,"display_name":7,"profile_url":8,"plugin_count":92,"total_installs":93,"avg_security_score":94,"avg_patch_time_days":95,"trust_score":96,"computed_at":97},"webzunft",2,3050,99,219,78,"2026-04-04T06:24:48.130Z",[99,118,137,154,174],{"slug":100,"name":101,"version":102,"author":103,"author_profile":104,"description":105,"short_description":106,"active_installs":107,"downloaded":108,"rating":107,"num_ratings":92,"last_updated":109,"tested_up_to":110,"requires_at_least":111,"requires_php":111,"tags":112,"homepage":111,"download_link":116,"security_score":117,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"image-rights","Image Rights","1.2","Christian Leuenberg","https:\u002F\u002Fprofiles.wordpress.org\u002Fcleuenberg\u002F","\u003Cp>This plugin adds new meta fields for images within the WordPress media library. You can display all your images in one place with corresponding copyrights (photographer and platform) via a simple shortcode. Especially the German law forces website owners to display all the copyright holders of graphics and photos used on a website.\u003C\u002Fp>\n\u003Cp>Features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>adds new meta fields for media library items\u003C\u002Fli>\n\u003Cli>edit copyright holder \u002F photographer name\u003C\u002Fli>\n\u003Cli>set an optional stock photo platform\u003C\u002Fli>\n\u003Cli>shortcode \u003Ccode>[photo_credits]\u003C\u002Fcode> displays all images with credits set\u003C\u002Fli>\n\u003Cli>optional image overlay with copyright information\u003C\u002Fli>\n\u003C\u002Ful>\n","Adds additional fields for setting image credits in the media library.",100,2223,"2023-09-08T13:49:00.000Z","6.3.8","",[22,113,100,114,115],"custom-fields","media-library","photo-credits","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fimage-rights.1.2.zip",85,{"slug":119,"name":120,"version":121,"author":122,"author_profile":123,"description":124,"short_description":125,"active_installs":126,"downloaded":127,"rating":107,"num_ratings":48,"last_updated":128,"tested_up_to":129,"requires_at_least":130,"requires_php":131,"tags":132,"homepage":111,"download_link":136,"security_score":117,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"image-source-overlay","Image Source Overlay","1.1.3","Eduard Stehlík","https:\u002F\u002Fprofiles.wordpress.org\u002Fstehled\u002F","\u003Cp>We have developed a plugin, so you don’t have to be worried about being liable for violating the copyright law and not crediting\u003Cbr \u002F>\nimage authors.\u003C\u002Fp>\n\u003Cp>This plugin adds a small overlay to images with the source and link.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Choose from 4 overlay positions. Top left, top right, bottom left, bottom right.\u003C\u002Fli>\n\u003Cli>Add links or simply leave only source name.\u003C\u002Fli>\n\u003Cli>Change overlay positions depending on image\u003C\u002Fli>\n\u003Cli>Enable on all pages or only post pages.\u003C\u002Fli>\n\u003Cli>Translate to your language with ease.\u003C\u002Fli>\n\u003Cli>Choose between dofollow and nofollow for links.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Usage\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Set default options in settings\u003C\u002Fli>\n\u003Cli>Navigate to media library\u003C\u002Fli>\n\u003Cli>Select image\u003C\u002Fli>\n\u003Cli>Scroll down to our custom fields with source name and source url\u003C\u002Fli>\n\u003Cli>Enter image source and optionally url\u003C\u002Fli>\n\u003Cli>All set\u003C\u002Fli>\n\u003C\u002Fol>\n","With Image Source Overlay you can manage image sources in media library. Plugin will then generate small overlay for every image crediting the origina &hellip;",60,3253,"2024-03-30T19:06:00.000Z","6.4.8","4.6","5.6",[21,133,23,134,135],"copyright","images","source","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fimage-source-overlay.1.1.3.zip",{"slug":138,"name":139,"version":140,"author":141,"author_profile":142,"description":143,"short_description":144,"active_installs":145,"downloaded":146,"rating":13,"num_ratings":147,"last_updated":148,"tested_up_to":149,"requires_at_least":111,"requires_php":111,"tags":150,"homepage":111,"download_link":153,"security_score":13,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"fsm-custom-featured-image-caption","FSM Custom Featured Image Caption","1.25.1","fesomia","https:\u002F\u002Fprofiles.wordpress.org\u002Ffesomia\u002F","\u003Cp>This plugin allows adding custom captions to the featured images of the posts. It works with both Gutenberg and the classic editor.\u003C\u002Fp>\n\u003Cp>That’s how it works:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>If no caption is indicated, the plugin will display the generic caption defined in the Media Library.\u003C\u002Fli>\n\u003Cli>If a caption is indicated, the plugin will display this caption instead of the generic caption defined in the Media Library.\u003C\u002Fli>\n\u003Cli>If no caption is indicated and no legend exists in the Media Library, none will be displayed (obviously).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>The plugin also allows to:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Hide the caption, either the original from the Media Library or the custom one.\u003C\u002Fli>\n\u003Cli>Entirely hide the featured image in the public view, without having to de-attach it from the post.\u003C\u002Fli>\n\u003Cli>Configure several options to modify the styles used in the caption.\u003C\u002Fli>\n\u003Cli>Output the text of the caption anywhere in your theme using a custom function.\u003C\u002Fli>\n\u003Cli>Output the featured image with caption inside your content with a shortcode.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>For maintaining a semantic code, this plugin writes the caption in a \u003Ccode>\u003Cfigcaption>\u003C\u002Fcode> label.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>New in version 1.21\u003C\u002Fstrong>: Compatibility with Divi themes. This is an experimental feature to allow the plugin to work with Divi, as many users requested. Note that it may not work for all layouts, and that since it replaces the function divi uses to show featured images, when enabled it may potentially cause problems with older versions of Divi or if the core theme is updated. As always, it may also be necessary to add custom css to your theme to show the captions the way you want\u003C\u002Fp>\n\u003Ch4>Format\u003C\u002Fh4>\n\u003Cp>The caption will adopt the format specified for the \u003Ccode>\u003Cfigcaption>\u003C\u002Fcode> element and the wp-caption-text CSS class, which is common in WordPress themes.\u003C\u002Fp>\n\u003Ch4>Usage\u003C\u002Fh4>\n\u003Cp>The plugin works out of the box. To start using it, all you need to do is activate it and play with the new options in your edit page. For advanced users, you will found a special settings page for fine-tuning some details.\u003C\u002Fp>\n\u003Cp>Go to \u003Cem>Settings > FSM Custom Featured Image Caption\u003C\u002Fem> to set up the CSS and HTML parameters:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>CSS for caption text\u003C\u002Fstrong>: Choose one of the options to modify the class\u002Fstyles that will be used in the caption container (by default is wp-caption-text). Note that you can indicate more than one class separated with spaces.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Allow HTML code\u003C\u002Fstrong>: Check it if you want to parse the caption text as HTML if you need the browser to parse HTML tags instead of showing them. Keep in mind that incorrect HTML code or orphan tags can break your layout.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Allow shortcodes\u003C\u002Fstrong>: Check it if you want to parse the shortcodes present in the caption text. Note that if the shortcode returns HTML it will not be filtered, regardless of the “allow html code” option state; also, complex shortcodes output may alter your layout. When activated, you can write the shortcode you want to use in the caption box in the usual way, i.e. : \u003Ccode>Venetian landscape [myshortcode option1=\"text\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Show image captions in lists\u003C\u002Fstrong>: Disabled by default. Check if you want to show the caption when the featured image appears in lists, i.e. in a category page, in a widget with latest posts, etc. Note that some themes may add containers around the image (i.e. a link tag) witch can conflict with the aspect of the caption.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Enable compatibility with Divi themes\u003C\u002Fstrong>: Disabled by default. Allows the plugin to work with Divi. Please read the description and the FAQ sections for more info about this option\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Shortcode\u003C\u002Fh4>\n\u003Cp>We’ve added a shortcode that allows you to put the featured image (and it’s caption) in your page. Just write \u003Ccode>[FSM_featured_image]\u003C\u002Fcode> anywhere in the content edit box of your post or page to display it. You can also select the size of the image with the parameter “size”. Note that defined image sizes may differ between WordPress themes. The defaults are these: thumbnail, medium, medium_large, large and full.\u003C\u002Fp>\n\u003Cp>By using the shortcode, the plugin will try to remove the featured image from your theme’s default position to prevent it from appearing twice. Anyway, this is as this is an experimental feature and results may fluctuate. It also will not appear in lists.\u003C\u002Fp>\n\u003Cp>Note that the usage of the shortcode is not related to the “Allow shortcodes” option in the settings page.\u003C\u002Fp>\n\u003Cp>Usage example: \u003Ccode>[FSM_featured_image size=thumb]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Ch4>For developers\u003C\u002Fh4>\n\u003Cp>The plugin comes with two public functions that allow you to get or output the featured image caption of the current post anywhere in your template.\u003C\u002Fp>\n\u003Cp>Once the plugin is activated, use \u003Ccode>\u003C?php get_FSM_featured_image_caption()?>\u003C\u002Fcode> to return a string containing the text that you can assign to a variable or \u003Ccode>\u003C?php the_FSM_featured_image_caption()?>\u003C\u002Fcode> where you like the caption be displayed.\u003C\u002Fp>\n\u003Cp>Both functions accept parameters passed inside an array with the following keys:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>tag\u003C\u002Fstrong>: The tag (without brackets) you want to use as a container. By default is \u003Ccode>div\u003C\u002Fcode>. If set to false, it will remove it and will return the caption text.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>class\u003C\u002Fstrong>: The name of the class\u002Fclasses you want to use for the container. Use spaces to separate them. Empty by default.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>style\u003C\u002Fstrong>: The CSS styles to be used in the container tag. Empty by default.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>force_visibility\u003C\u002Fstrong>: When set to true, it ignores the hide caption option defined by the post editor. Useful for displaying your caption in a different place, but showing the featured image. Default: \u003Ccode>false\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>allow_html\u003C\u002Fstrong>: like in the settings page, if set to true, allows the browser to parse the HTML code inside the caption text, else shows it as plain text. Default: \u003Ccode>false\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>allow_shortcodes\u003C\u002Fstrong>: again the same behaviour than in the settings page. Default: \u003Ccode>false\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>ignore_original_caption\u003C\u002Fstrong>: stops using captions defined in the media library as a substitution when the caption field is empty. Default: \u003Ccode>false\u003C\u002Fcode>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Usage example: `php\u003Cbr \u002F>\nthe_FSM_featured_image_caption( array(‘tag’ => ‘p’, ‘class’ => ‘class1 class2’, ‘style’ => ‘color: red;’, ‘allow_html’=> true, ‘allow_shortcodes’=>true );\u003C\u002Fp>\n\u003Cpre>\u003Ccode>In Gutenberg themes, the plugin generates a nested \u003Cfigure> tag. If you need to ensure the resulting HTML code is syntactically proper, you can try using this filter in your theme functions.php file: add_filter('render_block_core\u002Fpost-featured-image', 'FSMCFIC_featured_image_block_fix', 10, 2);`\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Translations\u003C\u002Fh4>\n\u003Cp>The plugin comes up with three complete translations:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>English (en)\u003C\u002Fli>\n\u003Cli>Spanish (es_ES)\u003C\u002Fli>\n\u003Cli>Catalan (ca)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>You can contribute to translating it into more languages at https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp-plugins\u002Ffsm-custom-featured-image-caption\u002F\u003C\u002Fp>\n\u003Ch4>Coming soon\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>More options for selecting the text to be used as the caption, allowing to choose amongst image Title \u002F Caption \u002F Alt Text \u002F Description and custom text.\u003C\u002Fli>\n\u003Cli>Options to fine-tune the shortcode.\u003C\u002Fli>\n\u003Cli>Have more ideas? We are open to hearing!\u003C\u002Fli>\n\u003C\u002Ful>\n","Allows adding custom captions to the featured images of the posts.",5000,121039,22,"2025-01-08T11:33:00.000Z","6.8.5",[151,133,23,152,134],"caption","featured-image","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ffsm-custom-featured-image-caption.zip",{"slug":155,"name":156,"version":157,"author":158,"author_profile":159,"description":160,"short_description":161,"active_installs":162,"downloaded":163,"rating":164,"num_ratings":165,"last_updated":166,"tested_up_to":167,"requires_at_least":17,"requires_php":111,"tags":168,"homepage":172,"download_link":173,"security_score":13,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"footer-credits","Footer Credits","1.1.0","Cedaro","https:\u002F\u002Fprofiles.wordpress.org\u002Fcedaro\u002F","\u003Cp>\u003Cstrong>This plugin only works with themes that have added support.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Footer Credits provides a standardized method for making theme credits editable. It registers a new section and fields in the Customizer for modifying the credits and choosing how they appear.\u003C\u002Fp>\n\u003Cp>Theme authors, let your users and customers know your theme supports the Footer Credits plugin.\u003C\u002Fp>\n\u003Cp>If your theme doesn’t work with Footer Credits, ask the developer to add support. Instructions can be find in the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ffooter-credits\u002Fother_notes\u002F\" rel=\"ugc\">Other Notes\u003C\u002Fa> section.\u003C\u002Fp>\n\u003Ch3>Additional Resources\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fview\u002Fplugin-reviews\u002Ffooter-credits#postform\" rel=\"ugc\">Write a review\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fcedaro\u002Ffooter-credits\" rel=\"nofollow ugc\">Contribute on GitHub\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Ftwitter.com\u002Fcedaroco\" rel=\"nofollow ugc\">Follow @cedaroco\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.cedaro.com\u002F?utm_source=wordpress.org&utm_medium=link&utm_content=footer-credits-readme&utm_campaign=plugins\" rel=\"nofollow ugc\">Visit Cedaro\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Notes\u003C\u002Fh3>\n\u003Cp>If you’re a theme author and want to add support, all you need to do is pass the default credits string through a \u003Ccode>footer_credits\u003C\u002Fcode> filter.\u003C\u002Fp>\n\u003Ch3>1. Create a template tag with the default credits and filter:\u003C\u002Fh3>\n\u003Cpre>\u003Ccode>\u003C?php\nif ( ! function_exists( 'themename_credits' ) ) :\n\u002F**\n * Theme credits text.\n *\u002F\nfunction themename_credits() {\n    $text = sprintf( __( '%s by Cedaro.', 'themename' ),\n        '\u003Ca href=\"https:\u002F\u002Fwww.cedaro.com\u002Fwordpress\u002Fthemes\u002Fhyalite\u002F\">Hyalite\u003C\u002Fa>'\n    );\n\n    echo apply_filters( 'footer_credits', $text );\n}\nendif;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>2. Then call the template tag somewhere in the footer of the theme:\u003C\u002Fh3>\n\u003Cpre>\u003Ccode>\u003Cfooter class=\"site-footer\">\n    \u003Cdiv class=\"credits\">\n        \u003C?php themename_credits(); ?>\n    \u003C\u002Fdiv>\n\u003C\u002Ffooter>\n\u003C\u002Fcode>\u003C\u002Fpre>\n","A Customizer control to make footer credits editable.",1000,30453,74,6,"2024-09-03T17:37:00.000Z","6.6.5",[23,169,170,171],"customizer","footer","site-credits","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ffooter-credits\u002F?utm_source=wordpress-plugin&utm_medium=link&utm_content=footer-credits-plugin-uri&utm_campaign=plugins","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ffooter-credits.1.1.0.zip",{"slug":175,"name":176,"version":177,"author":178,"author_profile":179,"description":180,"short_description":181,"active_installs":182,"downloaded":183,"rating":29,"num_ratings":29,"last_updated":184,"tested_up_to":16,"requires_at_least":185,"requires_php":111,"tags":186,"homepage":191,"download_link":192,"security_score":107,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"gamipress-wc-points-per-purchase-total","GamiPress – WooCommerce Points Per Purchase Total","1.0.9","Ruben Garcia","https:\u002F\u002Fprofiles.wordpress.org\u002Frubengc\u002F","\u003Cp>GamiPress – WooCommerce Points Per Purchase Total lets you award a percent of the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwoocommerce\u002F\" title=\"WooCommerce\" rel=\"ugc\">WooCommerce\u003C\u002Fa> purchase total as \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fgamipress\u002F\" title=\"GamiPress\" rel=\"ugc\">GamiPress\u003C\u002Fa> points.\u003C\u002Fp>\n\u003Cp>In addition, you can configure the percent of the purchase total to award. A few examples:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>A 100% will award the same purchase total as points (e.g. $40 = 40 points).\u003C\u002Fli>\n\u003Cli>A 200% will award the double of the purchase total as points (e.g. $40 = 80 points).\u003C\u002Fli>\n\u003Cli>A 50% will award the half of the purchase total as points (e.g. $40 = 20 points).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Also, you can enable and configure it per points type so you will be able to award a 100% of the purchase total for a specific points type and a 200% for another points type.\u003C\u002Fp>\n\u003Ch4>Expand your WooCommerce\u003C\u002Fh4>\n\u003Cp>There are more add-ons that improve your experience with GamiPress and WooCommerce:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgamipress.com\u002Fadd-ons\u002Fwoocommerce-integration\u002F\" rel=\"nofollow ugc\">WooCommerce integration\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgamipress.com\u002Fadd-ons\u002Fgamipress-wc-partial-payments\u002F\" rel=\"nofollow ugc\">WooCommerce Partial Payments\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgamipress.com\u002Fadd-ons\u002Fgamipress-wc-points-gateway\u002F\" rel=\"nofollow ugc\">WooCommerce Points Gateway\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgamipress.com\u002Fadd-ons\u002Fgamipress-wc-discounts\u002F\" rel=\"nofollow ugc\">WooCommerce Discounts\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","Award points based on WooCommerce purchase total.",500,12496,"2025-12-15T09:19:00.000Z","4.4",[187,23,188,189,190],"badges","gamipress","order","woocommerce","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fgamipress-wc-points-per-purchase-total","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgamipress-wc-points-per-purchase-total.1.0.9.zip",{"attackSurface":194,"codeSignals":407,"taintFlows":546,"riskAssessment":573,"analyzedAt":586},{"hooks":195,"ajaxHandlers":354,"restRoutes":395,"shortcodes":396,"cronEvents":405,"entryPointCount":406,"unprotectedCount":48},[196,202,206,209,213,217,221,225,229,233,236,240,243,248,251,255,259,262,265,269,273,275,277,278,281,286,289,293,296,300,303,307,312,316,321,324,328,331,332,333,338,341,344,347,351],{"type":197,"name":198,"callback":199,"file":200,"line":201},"action","init","load_modules","admin\\admin.php",16,{"type":197,"name":203,"callback":204,"file":200,"line":205},"in_admin_header","unregister_admin_notices",19,{"type":197,"name":207,"callback":208,"file":200,"line":147},"isc_admin_notices","branded_admin_header",{"type":210,"name":211,"callback":212,"file":200,"line":75},"filter","wpml_show_admin_language_switcher","disable_wpml_admin_lang_switcher",{"type":197,"name":214,"callback":215,"file":200,"line":216},"delete_attachment","clear_unused_images_stats",31,{"type":197,"name":218,"callback":219,"file":220,"line":201},"add_meta_boxes_attachment","add_warning_meta_box","admin\\includes\\media-library-checks.php",{"type":197,"name":222,"callback":223,"file":224,"line":201},"restrict_manage_posts","add_media_library_filter","admin\\includes\\media-library-filter.php",{"type":197,"name":226,"callback":227,"file":228,"line":201},"admin_enqueue_scripts","add_admin_scripts","admin\\includes\\scripts.php",{"type":197,"name":230,"callback":231,"file":228,"line":232},"admin_print_scripts","admin_head_scripts",17,{"type":197,"name":198,"callback":198,"file":234,"line":235},"includes\\block-options\\block-options.php",14,{"type":197,"name":237,"callback":238,"file":234,"line":239},"enqueue_block_editor_assets","edit_link_assets",45,{"type":197,"name":237,"callback":241,"file":234,"line":242},"editor_assets",49,{"type":197,"name":244,"callback":245,"priority":246,"file":234,"line":247},"update_option","widgets_update_option",10,50,{"type":197,"name":226,"callback":249,"file":250,"line":205},"enqueue_scripts","includes\\feedback.php",{"type":210,"name":252,"callback":253,"file":250,"line":254},"admin_footer","add_deactivation_popup",20,{"type":210,"name":256,"callback":257,"priority":246,"file":258,"line":205},"attachment_fields_to_edit","add_isc_fields","includes\\image-sources\\admin\\fields.php",{"type":197,"name":260,"callback":223,"file":261,"line":201},"isc_admin_media_library_filters","includes\\image-sources\\admin\\media-library-filters.php",{"type":197,"name":263,"callback":264,"file":261,"line":232},"pre_get_posts","filter_media_library",{"type":197,"name":266,"callback":267,"file":261,"line":268},"admin_notices","check_and_display_admin_notice",18,{"type":197,"name":270,"callback":271,"file":272,"line":232},"admin_menu","add_menu_items","includes\\image-sources\\admin\\menu.php",{"type":197,"name":266,"callback":266,"file":274,"line":232},"includes\\image-sources\\admin\\notices.php",{"type":197,"name":226,"callback":227,"file":276,"line":201},"includes\\image-sources\\admin\\scripts.php",{"type":197,"name":230,"callback":231,"file":276,"line":232},{"type":197,"name":214,"callback":214,"file":279,"line":280},"includes\\image-sources\\admin.php",24,{"type":197,"name":282,"callback":283,"priority":246,"file":284,"line":285},"updated_post_meta","maybe_update_attachment_post_meta","includes\\image-sources\\image-sources.php",95,{"type":197,"name":287,"callback":283,"priority":246,"file":284,"line":288},"added_post_meta",102,{"type":197,"name":290,"callback":291,"file":284,"line":292},"add_attachment","update_missing_sources_transient",107,{"type":197,"name":294,"callback":291,"file":284,"line":295},"deleted_post",115,{"type":197,"name":297,"callback":298,"file":284,"line":299},"before_delete_post","handle_post_deletion",120,{"type":197,"name":301,"callback":298,"file":284,"line":302},"wp_trash_post",121,{"type":197,"name":304,"callback":305,"file":284,"line":306},"wp_insert_post","prepare_for_reindex",127,{"type":210,"name":308,"callback":309,"priority":246,"file":310,"line":311},"attachment_fields_to_save","isc_fields_save","includes\\model.php",27,{"type":210,"name":313,"callback":314,"priority":246,"file":315,"line":205},"isc_settings_on_save_after_validation","validate_settings","includes\\settings\\section.php",{"type":197,"name":317,"callback":318,"file":319,"line":320},"isc_admin_settings_overlay_included_images_after","render_field_elementor","includes\\settings\\sections\\caption.php",40,{"type":197,"name":317,"callback":322,"file":319,"line":323},"render_field_divi",44,{"type":197,"name":325,"callback":326,"file":327,"line":235},"admin_init","settings_init","includes\\settings.php",{"type":197,"name":270,"callback":329,"file":327,"line":330},"add_menu_item",15,{"type":197,"name":226,"callback":227,"file":327,"line":201},{"type":197,"name":230,"callback":231,"file":327,"line":232},{"type":197,"name":334,"callback":335,"file":336,"line":337},"wp","register_hooks","public\\public.php",26,{"type":197,"name":339,"callback":340,"file":336,"line":323},"wp_enqueue_scripts","front_scripts",{"type":197,"name":342,"callback":343,"file":336,"line":239},"wp_head","front_head",{"type":210,"name":345,"callback":346,"priority":254,"file":336,"line":247},"the_excerpt","excerpt_filter",{"type":210,"name":348,"callback":349,"priority":246,"file":336,"line":350},"render_block","add_featured_image_source_to_excerpt_block",51,{"type":210,"name":352,"callback":353,"priority":254,"file":336,"line":94},"the_content","add_sources_to_content",[355,361,365,369,372,375,378,381,385,388,391],{"action":356,"nopriv":357,"callback":358,"hasNonce":359,"hasCapCheck":359,"file":360,"line":235},"isc_download_log",false,"download_log",true,"admin\\includes\\ajax.php",{"action":362,"nopriv":357,"callback":363,"hasNonce":359,"hasCapCheck":357,"file":250,"line":364},"isc_send_feedback","send_feedback",21,{"action":366,"nopriv":357,"callback":367,"hasNonce":357,"hasCapCheck":357,"file":368,"line":268},"isc-post-image-relations","list_post_image_relations","includes\\image-sources\\admin\\ajax.php",{"action":370,"nopriv":357,"callback":371,"hasNonce":359,"hasCapCheck":359,"file":368,"line":205},"isc-image-post-relations","list_image_post_relations",{"action":373,"nopriv":357,"callback":374,"hasNonce":359,"hasCapCheck":359,"file":368,"line":254},"isc-clear-index","clear_index",{"action":376,"nopriv":357,"callback":377,"hasNonce":359,"hasCapCheck":359,"file":368,"line":364},"isc-show-storage","show_storage",{"action":379,"nopriv":357,"callback":380,"hasNonce":359,"hasCapCheck":359,"file":368,"line":147},"isc-clear-storage","clear_storage",{"action":382,"nopriv":357,"callback":383,"hasNonce":359,"hasCapCheck":359,"file":368,"line":384},"isc-clear-image-posts-index","clear_image_posts_index",23,{"action":386,"nopriv":357,"callback":387,"hasNonce":359,"hasCapCheck":359,"file":368,"line":280},"isc-clear-post-images-index","clear_post_images_index",{"action":389,"nopriv":357,"callback":389,"hasNonce":359,"hasCapCheck":359,"file":390,"line":216},"newsletter_signup","includes\\settings\\sections\\newsletter.php",{"action":392,"nopriv":357,"callback":393,"hasNonce":359,"hasCapCheck":359,"file":390,"line":394},"newsletter_close","close_newsletter_box",32,[],[397,401],{"tag":398,"callback":399,"file":336,"line":400},"isc_list_all","execute_shortcode",34,{"tag":402,"callback":403,"file":336,"line":404},"isc_list","list_post_attachments_with_sources_shortcode",53,[],13,{"dangerousFunctions":408,"sqlUsage":414,"outputEscaping":420,"fileOperations":48,"externalRequests":48,"nonceChecks":246,"capabilityChecks":246,"bundledLibraries":545},[409],{"fn":410,"file":411,"line":412,"context":413},"unserialize","includes\\helpers.php",42,"return @unserialize( trim( $data ), [ 'allowed_classes' => false ] );",{"prepared":165,"raw":48,"locations":415},[416],{"file":417,"line":418,"context":419},"uninstall.php",38,"$wpdb->query() with variable interpolation",{"escaped":421,"rawEcho":422,"locations":423},212,66,[424,427,429,432,434,437,439,441,443,445,447,449,451,452,454,456,458,460,462,464,467,469,471,473,474,475,477,479,481,484,486,488,489,491,493,494,496,497,499,501,503,504,506,507,509,510,512,513,515,516,518,520,521,523,525,527,529,531,533,534,536,537,539,540,542,543],{"file":220,"line":425,"context":426},116,"raw output",{"file":428,"line":268,"context":426},"admin\\templates\\header.php",{"file":430,"line":431,"context":426},"admin\\templates\\settings\\caption\\divi.php",9,{"file":433,"line":431,"context":426},"admin\\templates\\settings\\caption\\elementor.php",{"file":435,"line":436,"context":426},"admin\\templates\\settings\\caption\\overlay-advanced-included-images.php",62,{"file":438,"line":147,"context":426},"admin\\templates\\settings\\caption\\overlay-included-images.php",{"file":440,"line":330,"context":426},"admin\\templates\\settings\\caption\\overlay-position.php",{"file":442,"line":280,"context":426},"admin\\templates\\settings\\caption\\style.php",{"file":444,"line":337,"context":426},"admin\\templates\\settings\\global-list\\data.php",{"file":446,"line":364,"context":426},"admin\\templates\\settings\\global-list\\included-images.php",{"file":448,"line":254,"context":426},"admin\\templates\\settings\\global-list\\indexed-images.php",{"file":448,"line":450,"context":426},30,{"file":448,"line":14,"context":426},{"file":453,"line":394,"context":426},"admin\\templates\\settings\\miscellaneous\\standard-source.php",{"file":453,"line":455,"context":426},43,{"file":453,"line":457,"context":426},52,{"file":459,"line":364,"context":426},"admin\\templates\\settings\\page-list\\included-images.php",{"file":461,"line":201,"context":426},"admin\\templates\\settings\\page-list\\layout.php",{"file":463,"line":418,"context":426},"admin\\templates\\settings\\plugin\\images-only.php",{"file":465,"line":466,"context":426},"admin\\templates\\settings\\plugin\\modules.php",33,{"file":468,"line":75,"context":426},"admin\\templates\\sources\\external-images.php",{"file":470,"line":254,"context":426},"admin\\templates\\sources\\section.php",{"file":472,"line":235,"context":426},"includes\\functions.php",{"file":472,"line":75,"context":426},{"file":472,"line":323,"context":426},{"file":261,"line":476,"context":426},157,{"file":261,"line":478,"context":426},161,{"file":480,"line":364,"context":426},"includes\\image-sources\\renderer\\caption.php",{"file":482,"line":483,"context":426},"includes\\image-sources\\renderer\\global-list.php",286,{"file":482,"line":485,"context":426},303,{"file":482,"line":487,"context":426},359,{"file":482,"line":487,"context":426},{"file":482,"line":490,"context":426},366,{"file":482,"line":492,"context":426},368,{"file":482,"line":492,"context":426},{"file":482,"line":495,"context":426},369,{"file":482,"line":495,"context":426},{"file":482,"line":498,"context":426},370,{"file":482,"line":500,"context":426},376,{"file":482,"line":502,"context":426},380,{"file":482,"line":502,"context":426},{"file":482,"line":505,"context":426},388,{"file":482,"line":505,"context":426},{"file":482,"line":508,"context":426},389,{"file":482,"line":508,"context":426},{"file":482,"line":511,"context":426},391,{"file":482,"line":511,"context":426},{"file":482,"line":514,"context":426},396,{"file":482,"line":514,"context":426},{"file":482,"line":517,"context":426},408,{"file":482,"line":519,"context":426},415,{"file":482,"line":519,"context":426},{"file":482,"line":522,"context":426},421,{"file":524,"line":364,"context":426},"includes\\image-sources\\renderer\\image-source-string.php",{"file":390,"line":526,"context":426},76,{"file":390,"line":528,"context":426},98,{"file":336,"line":530,"context":426},562,{"file":532,"line":400,"context":426},"public\\views\\global-list.php",{"file":532,"line":400,"context":426},{"file":532,"line":535,"context":426},35,{"file":532,"line":535,"context":426},{"file":532,"line":538,"context":426},36,{"file":532,"line":538,"context":426},{"file":532,"line":541,"context":426},37,{"file":532,"line":541,"context":426},{"file":544,"line":330,"context":426},"public\\views\\image-source-box.php",[],[547,563],{"entryPoint":548,"graph":549,"unsanitizedCount":562,"severity":41},"pagination_links (includes\\image-sources\\renderer\\global-list.php:298)",{"nodes":550,"edges":560},[551,555],{"id":552,"type":135,"label":553,"file":482,"line":554},"n0","$_GET (x11)",347,{"id":556,"type":557,"label":558,"file":482,"line":487,"wp_function":559},"n1","sink","echo() [XSS]","echo",[561],{"from":552,"to":556,"sanitized":357},11,{"entryPoint":564,"graph":565,"unsanitizedCount":232,"severity":572},"\u003Cglobal-list> (includes\\image-sources\\renderer\\global-list.php:0)",{"nodes":566,"edges":570},[567,569],{"id":552,"type":135,"label":568,"file":482,"line":554},"$_GET (x17)",{"id":556,"type":557,"label":558,"file":482,"line":487,"wp_function":559},[571],{"from":552,"to":556,"sanitized":357},"low",{"summary":574,"deductions":575},"The 'image-source-control-isc' plugin v3.8.0 exhibits a mixed security posture. While it demonstrates good practices with a high percentage of SQL queries using prepared statements and a significant number of nonce and capability checks, several concerns warrant attention. The presence of a dangerous function like 'unserialize' without further context on its usage is a potential risk, as is the single identified file operation which could be a vector if not handled securely.  The taint analysis shows no critical or high severity flows, which is positive, but the presence of two flows with unsanitized paths, even if classified lower, suggests potential for manipulation if inputs are not rigorously validated.\n\nThe plugin's vulnerability history is concerning, with four known medium severity CVEs, including authorization bypass and XSS. Although currently unpatched, the absence of active critical or high vulnerabilities is a slight positive, but the pattern of past issues, particularly authorization bypass, indicates a recurring area of weakness. The fact that all past vulnerabilities were medium severity, and none are currently unpatched, suggests that the developers are responsive to fixing issues, but the frequency and types of past vulnerabilities still represent a risk. Overall, while the plugin has strengths in its current security implementation, the past vulnerability record and the identified code signals necessitate careful consideration and monitoring.",[576,579,582,584],{"reason":577,"points":578},"Unprotected AJAX handler",7,{"reason":580,"points":581},"Dangerous function 'unserialize' used",5,{"reason":583,"points":28},"Flows with unsanitized paths found",{"reason":585,"points":201},"Four past medium severity CVEs","2026-03-16T18:26:54.819Z",{"wat":588,"direct":595},{"assetPaths":589,"generatorPatterns":591,"scriptPaths":592,"versionParams":593},[590],"\u002Fwp-content\u002Fplugins\u002Fimage-source-control-isc\u002Fadmin\u002Fassets\u002Fcss\u002Fisc.css",[],[],[594],"isc_image_settings_css?ver=",{"cssClasses":596,"htmlComments":599,"htmlAttributes":605,"restEndpoints":610,"jsGlobals":612,"shortcodeOutput":614},[597,598],"isc-get-pro","isc-notice",[600,601,602,603,604],"\u003C!-- wp:image","\u003C!-- wp:media-text","\u003C!-- wp:cover","\u003C!-- wp:post-featured-image","\u003C!-- wp:generateblocks\u002Fimage",[606,607,608,609],"isc_image_source","isc_image_source_url","isc_image_licence","isc_image_source_own",[611],"\u002Fwp-json\u002Fwp\u002Fv2\u002Fmedia",[613],"isc",[]]