Image Widget
Image Widget is a simple plugin that uses the native WordPress media manager to add image widgets to your site. Image Widget Features Responsive MU Compatible Handles image resizing and alignment Link the image Add title and description Versatile – all fields are optional Upload, link to external image, or select an image from your media collection Customize the look & feel with filter hooks or theme overrides Quality You Can Trust Image Widget is developed and maintained by The Events Calendar, the same folks behind The Events Calendar, Event Tickets, and a full suite of premium plugins. This plugin is actively supported by our team and contributions from community members. If you see a question in the forum you can help with or have a great idea and want to code it up or submit a patch, that would be awesome! Not only will we shower you with praise and thanks, it’s also a good way to get to know us and lead into options for paid work if you freelance. Pull Requests & Translations Check us out on GitHub to pull request changes. Translations can be submitted here on WordPress.org. Documentation The built in template can be overridden by files within your template. Default vs. Custom Templates The Image Widget comes with a default template for the widget output. If you would like to alter the widget display code, create a new folder called “image-widget” in your template directory and copy over the “views/widget.php” file. Edit the new file to your hearts content. Please do not edit the one in the plugin folder as that will cause conflicts when you update the plugin to the latest release. New in 3.2: You may now also use the “sp_template_image-widget_widget.php” filter to override the default template behavior for .php template files. Eg: if you wanted widget.php to reside in a folder called my-custom-templates/ and wanted it to be called my-custom-name.php: add_filter('sp_template_image-widget_widget.php', 'my_template_filter'); function my_template_filter($template) { return get_template_directory() . '/my-custom-templates/my-custom-name.php'; } Filters There are a number of filters in the code that will allow you to override data as you see fit. The best way to learn what filters are available is always by simply searching the code for ‘apply_filters’. But all the same, here are a few of the more essential filters: widget_title This is actually a pretty typical filter in widgets and is applied to the widget title. widget_text Another very typical widget filter that is applied to the description body text. This filter also takes 2 additional arguments for $args and $instance so that you can learn more about the specific widget instance in the process of filtering the content. image_widget_image_attachment_id Filters the attachment id of the image. Accepts additional $args and $instance arguments. image_widget_image_url Filters the url of the image displayed in the widget. Accepts additional $args and $instance arguments. THIS IS DEPRECATED AND WILL EVENTUALLY BE DELETED image_widget_image_width Filters the display width of the image. Accepts additional $args and $instance arguments. image_widget_image_height Filters the display height of the image. Accepts additional $args and $instance arguments. image_widget_image_maxwidth Filters the inline max-width style of the image. Hint: override this to use this in responsive designs 🙂 Accepts additional $args and $instance arguments. Return null to remove this css from the image output (defaults to ‘100%’). image_widget_image_maxheight Filters the inline max-height style of the image. Accepts additional $args and $instance arguments. Return null to remove this css from the image output (defaults to null) image_widget_image_size Filters the selected image ‘size’ corresponding to WordPress registered sizes. If this is set to ‘tribe_image_widget_custom’ then the width and height are used instead. Accepts additional $args and $instance arguments. image_widget_image_align Filters the display alignment of the image. Accepts additional $args and $instance arguments. image_widget_image_alt Filters the alt text of the image. Accepts additional $args and $instance arguments. image_widget_image_link Filters the url that the image links to. Accepts additional $args and $instance arguments. image_widget_image_link_target Filters the link target of the image link. Accepts additional $args and $instance arguments. image_widget_image_attributes Filters a list of image attributes used in the image output. Similar to ‘wp_get_attachment_image_attributes’ Accepts $instance arguments image_widget_link_attributes Filters a list of attributes used in the image link. Similar to ‘wp_get_attachment_image_attributes’ Accepts $instance arguments Have You Supported the Image Widget? If so, then THANK YOU! Also, feel free to add this line to your wp-config.php file to prevent the image widget from displaying a message after upgrades. define( ‘I_HAVE_SUPPORTED_THE_IMAGE_WIDGET’, true ); For more info on the philosophy here, check out our blog post
Top keywords
- image56×6.77%
- widget33×3.99%
- image widget21×2.54%
- filters18×2.18%
- instance15×1.81%
- arguments14×1.69%
- accepts13×1.57%
- instance arguments13×1.57%
- additional12×1.45%
- args12×1.45%
- args and instance12×1.45%
- image widget image12×1.45%
WFY24 Weather Widget
WFY24 Weather Widget lets you embed a free, fully-featured weather widget on any WordPress site — in any post, page, or sidebar — with a single shortcode, Gutenberg block, or built-in sidebar widget. Zero-friction setup On activation, a welcome wizard walks you through three clicks: Activate — we auto-register your site with wfy24.com using your admin email. No external signup. No copy/paste. Create Weather page — optionally publish a “Weather” page with the widget ready to go. Add to sidebar — one-click inject a compact weather widget into your first sidebar. Features Free version with a small “Weather by WFY24” attribution link under each widget (disclosed and consented to during activation). No credit card, no hidden fees, no ads. Upgrade to Pro to remove the attribution Lightweight — 6.6 KB gzipped Real-time data — temperature, conditions, wind, humidity, 7-day forecast 50 languages — auto-detected from your site or set manually Auto location — GPS (with consent) or IP-based geolocation, or pin a specific city Light / Dark / Auto theme — matches your site automatically 5 layouts — Classic, Compact, Minimal, Badge, Forecast Shadow DOM isolation — zero CSS conflicts with your theme Zero dependencies — no jQuery, no React, no bloat Multi-source data — ICON-D2/EU/Global NWP + GFS fallback, with ML post-processing Usage Shortcode: [wfy24_weather] Override per instance: [wfy24_weather city="paris-fr2988507" theme="dark" variant="forecast" lang="fr"] Or use the WFY24 Weather Widget block in the Gutenberg editor for a visual interface. Attribution The free version of this plugin displays a small “Weather by WFY24” link under each rendered widget. The onboarding wizard shows an explicit disclosure notice and asks for your consent before the “Activate now (free)” button; clicking that button is your explicit permission to enable the link. To remove the attribution, a Pro version is available at wfy24.com/en/widgets/pro. External service This plugin connects to the WFY24 weather service at https://www.wfy24.com: Plugin activation: POSTs to /api/widget/register-from-plugin with the email you confirmed in the onboarding form (pre-filled from Settings → General; editable inline before activation), site name, site domain, WordPress version, and plugin version, in order to automatically provision your free API key. No activation happens without your explicit click on the “Activate now (free)” button. City search (admin only, when typing in the Default City field): the plugin’s REST endpoint /wp-json/wfy24/v1/cities proxies your search query (e.g. “athens”) to /api/places/search server-side. Your search query is sent along with a User-Agent identifying the plugin. Results (slug + label + country flag) are cached for 5 minutes per query. The admin’s IP is never exposed cross-origin because the request is server-to-server. Widget rendering (client-side on visitor browsers): loads widget.js and queries /api/widget/data. The widget sends the API key, optional city slug, language/units/theme preferences, and a data-geolocation flag (off by default — visitor location is not detected unless the admin explicitly opts in via the “Auto-detect visitor location” toggle). When the toggle is on AND the visitor grants permission, the visitor’s latitude/longitude is sent; when geolocation is denied, the visitor’s IP address is used for IP-based city detection (still gated by the toggle). No personal data is stored beyond standard anonymized request logs for rate limiting. Pro upgrade flow (only if the user clicks “Upgrade to Pro” in Settings): GETs /api/widget/pro/status and POSTs to /api/widget/pro/checkout and /api/widget/pro/portal to provision a Stripe Checkout session and a Stripe Billing Portal session. No data is sent unless the admin clicks the relevant button. Links: WFY24 Terms of Service: https://www.wfy24.com/en/terms WFY24 Privacy Policy: https://www.wfy24.com/en/privacy-policy Multisite Support The plugin is multisite-compatible. All settings (API key, defaults, page) are stored per-subsite using get_option()/add_option(), so each subsite operates independently. Network Activation does not contact wfy24.com. It only loads the plugin code on every subsite. No admin_email is sent, no API key is created, no automatic phone-home occurs. Each subsite admin completes onboarding individually. When the admin opens the welcome wizard on a subsite and clicks “Activate now (free)”, the plugin sends that subsite’s domain and Settings → General → Email Address to wfy24.com to obtain a domain-bound API key. The admin is shown a dynamic disclosure of the exact values that will be transmitted before clicking — no consent is collected on behalf of admins of other subsites. New subsites added later remain inactive until their admin runs onboarding manually. The widget will not render on a subsite that has not been activated; no data leaves WordPress until an admin explicitly clicks Activate on that subsite. No centralized network admin panel exists in this version — each subsite has its own settings page. A network-level overview is on the roadmap. API keys are domain-bound. A key issued for site-a.example.com will not function on site-b.example.com, which means subdomain and domain-mapped multisite installs work correctly out of the box (each subsite gets its own key for its own domain).