WordPress.org

Ready to get started?Download WordPress

Plugin Directory

amr shortcode any widget

Include any widget in a page for any theme. [do_widget widgetname ] or [do_widget "widget name" ] or include a whole widget area [do_widge

Insert separate widgets or a entire widget area (sidebar) into a page using a shortcode.

The Widgets settings are specified in a specially created "widgets for shortcode" sidebar, just like you normally setuop a widget.

The Plugin will call that widget instance from the do_widget shortcode, or the chosen sidebar from the do_widget_area shortcode.

For example: You could use the query posts widget in the page to create a archive within a page, or the rss widget to list feed content from other sites. For more details see anmari.com

The plugins default action is that it will magically find the settings for your themes first sidebar and use them to control the widget's output. In most cases this would mean that the widget will be styled as per the rest of your theme.

If that does not look good, parameters exist to override this behaviour.

Change your theme? No problem, the plugin will save and restore the widgets_for_shortcode settings. On display it will then pick up the new themes sidebar settings. Check this still looks nice please! in some themes you may ned up with white text on a white background and will then have to override or change css.

Instructions:

  1. Test your chosen widget works in a normal sidebar or widget area first.
  2. Then Activate this plugin
  3. Go to Appearance > widgets and find the " widgets for shortcode" sidebar or widget area
  4. Drag your chosen widgets from to the shortcodes sidebar. Save.
  5. Go the shortcode any widget settings. Click on one of the create page links to help you setup the shortcode.
  6. OR go to an existing page and enter a shortcode:

    [do_widget widgetname] eg: [do_widget calendar] [do_widget "widget name"]. eg: [do_widget "tag cloud"] [do_widget id=widgetid]

    [do_widget_area] (will use the "widgets in shortcodes" widget area / sidebar [do_widget_area sidebarname] for another sidebar or widget area - eg: to maximise likelihood of getting your theme's widget css to apply.

  7. If the plugin cannot work out what you want and you are logged in as an administrator, it will show a debug prompt to you, the logged in admin only.
    Click on the link 'Try debug'. It will produce a bunch of info. Look for the id of your widget in the shortcodes sidebar (you may have to scroll through a lot of debug info). Try using the widget id. Sometimes the widget name that wordpress calls it internally is not the same as what you see on the screen and you will need the 'debug' to find the id.

[do_widget ...] Parameters:

  • nameofwidget or name="nameofwidget" This is NOT the title of the widget. THis is the name that you see in the widgets menu page even when unassigned to a sidebar. For existing users , you can also use just the name of the widget without name=. It must bethe first parameter then.
  • id=wordpress assigned id of widget
  • title=false to hide the widgets title OR to override your themes first sidebar html settings for widget titles, use title=htmltag where htmltag is one of h1,h2,h3,h4,h5,header,strong,em. If not entered plugin will use the same title html that your themes first sidebar uses - yes even if you change themes, it will switch to the new themes html.
  • wrap=htmltag where htmltag is one of div,p,main,aside,section. This will override your themes first sidebar html settings for widget wrapping html.
  • widget_classes=none This will remove the class "widget" from the wrapping html and the class "widget_title" from the title html. This may be enough to remove any unwanted css styling from your theme.
  • class=yourclassname By default the plugin will add a class of amr-widget tto the wrapping html. You can use this to add any special css. Add css either by editing your themes stylesheet if it is a custom theme, or using something like the wordpress custom css plugin.
  • sidebar="sidebarname" will default to widgets_for_shortcode sidebar. Only use if you want to re-use a widget already beingused in another sidebar. THis is theme dependent and WILL break if you change themes.

[do_widget_area ...] Parameters:

  • widget_area=yourwidgetarea defaults to 'widgets_for_shortcodes' if nothing entered
  • widget_area_class=none /* option to remove theme styling by removing the widget_area class from the sidebar html */
  • widget_classes=none /* option to remove the widget class from the widget wrappinghtml
  • class=yourclassname default is amr_widget_area'

See the settings page for links to help your create the shortcodes in a page.

To 'remove debug mode' remove ?do_widget_debug=1 from the url you are looking at (NOTE it only debugs if you are logged in and an administrator, so this is really NOT a problem.)

The plugin has been tested with most standard widgets (rss feeds, tag cloud, pages, meta, search, and of course my own plugins widgets - upcoming events list, calendar and user lists.

If you use a widget more than once for different reasons, you may need to use the widget id to isolate which widget instance and it's settings to use. ie: [do_widget id=categories-6] . If you just use the name, it will display all widgets in the shortcode sidebar with that name (all instances).

If you liked this plugin, you might also like my other plugins: icalevents.com - a ics compliant events plugin fully integrated with wordpress, so it will work with many other plugins (seo, maps, social) wpusersplugin.com - a suite of plugins to help with membership sites. Major plugin is amr users

Compatible up to: 3.8.3
Last Updated: 2014-3-10
Downloads: 70,704

Ratings

4 stars
4.8 out of 5 stars

Support

3 of 11 support threads in the last two months have been resolved.

Got something to say? Need help?

Compatibility

+
=
Not enough data

2 people say it works.
0 people say it's broken.

100,1,1
100,1,1
0,1,0
100,1,1
100,1,1
100,1,1
0,1,0
100,2,2
100,1,1
0,1,0
0,1,0
100,3,3
100,1,1
100,3,3 100,1,1
100,1,1 100,2,2 0,1,0 100,4,4 0,1,0
100,1,1
100,2,2