Ready to get started?Download WordPress

Plugin Directory


Over 80 advanced, powerful shortcodes for displaying the content of your WordPress website.


  • Tested with WordPress 3.9


  • Tested: With WordPress 3.9-RC1
  • Fixed: oik options > Plugins - Check followed by Upgrade - improved likelihood of update being performed on request
  • Fixed: oik options > Themes - Check followed by Upgrade - improved likelihood of update being performed on request
  • Changed: set timeout on oik_check_for_update() and oik_check_for_theme_update() to 10 seconds.


  • Changed: shortcodes are not registered until we know they're needed
  • Changed: shortcode are now registered in bw_oik_lazy_add_shortcodes() includes/oik-shortcodes.php
  • Changed: oik_box() can now be used in OO code.
  • Changed: [bw_link] accepts href= & link= for a named URL parameter
  • Fixed: changed bw_get_posts() so that nested [bw_images] finds required images during [bw_pages] processing
  • Changed: most functions for oik-bob-bing-wide plugin moved to that plugin.
  • Changed: and some functions deprecated.
  • Note: You will need to upgrade oik-bob-bing-wide to continue to use all of its shortcodes.
  • Changed: oik custom CSS button now a simple text link. [bw_editcss]
  • Changed: AJAX logic now in includes/oik-ajax.php
  • Changed: [bw_power] shortcode now in shortcodes/oik-power.php
  • Added: New filter "oik_shortcode_atts" to allow other plugins to override shortcode $atts. Invoked by bw_shortcode_event()
  • Changed: main plugin file slightly simpler.


  • Changed: [bw_link] accepts URL as default parameter. Alternative to numeric ID. Also through src= or url=
  • Changed: TinyMCE buttons are now styled similarly to WordPress's dashboard icons
  • Changed: Added link= parameter to [bw_tel], [bw_mob] and other telephone related shortcodes


  • Changed: Improved bw_default_labels() for better handling of singular_name
  • Changed: Improved loik, wp, lwp, lwpms and bw_power shortcode logic, used by oik-bob-bing-wide plugin
  • Changed: Improve links produced for the bw_plug shortcode, oik-bob-bing-wide plugin


  • Changed: [bw_cycle] - added fit=1|0 parameter, added prevnext=y parameter, improved syntax help
  • Changed: Follow me shortcodes - to set "bw_follow" class on images
  • Changed: Added $text parmaeter to aname()
  • Added: Syntax help for [paypal]
  • Fixed: Minor error in icheckbox().
  • Changed: Added some more docblock comments to bobbfunc.inc


  • Changed: Improve syntax help for id= parameter. It may be a list of post IDs
  • Changed: Ensure [bw_fields] uses the correct post ID when invoked within [bw_accordion], [bw_tabs], [bw_table] and [bw_pages]
  • Changed: [bw_code] will detect the current shortcode so that it can be used in a text widget to display shortcode syntax
  • Changed: HTML for [bw_plug banner=y|j|p] to support improved styling when displaying a banner
  • Changed: Added syntax help for [bw_wtf]
  • Fixed: Styling problems when a jQuery nivo slider is used in a text widget.


  • Tested: with WordPress 3.8.1.
  • See also: change log below.


  • Added: Custom taxonomies are now registered as fields of type "taxonomy"
  • Fixed: reinstated some logic in [bw_field] shortcode as of oik-fields v1.18.0315
  • Changed: [bw_field] can now be used to display post properties as well as registered fields
  • Fixed: aname() - create an anchor tag for linking within a page


  • Changed: includes/bw_fields.inc now matches the same file in oik-fields
  • Changed: [bw_fields] now checks the version of oik-fields - for bw_theme_field()


  • Added: [bw_pinterest] - follow me on Pinterest
  • Added: [bw_instagram] - follow me on Instagram
  • Changed: [bw_follow_me] will also list Pinterest and Instagram
  • Changed: Improved styling of form fields in WordPress 3.8 admin
  • Changed: bw_textarea_cb_arr() performs the translation of $text parameter using bw_translate()


  • Changed: Messages from [bw_contact_form] can now be styled
  • Added: contact= parameter for [bw_contact_form]
  • Added: Incorporated message related functions from oik-fields [bw_new] shotcode in bw_messages.inc


  • Added: [bw_cycle] shortcode now displays attachments ( images ) by default
  • Added: _bw_tidy_response_xml() to cater for unrecognised HTML entities in XML data.
  • Added: Added default styling for oik-rating stars
  • Changed: bw_tablerow() can now display table head rows, using bw_th()
  • Changed: iselect() now supports string or array format for args['#options']
  • Changed: added bw_metadata_loaded() to assist with tracking action usage
  • Fixed: Fatal error from [bw_contact_form] - cannot find bw_verify_nonce(). Problem introduced in oik version 2.1-alpha.1103; function moved to bobbforms.inc
  • Fixed: Reduced notify messages from bw_build_akismet_query_string()


  • Added: Styling for a field hint ( span.bw_hint )
  • Changed: oik backronym is now "OIK Information Kit"
  • Changed: reduced the amount of styling for oik-bob-bing-wide shortcodes
  • Changed: Extracted blueprint-grid.css from oik.css
  • Deleted: bwlink.css is no longer delivered
  • Fixed: reduced chance of Fatal with duplicated functions in bw_fields.inc, delivered in oik and oik-fields


  • Deleted: Removed prototype logic specifically targetting wp-login.php
  • Changed: Renamed blockquote() to _bw_blockquote()


  • Deprecated: image() and bw_image_link() APIs; use e(retimage()) or alink()
  • Changed: commented out some bw_backtrace() calls
  • Changed: Altered if !defined testing in some (shared) trace files
  • Changed: admin/oik-bwtrace.inc and admin/oik-bwaction.inc no longer delivered ( renamed to .inc_ so they are excluded from API parsing)
  • Changed: Added some phpdoc block commments
  • Changed: oik.css defines the menu image for oik-types
  • Changed: multiple select fields define the number of rows to be displayed using the value of the "#multiple" option
  • Changed: bw_translate() no longer calls translate(), to avoid calls to "gettext" filter
  • Added: bw_is_loaded() - determine if a particular file is loaded.
  • Changed: oik_main_init() now checks for wp-login processing. Invokes "oik_login_only" if so, else "oik_loaded" - THIS IS JUST A PROTOTYPE!


  • Added: bw_get_post_class() for including standard post classes to enhance styling capabilities
  • Added: [bw_cycle] shortcode to simplify implementation of jQuery cycle logic
  • Changed: [bw_login] shortcode extended to allow for protected content only visible to logged-in users
  • Changed: [bw_contact_form] textarea width reduced to 30 characters.
  • Changed: bw_format_skv() - to improve shortcode help display when there is a long list of values
  • Changed: bw_format_meta() support theming of multiple select noderef fields
  • Changed: More i18n changes. e.g. th() invokes bwt() to translate table headings
  • Changed: More phpdoc blocks
  • Changed: bw_update_post_meta() allows for no values
  • Fixed: PayPal buttons not including currency - problem introduced in i18n work
  • Fixed: bw_context() allows context values to be set to false


  • Changed: bw_plug output now wrapped in a span
  • Fixed: Added bw_ucfirst() as part of i18n work


  • Changed: Changed "hint" appending logic in bw_form_field_title() to use deferred translatable text
  • Added: More functions for deferred translatable text: bw_dtt(), bw_get_dtt() and bw_tt()
  • Added: styling for span.bw_hint ( bwlink.css )


  • Fixed: Fatal error in oik options > options. Wrong function name used!


  • Changed: Further work on Internationalization (i18n)
  • Added: _alink() - for translatable links
  • Added: p_() - for non translatable paragraphs
  • Fixed: oik menu icon display in dashboard
  • Added: bw_list_fields() to return a list of registered fields
  • Added: support for displaying plugin banners [bw_plug name=plugin banner=y/j/p]
  • Changed: [bw_code] handles unrecognised shortcodes - by not including the link


  • Fixed: [bw_copyright] and [bw_show_googlemap] - incorrect due to i18n changes in bw_array_get_dcb().
  • Changed: _bw_theme_field_default() will only display non-empty values. Note: 0 is considered empty.
  • Added: bw_translate() function - similar to __() but for oik i18n/l10n


  • Changed: bw_textarea() returns the current value when $value parameter is null
  • Changed: bw_get_email_message() only calls bw_get_email_default() when $message is null
  • Changed: bw_theme_field__title() will now output the title text if the post ID is not available


  • Fixed: [bw_contact_form] email fields were not being replaced correctly. Problem introduced in 2.1-alpha.0718
  • Added: bw_remote_get2() - similar to bw_remote_get() but it DOESN'T json_decode() the result
  • Changed: bw_jquery_src() sets the handle using sanitize_key() to avoid problems with query parms and version
  • Changed: Some more work on i18n


  • Changed: Added inline= parameter to [bw_jquery] shortcode
  • Changed: Added caveat documentation for bw_get_plugin_name()
  • Added: oik_boot.inc will now set ABSPATH if not defined
  • Changed: Started Internationalization (i18n) work
  • Added: first version of Localization l10n for the invented "bbboing" language ( locale "bb_BB" ) - now discovered to be called http://en.wikipedia.org/wiki/Typoglycemia
  • Added: bw_form_field_email()
  • Added: Field title #hint: _bw_form_field_title()


  • Fixed: [bw_table] shortcode no longer dependent upon the oik-fields plugin. Added includes/bw_fields.inc
  • Changed: [bw_pages] and [bw_table] shortcodes now default numberposts=10
  • Changed: Changed [bw_contact_form] logic to allow oik-fields to share the Akismet checking code
  • Changed: Minor documentation improvements, including dummy functions for [bw_table] Syntax, Example and Snippet
  • Changed: oik stylesheets are now enqueued after other stylesheets ( priority=11 )
  • Added: bw_pre_form_field() invokes "oik_pre_form_field" action to allow extender plugins to load their field "form" functions
  • Changed: Improved support for custom category and custom tags. See bw_register_custom_category(), bw_register_custom_tags()


  • Added: Support for "private" custom fields - not visible to end users when displayed in forms or theme ( used by oik-fields )
  • Added: Logic to expand shortcodes in content when used in format=C parameter of bw_pages and related shortcodes.
  • Fixed: HTML was being output in the wrong order when nested shortcodes were being expanded
  • Fixed: Correct post ID used when processing nested posts in shortcode expansion for content and excerpt


  • Changed: bw_get_fullimage() now attempts to load the featured image before choosing an attached image at random
  • Added: bw_get_posts() now supports identification of multiple posts using id= parameter ( or post__in= or p= )
  • Default orderby sort sequence when using "post__in" is "post__in"
  • Fixed: Notify message from oik options > plugins when no plugins are registered
  • Fixed: Added syntax help for read_more= parameter to [bw_pages] shortcode
  • Fixed: Minor API documentation improvements
  • Fixed: Enqueues jquery-ui-1.9.2.custom.css for date form fields

2.0.2 on 27 Oct 2013

  • Added: [bw_cycle] shortcode
  • Added: bw_get_post_class() for including standard post classes to enhance styling capabilities
  • Changed: bw_format_skv() - to improve shortcode help display when there is a long list of values
  • Changed: Add support for displaying multiple select noderef fields
  • Changed: Improve bw_update_post_meta() to allow for no values
  • Changed: Extend [bw_login] shortcode to support protected content which is only visible to logged in users
  • Changed: Alter bw_login_shortcode() to cater for i18n changes
  • Changed: bw_pp_shortcodes() to cater for i18n changes

2.0.1 on 21 Sep 2013

  • Changed: Corrected test for defined constant in bw_jkv()
  • Changed: Renamed bw_admin() to bw_admin_sc() to resolve function naming conflict with the BookingWizz plugin


oik version 2.0 adds 11 shortcodes:

  • [bw_accordion] - Display content using jquery-ui-accordion jQuery
  • [bw_contact_form] - Display a contact form
  • [bw_countdown] - Countdown timer
  • [bw_iframe] - Embed a page in an iframe
  • [bw_jq] - Perform a jQuery method
  • [bw_link] - Display a link to a post
  • [bw_login] - Display the login form
  • [bw_loginout] - Display the Login or Logout link
  • [bw_parent] - Display a link back to the parent page
  • [bw_register] - Display a link to the Registration form
  • [bw_tabs] - Display content in tabbed blocks, using jquery-ui-tabs jQuery

Other changes in version 2.0

  • Many shortcodes have been improved: with new capability supported through new or changed parameter values.
  • Improved support for other plugins
  • Inclusion of common jQuery plugins: used by [bw_jq]
  • Many other technical improvements
  • Improved documentation

For details see below or visit oik plugin


  • Added: packed versions of jquery files: pullquote, target-blank
  • Changed: [bw_jq] now supports src=ID parameter, script= parameter alone AND no parameters
  • Changed: [bw_wtf] improved - better defense against wpautop()
  • Changed: [bw_code] can now be used as a link to the shortcode e.g. [bw_code bw_pages] will produce a "[bw_pages]" link


  • Added: Flexible formatting for the [bw_pages] shortcode using the format= parameter with multiple field choices


  • Changed: Improved logic for oik options > plugins and oik-options > themes to list the programmatically registered plugins and themes
  • Added: Early code to implement "themes_api" and "themes_api_result" filters.


  • Changed: Removed the "avatar" and "alignleft" classes in [bw_pages], [bw_accordion] and [bw_tabs] to improve responsive image sizing in IE9


  • Changed: Remove the 'read more' link from [bw_pages] using the read_more='' parameter
  • Changed: read_more="" also applies to [bw_tabs] and [bw_accordion]
  • Changed: Added some basic responsive CSS for [bw_testimonials] ( oik-testimonials plugin )


  • Added: [bw_list] can be used to list attachments with thumbnail images
  • Fixed: Fixed notify message from oik theme server improvements


  • Added: [bw_jq] src parameter to allow ini posts/pages
  • Added: First version of oik themes automatic update logic
  • Added: oik_register_theme_server()
  • Added: bw_jquery_af() - for jQuery anonymous functions
  • Fixed: bw_countdown() requires bw_jquery.inc at start of function
  • Added: CSS to support responsive [bw_video] shortcode.


  • Added [bw_countdown] shortcode using jQuery countdown
  • Added jQuery countdown version 1.6.1
  • [bw_wtf] shortcode now supports slider effects on hover/click
  • Added $json_options parameter to bw_jkv()


  • Added: oik-user requires bw_user_array() and bw_user_list() - originally in oik-plugins


  • Added: oik options page now calls 'oik_menu_box' filter ( used by oik-user )
  • Changed: When oik-user is activated display of oik-options requires alt=0 parameter
  • Changed: [bw_show_googlemap] supports oik-user
  • Changed: bw_get_option_arr() for backward compatibility alt= parameter overrides user= parameter


  • Added: [bw_contact_form] with Akismet checking and copy email sent to visitor. Also includes nonce checking and unique form IDs
  • Added: atdot=, at= and dot= parameters for email display obfuscation on [bw_mailto] and [bw_email]
  • Added: bw_default_user() and bw_get_current_user_id() APIs for use by oik-user
  • Changed: bw_get_option_arr() to determine how to support user= and alt= parameters if oik-user is active


  • Added: jquery.cycle.all.min.js - Minified jQuery cycle
  • Added: support for multiple selection noderef fields - required by oik-shortcodes
  • Added: atdot= parameter for [bw_email] and [bw_mailto] - converts "name@example.com" to "name at example dot com", or provide your own value
  • Changed: Improved some comments for automatic documentation


  • Changed: bw_get_metakey_array() uses exclude=-1 to allow the current post to be included in the results
  • Changed: Example for the [bw_accordion] shortcode
  • Changed: Example for the [bw_tabs] shortcode
  • Changed: bw_jkv() now uses the JSON_FORCE_OBJECT option in addition to JSON_NUMERIC_CHECK
  • Added: jQuery fancybox-1.3.4 (incl. easing-1.3 and mousewheel-3.0.4), plus images and CSS


  • Added: jquery.cycle.all.js (latest version, but not a packed one).
  • Changed: code for [bw_jq] shortcode will now attempt to find the jQuery script file in plugins it's aware of (prototype version)


  • Added: [bw_link] shortcode


  • Added: Support for the id=nn, parameter for ALL shortcodes listing posts, pages or custom post types
  • Changed: oik version now determined from Template
  • Changed: Allow for blank "date" fields. Needed for oik-batchmove plugin
  • Changed: _bw_missing_shortcodefunc() now returns the message to the page


  • Removed: The oik base plugin no longer delivers child plugins. These are now standalone.
  • Added: oik user options - fields can now be set per user
  • Added: Support for user=id|login|email|nicename parameter on: [bw_address], [bw_geo], [bw_telephone] and related shortcodes
  • Added: [bw_accordion] shortcode - display posts as an accordion
  • Added: [bw_tabs] shortcode - display posts in tab blocks
  • Added: [bw_jq] shortcode - perform a jQuery method.
  • Added: jQuery Flexslider v2.1 ( from Woo Themes )
  • Added: [bw_login], [bw_loginout] and [bw_register] shortcodes
  • Changed: Restructured include files - some shortcode functions moved to shortcodes folder


  • Added: [bw_iframe] shortcode
  • Added: [bw_parent] shortcode
  • Changed: bw_textfield() and bw_emailfield() use current $_REQUEST value if null passed
  • Changed: iselect() identifies the selected item from the key or value


  • Fixed: replaced calls to is_int() with is_numeric() when checking for post_id rather than names
  • Fixed: bw_array_get_dcb() checks the obtained value to be identical to the default before calling the deferred call back function
  • Fixed: bw_load_noderef() sets the post_parent to 0 before calling bw_get_posts()
  • Added: phpdoc comments for some functions
  • Added: bw_json_encode() to support users of oik-nivo-slider with PHP 5.3.2 or less
  • Fixed: bw_jkv() uses bw_json_encode() - to avoid getting Warnings when using PHP 5.3.2 or less


  • Added: bw_wp_error() and includes\bw_error.inc - wrapper to WP_error
  • Added: support for plugin relocation during "pre_current_active_plugins"
  • Added: support for receiving updates and plugin information from diverse plugin repositories (e.g. http://www.oik-plugins.com or http://www.oik-plugins.co.uk )
  • Added: oik_register_plugin_server() to allow a plugin to specify its source repository for updates
  • Added: BW_OIK_PLUGINS_SERVER constant defaults to http://www.oik-plugins.com, if not defined in wp-config.php
  • Added: admin\oik-relocate.inc to perform plugin relocation
  • Changed: bw_thumbnail() and bw_get_thumbnail_size() to improve support for thumbnail image size selection
  • Changed: bw_get_post() - add $atts parameter, allow $post_id to be either the post ID or name
  • Added: Added bw_remote_post() to includes\oik-remote.inc. Used by oik_lazy_altapi_check()
  • Changed: bw_invoke_shortcode() - make $text parameter optional
  • Fixed: Use bw_thumbnail_full() to find the file name for the full size image attachment. No longer relies on $post->guid
  • Changed: Improved some phpdoc comments - part of API documentation
  • Added: bw_emailfield(), iemail() and isubmit()
  • Changed: bw_textfield() and bw_textfield_arr() to support for HTML 5 input field parameters and jQuery validation
  • Added: "oik_admin_menu" action, to allow dependent routines to know when oik has responded to "admin_menu".
  • Added: Support for select fields in admin page lists (oik-fields plugin)
  • Added: apikey support for premium plugins
  • Added: Plugins menu item to define plugin settings ( server and API key ) and perform a manual check for updates
  • Changed: readme.txt
  • Added: bw_load_noderef() now supports multiple post_types
  • Added: noderef meta field supports #optional parameter
  • Added: iradio() and bw_radio() APIs in order to support the jQuery star rating plugin
  • Added: OIK_FORCE_CHECK constant for use during debugging only
  • Changed: ihidden() always produces a hidden input field regardless of the value
  • Added: bw_current_url() - return the current URL
  • Changed: Improved support for multisite requests to an oik plugins server
  • Changed: started decoupling action trace from basic trace functions (oik-bwtrace plugin)
  • Changed: [bw_pages] now supports custom text for "read more" links extracted from the
  • Changed: bw_excerpt() restructured to support shortcode expansion using the "get_the_excerpt" filter
  • Changed: Inclusion of oik.css is now optional.
  • Changed: oik.css should better respect your theme's styling. e.g. Attachment links now have class bw_attachment
  • Changed: Altered generated HTML for a number of shortcodes in line with oik.css changes
  • Changed: bwlink.css is now only enqueued by the oik-bob-bing-wide plugin. Note: A lot of oik.css was moved to bwlink.css
  • Deleted: deprecated; bw_add_ajaxurl(), bw_preload_button_options(), oik_optional_plugins()
  • Fixed: Corrected syntax help for the [div] shortcode
  • Fixed: bw_format_attachment() no longer produces an empty link when no image is required
  • Changed: bw_array_get_dcb() will accept null parameters e.g. [bw_email prefix='' suffix='']
  • Added: Syntax help for quite a few shortcodes where the parameters were previously undocumented: bw_address, bw_email and variations, bw_tel and variations, bw_copyright, bw_qrcode, bw_attachments, bw_pdf, bw_portfolio, bw_codes, sdiv, stag, etag
  • Added: bw_emailfield_arr()
  • Changed: Improved support for shortcode help
  • Changed: bw_validate_torf() now accepts "on" as true
  • Changed: [bw_plug] (activated by oik-bob-bing-wide plugin) supports oik-plugins servers
  • Added: includes/oik-filters.inc providing new functions to replace and restore filters
  • Changed: Wrapped the separator string for bw_telephone in a span, enabling it to be styled using custom CSS.
  • Changed: All child plugins now use version 1.18
  • Fixed: Comments should no longer be assigned to the wrong post. Calls to setup_postdata() eliminated.
  • Added: [bw_list] and [bw_post] now support the thumbnail parameter - default "none"
  • Added: Support for nivo jQuery 3.1 - by allowing the addition of the data-thumb attribute to img tags
  • Added: Support for themes built using Artisteer 4.0
  • Changed: [bw_block] and [bw_eblock] are much simpler for Artisteer 4.0 themes
  • Changed: Removed [wp-1], [wp-2] and [wp-3] shortcodes - they were only used to test ticket #17657


  • Fixed: Fatal error: Call to undefined function oik_require() in oik\admin\oik-header.inc on line 2
  • Added: CSS to disable the background image for links to .pdf files ( selector: div.noicon a )


  • Fixed: New solution for bw_jquery() API broke oik-nivo-slider on admin pages
  • Added: Support for [bw_table] shortcode


  • Added: oik-options - use Google geocoding to find latitude and longitude if not specified
  • Added: oik-fields plugin supports display of custom columns in admin list; currency, numeric, date, select and noderef
  • Added: API - bw_get_active_plugins() - to list active plugins for WordPress OR WordPress Multisite
  • Added: API - bw_get_post() - wrapper to get_posts to load the post identified by ID $post_id AND $post_type
  • Added: API - bw_get_theme() - wrapper to WordPress functions to get the current theme.
  • Added: API - bw_remote_get() - wrapper to wp_remote_get(). Used in geocoding
  • Added: Add support for textarea metadata for custom post types
  • Changed: oik-header now works for child themes of "Twenty Eleven"
  • Changed: oik options - PayPal currencies offered in a select list
  • Changed: oik options - Artisteer versions offered in a select list
  • Changed: [bw_editcss] support for WP 3.4 and above.
  • Changed: API - bw_trace2() supports a 3rd parameter $show_args. Default=true. Slightly easier than using bw_trace()
  • Changed: API - bw_jquery() for oik-nivo-slider when jquery.js is not already included before
  • Changed: API - bw_format_attachment() - default 'n' for block parameter
  • Fixed: API - bw_load_noderef() requires includes/bw_posts.inc
  • Fixed: Renamed quote() to bw_quote() due to function naming conflict
  • Fixed: Fixed more "Notices" messages for the [sediv] shortcode


  • Added: Support for oik-privacy-plugin - new APIs below
  • Added: Support for custom links on images. This change enhances [bw_images] and [nivo] (see the oik-nivo-slider plugin)
  • Added: API - bw_image_get_link() - get the custom link or permalink for an attachment
  • Added: API - bw_textarea_cb_arr() - displays an textarea matched with a checkbox
  • Added: API - bw_recreate_options() - alter the value of "autoload" for a WordPress option fieldd
  • Added: API - bw_term_array() - build a simple ID, title array from an array of $term objects
  • Added: API - bw_datepicker_enqueue_script() - enqueue the jQuery UI datepicker
  • Added: API - includes/oik-menus.inc for nav menu functions
  • Added: API - bw_form_start() - start a WordPress form for options fields
  • Added: API - bw_reset_options() - reset or initialise an options field to "latest" defaults
  • Changed: bw_jquery() - added $windowload parameter for jQuery(window).load (when true) or jQuery(document).ready (when false = default)
  • Changed: bw_tablerow() doesn't produce a row if the $td_array is empty
  • Changed: TinyMCE buttons now default to "on" when first displayed on the oik options > Buttons page
  • Fixed: Dependency checking didn't work in WordPress MultiSite installations.
  • Fixed: Eliminated "Notices" displayed when oik options is first displayed.


  • Added: oik extra shortcode options for shortcodes with alternative values ( alt=1 keyword )
  • Added: shortcode help page - listing all current shortcodes
  • Added: new function to assist in earlier detection of action or filter processing (oik trace actions)
  • Added: support for dependent plugins to indicate the minimum required plugin version
  • Added: link to "Getting started with oik plugins"
  • Added: New functions to set jQuery JSON parms from WordPress options
  • Added: License: and License URI:
  • Changed: Improved styling of admin pages
  • Changed: Improved logic for the shortcodes that support the alt=1 keyword ( [bw_mailto], [bw_contact], [bw_telephone], [bw_mobile], [bw_address], [bw_show_googlemap], [bw_geo], [bw_directions] )
  • Changed: User configurable Google Maps intro text replaces hardcoded version
  • Changed: Improved "usage notes"
  • Changed: Improved display of oik action options page
  • Changed: Improved display of oik trace options page
  • Changed: bw_backtrace() is now a lazy API
  • Changed: Improved logic for producing shortcode examples and snippets, adding support for "oik generated examples"
  • Changed: More help, syntax and example logic for shortcodes including: [bw_bookmarks], [bwtrace]
  • Changed: [paypal] shortcode now accepts the country (default "GB") and currency (default "GBP")
  • Changed: [bw_contact] now uses the microformat for an hCard (span classes are vcard and fn (full name))
  • Changed: API changes to support alt=1 parameter: bw_default_empty_att()
  • Changed: Copyright statement suffix text now overrideable e.g. [bw_copyright suffix="copyright suffix"]
  • Changed: API changes in bobbforms.inc: iarea() - added rows parameter, icheckbox() - returns a value when checkbox is not selected
  • Changed: added more bd-nnn class names for { min-height: nnnpx; } for non Artisteer themes
  • Changed: optional plugins link to their own page on oik-plugins.com
  • Fixed: some of the shortcode help one-liners. Also set default to '?' for unknown/undocumented shortcodes
  • Fixed: Individual "follow me" shortcodes don't display the link address
  • Fixed: [lxx] shortcodes should not expand in titles (oik-bob-bing-wide plugin)


  • Added: "oik_loaded" actions for lazy initialisation of dependent plugins.
  • Added: AJAX enabled dialog for listing shortcodes, showing syntax and providing further information online
  • Added: CSS support for responsive images
  • Added: Improved support for nested shortcodes being expanded in excerpts
  • Added: [bw_code] shortcode to display help, syntax, example, live example and snippet for a shortcode
  • Added: [bw_codes] table to summarise active shortcodes
  • Added: [bw_power] shortcode for "Proudly powered by WordPress" link to WordPress.org
  • Added: [bw_thumbs] shortcode - shows the thumbnail images as links
  • Added: action and filter logging, an optional addition to tracing (for developers)
  • Added: edit custom CSS button (for developers and designers)
  • Added: files for deprecated functions - but these are TOTALLY lazy
  • Added: help and syntax information for (some) NextGEN and Portfolio slideshow shortcodes
  • Added: help and syntax information for the NextGEN [nggallery] shortcode
  • Added: shortcode quicktag (labelled [] ) with jQuery code shared with th existing TinyMCE buttons
  • Added: shortcodes can now provide: help, syntax, examples, live examples and snippets
  • Added: trace options, trace actions and trace reset buttons
  • Changed: Improved API for form fields
  • Changed: PayPal shortcodes support currency (e.g. 'GBP') and location (e.g. 'GB') parameters
  • Changed: TinyMCE button selection is now part of the oik settings menu
  • Changed: [bw_logo] now includes jQuery code to automatically resize the image when displayed in a text widget in an Artisteer header
  • Changed: [bw_wtf] now prints the raw content of the post
  • Changed: added shortcodes folder where the lazy shortcode logic is implemented
  • Changed: code only needed for admin pages has been made lazy
  • Changed: oik options is now in its own submenu with a dashboard like overview page
  • Changed: restructured to make shortcodes lazy
  • Changed: trace functions are very lazy
  • Fixed: CSS to fix a problem with GoogleMap's images on "responsive" sites
  • Fixed: Changed CSS fix for Artisteer nested blocks; original solution broke hmenus
  • Fixed: edit custom CSS links works on Multisite
  • Fixed: elimination of as many "Notice" messages as possible


  • Added: [bw_attachments] for listing attachments
  • Added: [bw_pdf] for .pdf type attachments
  • Added: [bw_tree] for producing a hierarchical tree of children of a 'page'
  • Added: [bw_posts] for producing a simple list of posts
  • Added: [bw_copyright] for use in footers
  • Added: Introduced support for lazy shortcodes - where the shortcode function is not loaded until it's needed
  • Added: [stag] and [etag] shortcodes to use when using the HTML doesn't seem to work
  • Added: oik-boot.inc and changed oik_path to accept $file parameter
  • Added: [bwtrace] button for easier access to trace reset
  • Changed: better array/object detection in bw_array_get()
  • Changed: added bw_array_get_dcb() where dcb = deferred callback. It only calls the callback function for the default when needed.
  • Changed: default function for bw_array_get_dcb is __() - to allow for i18n
  • Changed: Update Copyright years throughout
  • Changed: alter custom header background image styling so that it does not repeat
  • Changed: oik.css - added some additional styling - early support for responsive blocks
  • Fixed: Fixed problem where shortcode escaping did not work. [[oik]] will now become [oik]
  • Fixed: Added missing shortcode function for [bw_picasa]
  • Fixed: Added missing bw_block_25.inc - even though it may not be correct for Artisteer 2.5


  • Added: oik-bbpress to cater for expanded shortcodes in titles used as text attributes
  • Added: oik-header support for custom header background images with the Twenty Eleven theme
  • Changed: [bw_wtf] now prints the post or page id (only works for the main post, not nested posts)
  • Changed: wrote a brief comment about ticket #17567 and shortcodes with hyphens


  • Added: [bw_blockquote] and [bw_cite} shortcode - to overcome problems with wpautop()
  • Added: cite() function for bw API
  • Changed: Improved default processing for [bw_pages] and [bw_list] when used without parameters in a 'post' or a 'page'
  • Changed: stylesheets enqueued during the 'wp_enqueue_scripts' action hook (change for WP 3.3)


  • Added: extra parameter to alink() to support additional fields in the anchor () tag
  • Added: oik-bp-signup-email - to direct the verification email to the site admin rather than the registrant
  • Added: oik-fields plugin - for [bw_field] (alias [bw_fields]) shortcode - display custom fields within the content
  • Added: oik-header plugin - custom header images for pages or posts
  • Added: oik_path() and oik_require() functions
  • Changed: image/retimage API: title defaults to NULL - so can be omitted
  • Fixed: [bw_pages] if the post_type is page, no longer set post_parent automatically


  • Added: [bw_bookmarks] shortcode - equivalent to the Links widget
  • Added: [bw_list] shortcode - a simple list of links for any post type
  • Added bw_trace2() function - improved (easier to code) wrapper to bw_trace()
  • Changed: custom.css should be embedded after style.css (and other stylesheets. e.g. buddypress stylesheets)
  • Changed add parameters ( me and url) to the "follow me" shortcodes - to set values for 'me' and the social media url
  • Changed: oik-bwtrace. The notes suggest .loh for a the log file extension.
  • Changed: [bw_plug] tries to help with plugin names
  • Fixed: bw_backtrace() first checks if trace is enabled.
  • Fixed: ability to specify a custom image size for [bw_pages] e.g. [bw_pages thumbnail=80] or [bw_pages thumbnail="120x80"]
  • Fixed: more clearly shows where the customCSS file will reside... in the current theme directory


  • Changed: [clear] now expands to two classes: clear and cleared
  • Fixed: reduced more warnings that were produced when WP_DEBUG is set
  • Added: bw_wp_title() - use to return a nice SEO title when WordPress SEO may or may not be activated
  • Added: options to tracing to include or exclude information that can help or hinder problem determination
  • Changed: Default to not showing the address type as Work - hidden by CSS
  • Added: Option to edit the custom CSS file using standard WordPress functions
  • Changed: Custom CSS file now expected to be in the stylesheet directory.
  • Added: Dummy custom CSS file created in stylesheet diretory, if defined but not already present
  • Added: Initial support for selecting custom post types in [bw_pages] shortcode, restricting by category
  • Fixed: [bw_pages] shortcode excludes the current post. Needed to prevent recursion in strange scenarios
  • Changed: update [bw_tides] to reflect changes to the XML in the RSS feed from http://www.tidetimes.org.uk


  • Added: oik-pages plugin for [bw_pages] shortcode to list subpages, optionally within [bw_block]s
  • Added: [bw_block]/[bw_eblock] now supports themes generated with Artisteer 3.1 beta versions ( v3.1.0.44079 and v3.1.0.42580 )
  • Added: option to specify which version of Artisteer was used to generate your theme: 31, 30, 25, or na
  • Added: Basic support for using [bw_block] when NOT using an Artisteer theme
  • Changed: Documentation has been migrated to http://www.oik-plugins.com/oik
  • Changed: some improvements to the bw API
  • Fixed: reduced some warnings that were produced when WP_DEBUG is set
  • Changed: oik-bwtrace changes to aid problem determination after a change has been made
  • Changed: Added support for BuddyPress filter - bp_screens


  • Changed: Lost another fight with SVN :-(


  • Changed: [bw_show_googlemap] now uses V3 of the GoogleMap API so a GoogleMap API key is no longer needed
  • Added: Parameters to [bw_show_googlemap] allowing more than one GoogleMap.
  • Added: [div]/[sdiv], [ediv] and [sediv] shortcodes for <div> tags
  • Added: support for Artisteer art-blockcontent and heading background images
  • Added: [bw_emergency] for Emergency phone number
  • Added: [bw_abbr] for company abbreviation e.g. bw = bobbing wide
  • Fixed: [gpslides] - safer invocation of Slideshow Gallery Pro
  • Fixed: bw_shortcode_event() will only call the shortcode expansion and post processing function if it exists
  • Added: [art] and [lart] shortcodes for Artisteer
  • Added: [bp] and [lbp] shortcodes for BuddyPress
  • Fixed: includes the emergency fix applied to oik version 1.2
  • Added: Styling for [wp], [bp], [drupal] and [art] shortcodes


  • Added: oik-blocks - [bw_block] and [bw_eblock] shortcodes for creating Artisteer style blocks within your content
  • Added: [bw_logo] and [bw_qrcode] shortcodes - to include your logo image and QR code images on your pages.
  • Added: [lbw] shortcode - Links to various Bobbing Wide websites
  • Added: [wp] [wpms] and [drupal] shortcodes - for WordPress, WordPress Multisite and Drupal
  • Added: [lwp] [lwpms] and [ldrupal] shortcodes - links to WordPress.org and Drupal.org


  • Added: Safe shortcode expansion. Shortcode expansion is now sensitive to the current filter.
  • Added: Dummy handling of wp_footer when current_filter() does not return a filter name
  • Added: cacheing of plugin information pulled from WordPress.org
  • Added: [bw_plug] supports multiple plugin names to automatically create a table of different WordPress plugins
  • Added: [bw_plug option='active_plugins'] to list active plugins
  • Added: [OIK] expands to Often Included Key-information
  • Fixed: Problem with missing bw_oik() function
  • Fixed: Renamed "oik-bwtrace" to "oik bwtrace" to allow "oik" to be the plugin that gets activated by default


  • Fixed: Hopefully this contains what should have been in 0.9


  • Added: oik-email-signature to help you generate an email signature file for your email client
  • Added: [bw_follow_me] shortcode for easy to include Follow me links for Twitter, Facebook, LinkedIn, GooglePlus, YouTube, Flickr
  • Added: bw_gallery() function for use in customised themes


  • Added: [bw_googleplus] shortcode - follow me on GooglePlus
  • Added: [bw_contact_button] shortcode - for Contact me buttons
  • Added: [gpslides]


  • Added: [bw_skype] shortcode to display your skype name
  • Added: [bw_tides] shortcode - tide times in the UK
  • Added: [bw_directions] shortcode - get Google directions to your chosen location
  • Added: [ngslideshow] shortcode for co-existence of NextGen gallery and Slideshow Gallery Pro
  • Fixed: invalid XHTML generated for fob, bong hide shortcodes
  • Added: Support for Drupal versions of Add post and Add page buttons


  • Added: Ability to select [bw_tel] and [bw_mob] from the oik shortcode button in Tiny MCE
  • Added: [bw_module] shortcode - similar to [bw_plugin] but for Drupal modules
  • Fixed: Correct version numbers for the Drupal module version


  • Added: [bw_tel] and [bw_mob] - inline versions of [bw_telephone] and [bw_mobile]
  • Fixed: plugin versions should be correct


  • Added: [bw_post] and [bw_page] buttons for easy creation of New Posts and Pages
  • Changed: icons for TinyMCE
  • Added parameter to pass CSS id field to alink()
  • Added [bw_plug name="plugin-name" link="URL" info="y/n"] shortcode for displaying information about WordPress plugins


  • Added: Tiny MCE button for entry of the [bw_button] shortcode parameters
  • Added: Tiny MCE button to select an oik shortcode
  • Note: optional parameters to the oik shortcode button are not yet effective
  • Added: [bw_email] for inline mailto: link. Use [bw_mailto] for a link with a prefix
  • Fixed: attempted to correct problems in this file - my misunderstanding of how to do links
  • Fixed: Added code to expand [bw_picasa] shortcode
  • Added: [loik] shortcode - a link to the oik plugin
  • Change: Moved art_button() to bobbfunc.inc so that it could be used on the oik options page


  • Added shortcodes for [bw_flickr], [bw_youtube], [bw_picasa]
  • renamed bwtrace.php to oik-bwtrace.php


  • initial version

Requires: 3.7 or higher
Compatible up to: 3.9.2
Last Updated: 2014-4-17
Downloads: 74,046


3 stars
3.8 out of 5 stars


Got something to say? Need help?


Not enough data

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

100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1
100,2,2 100,1,1
100,1,1 100,1,1
50,2,1 100,1,1
100,1,1 100,1,1
100,1,1 100,1,1
100,1,1 100,1,1
100,1,1 100,1,1