{"id":382216,"date":"2026-11-09T08:29:32","date_gmt":"2026-11-09T08:29:32","guid":{"rendered":"https:\/\/de.wordpress.org\/plugins\/image-credits-by-einfachlabs\/"},"modified":"2026-11-09T08:29:11","modified_gmt":"2026-11-09T08:29:11","slug":"einfachlabs-image-credit-overlay","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/einfachlabs-image-credit-overlay\/","author":23581324,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.1","stable_tag":"1.0.1","tested":"7.1.4","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"EINFACHlabs Image Credit Overlay","header_author":"EINFACHlabs","header_description":"Add image credits to WordPress media and display them as a clickable copyright overlay directly on the image.","assets_banners_color":"","last_updated":"2026-11-09 08:29:11","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":86,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","changelog"],"tags":{"1.0.1":{"tag":"1.0.1","author":"einfachlabs2026","date":"2026-11-09 08:29:11","revision":3792042}},"upgrade_notice":[],"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.1"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[9067,2972,76538,35925,611],"plugin_category":[],"plugin_contributors":[],"plugin_business_model":[],"class_list":["post-382216","plugin","type-plugin","status-publish","hentry","plugin_tags-attribution","plugin_tags-copyright","plugin_tags-elementor","plugin_tags-image-credits","plugin_tags-slider","plugin_committers-einfachlabs2026"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/einfachlabs-image-credit-overlay.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>EINFACHlabs Image Credit Overlay stores one visible image credit directly on each WordPress media attachment and displays it on the frontend without changing the normal WordPress caption.<\/p>\n\n<p>The free release uses a fixed black-and-white design with the \u00a9 button in the bottom-right corner. Custom colors, typography, positioning and language-specific credit variants are not included in this edition.<\/p>\n\n<p>Example credit:<\/p>\n\n<p>Annett Bergk \/ EINFACHlabs<\/p>\n\n<p>The \u00a9 symbol is added automatically.<\/p>\n\n<h3>Supported<\/h3>\n\n<ul>\n<li>WordPress images rendered through wp_get_attachment_image().<\/li>\n<li>Images with a wp-image-ID class.<\/li>\n<li>Images without a WordPress attachment ID in the markup, resolved from the current local upload URL.<\/li>\n<li>Responsive WordPress image sizes such as -768x512.jpg.<\/li>\n<li>Elementor images and Elementor background images.<\/li>\n<li>CSS background images in sliders and carousels when they come from the WordPress Media Library.<\/li>\n<li>Swiper, Slick, Owl Carousel and Splide visibility handling.<\/li>\n<li>Dynamic sliders where src, srcset or background-image changes while the page stays open.<\/li>\n<li>Linked images and  elements.<\/li>\n<li>Floating credit overlays above overlapping headline\/content boxes.<\/li>\n<li>Multi-line credits for longer attribution text.<\/li>\n<\/ul>\n\n<h3>Notes<\/h3>\n\n<ul>\n<li>The image credit is stored separately from the standard WordPress caption.<\/li>\n<li>This edition stores one credit string per media item. It does not provide separate credit values per site language.<\/li>\n<li>External images outside the local WordPress Media Library cannot be resolved automatically.<\/li>\n<li>URL resolution only accepts approved local upload hosts and paths, rejects path-traversal\/control-character patterns, queries the local WordPress Media Library and never fetches third-party content.<\/li>\n<li>The public resolver does not expose an attachment-ID lookup endpoint. Lookup batches are bounded and successful as well as unsuccessful URL resolutions are cached in a small, bounded cache.<\/li>\n<li>Credits attached to trashed, private, draft, pending, future, password-protected or otherwise restricted parent content are not returned anonymously by the public resolver. Developers using access-control plugins can further restrict exposure with the <code>einfachlabs_image_credits_is_public<\/code> filter.<\/li>\n<li>The resolver is public by design, but access-control plugins can block complete resolver requests with the <code>einfachlabs_image_credits_request_allowed<\/code> filter.<\/li>\n<li>CDN hostnames can be explicitly allowed by developers with the <code>einfachlabs_image_credits_allowed_hosts<\/code> filter when the CDN keeps the WordPress uploads path.<\/li>\n<li>The free design is intentionally fixed: black overlay, white text, bottom-right \u00a9 control.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the ZIP file via Plugins &gt; Add New Plugin &gt; Upload Plugin.<\/li>\n<li>Activate \"EINFACHlabs Image Credit Overlay\".<\/li>\n<li>Open an image in the Media Library.<\/li>\n<li>Enter the visible attribution in the \"Image credit \/ Copyright\" field.<\/li>\n<li>The frontend shows a \u00a9 button on credited images. Clicking it opens the full credit directly over the image.<\/li>\n<\/ol>\n\n<p>If you are replacing an earlier EINFACH Image Credits test build, deactivate the old plugin before activating this package. Existing image-credit metadata is preserved because the same attachment meta field is used.<\/p>\n\n<!--section=changelog-->\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Rename the plugin to EINFACHlabs Image Credit Overlay.<\/li>\n<li>Set the text domain and package directory to einfachlabs-image-credit-overlay.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First public EINFACHlabs release.<\/li>\n<li>English-only interface.<\/li>\n<li>Fixed black-and-white credit design.<\/li>\n<li>Image, background-image and slider\/carousel support based on the stabilized pre-release implementation.<\/li>\n<li>Hardened public media resolver with URL-only lookup, strict request limits, host\/path validation, path-traversal checks, visibility checks, a request-permission filter and bounded positive\/negative caching.<\/li>\n<li>Image credits remain separate from WordPress captions and support automatic line wrapping.<\/li>\n<\/ul>","raw_excerpt":"Add clean, clickable image credits to WordPress images: a small \u00a9 button appears on the image and opens the credit in an overlay.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/382216","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=382216"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/einfachlabs2026"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=382216"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=382216"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=382216"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=382216"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=382216"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=382216"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}