Finally, use widgets to edit the Footer area ('Return to Top' plus 'Copyright/Credits') in Genesis Framework and Child Themes.
Author: | David Decker - DECKERWEB (profile at wordpress.org) |
WordPress version required: | 3.2 |
WordPress version tested: | 5.1 |
Plugin version: | 1.4.0 |
Added to WordPress repository: | 24-04-2012 |
Last updated: | 21-02-2019
Warning! This plugin has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.
|
Rating, %: | 84 |
Rated by: | 10 |
Plugin URI: | http://genesisthemes.de/en/wp-plugins/genesis... |
Total downloads: | 67 174 |
Active installs: | 1 000+ |
Click to start download |
Screenshots
Genesis Widgetized Footer: two additional widget areas (sidebars) - here with some example Text Widgets placed in... (Click here for larger version of screenshot)
Genesis Widgetized Footer: the plugin in action on a live site - displaying three widget areas here: 'Footer Area #1' (left side, one third width), 'Footer Area #' (right side, two thirds width) plus the optional 'Footer Disclaimer' widget at the bottom (full-width). Shown here with my "Autobahn" child theme. (Click here for larger version of screenshot)
Genesis Widgetized Footer: plugin's optional Shortcodes in action for a post. (Click here for larger version of screenshot)
Genesis Widgetized Footer: plugin's help tab. (Click here for larger version of screenshot)
I already use “Genesis Simple Edits” so why in the world do I need this plugin?
If you’re satisfied with your configuration there’s no need for this plugin. Never change a running system :). Otherwise you might find this plugin useful as it also supports all of the Genesis Footer Shortcodes! And you might have even more possibilities then.
Are there any limitations of this plugin?
Yes. If a child theme has repositioned its footer or done other things with that, my plugin cannot work. It relies on the default footer hook of Genesis which is used unchanged by almost all official child themes! For the slightly different footer functions in “Prose”, “Pretty Young Thing” and “Modern Blogger” child themes is already full support included, though!
Where do I find the Genesis Footer Shortcode reference?
All of the seven available shortcodes are listed and explained here: Genesis Footer Shortcodes
How can I reposition the Disclaimer widget after the footer, just at the very bottom of the page?
This is possible and the plugin already comes with a handy helper function for that. Just use the following code in your child theme’s functions.php file or in your functionality plugin:
/** Genesis Widgetized Footer: Reposition Disclaimer Widget to the Very Bottom */
add_action( 'genesis_before', '__gwfoot_footer_disclaimer_bottom' );
–> Explanation: This helper function just fires through the ‘genesis_before’ hook to catch the right priorities for loading stuff but places the whole widget area in the ‘genesis_after’ hook! Note: This function is fully compatible with the “Prose” child theme, as it does various checks.
How does the styling work?
Same as before using this plugin. The plugin does NOT touch any theme styles. Still it can be neccessary to tweak some styles, for example if you’re using a search form in the footer you might change the button color or font size or whatever a bit.
For extended styling of the new widget areas there a few IDs and classes included. These are:
- ‘Footer Area #1’:
- ID wrapped around whole area:
#gwfoot-footer-one-area
- area class full-width case:
.gwfoot-footer-one-full-width
- area class one third case:
.gwfoot-footer-one-one-third
- Widgets, before widget:
.gwfoot-footer-one
- ID wrapped around whole area:
- ‘Footer Area #2’:
- ID wrapped around whole area:
#gwfoot-footer-two-area
- area class full-width case:
.gwfoot-footer-two-full-width
- area class two thirds case:
.gwfoot-footer-two-two-thirds
- Widgets, before widget:
.gwfoot-footer-two
- ID wrapped around whole area:
- ‘Footer Disclaimer’:
- ID wrapped around whole area:
#gwfoot-footer-disclaimer-area
- area content class:
.gwfoot-footer-disclaimer-content
- Widgets, before widget:
.gwfoot-footer-disclaimer
- ID wrapped around whole area:
If that’s still not enough, you can even enqueue your own style, an action hook is included for that: gwfoot_load_styles
— This hook fires within the WordPress action hook wp_enqueue_scripts
just after properly enqueueing the plugin’s styles and only if at least one of the three widgets is active, so it’s fully conditional!
For Landing Page Templates, how can I re-add one or both Footer Widget Areas?
Since plugin version 1.2.0+ both areas are hidden for all known landing page templates of official plus market/community child themes. Re-adding them is possible via your child theme’s functions.php
file or a functionality plugin. Just add this code:
/** Genesis Widgetized Footer: Re-add Footer Widget Areas for Landing Pages */
define( 'GWFOOT_REMOVE_LANDING_FOOTER', FALSE );
For Landing Page Templates, how can I remove the Dislaimer Area?
Since plugin version 1.2.0+ removing is possible via your child theme’s functions.php
file or a functionality plugin. Just add this code:
/** Genesis Widgetized Footer: Remove Disclaimer for Landing Pages */
define( 'GWFOOT_LANDING_DISCLAIMER', FALSE );
Can I completely remove Disclaimer Widget Area?
Yes, this is possible since plugin version 1.3.0! Just add this code to your child theme’s functions.php
file or a functionality plugin:
/** Genesis Widgetized Footer: Remove Disclaimer Widget Area */
define( 'GWFOOT_NO_DISCLAIMER_WIDGET_AREA', TRUE );
Could I disable the Shortcode support for widgets?
Of course, it’s possible! Just add the following constant to your child theme’s functions.php
file or to a functionality plugin:
/** Genesis Widgetized Footer: Remove Widgets Shortcode Support */
define( 'GWFOOT_NO_WIDGETS_SHORTCODE', TRUE );
Some webmasters could need this for security reasons regarding their stuff members or for whatever other reasons… :).
What are parameters of the plugin’s own Shortcodes?
(1) Parameters for [gwfoot-widget-area]
Shortcode:
area
— ID of the Widget area (Sidebar) (default: none, empty)- The following values are accepted:
footer-one
ORfooter-two
ORfooter-disclaimer
(2) Parameters for [gwfoot-lastupdated]
Shortcode:
date_format
— Date format (default: format you’ve set via “General Settings”)wrapper
— HTML wrapper tag (default:p
(paragraph))class
— Additional custom CSS class for the wrapper (default: none, empty)text_before
— Text string, displayed before the date (default:Latest update date:
)text_after
— Text string, displayed after the date (default: none, empty)
Could I completely remove the plugin’s Shortcode features?
Of course, that’s possible! Just add the following constant to your child theme’s functions.php
file or to a functionality plugin:
/** Genesis Widgetized Footer: Remove Shortcode Features */
define( 'GWFOOT_SHORTCODE_FEATURES', TRUE );
How can I customize the widget titles/strings in the admin?
I’ve just included some filters for that – if ever needed (i.e. for clients, branding purposes etc.), you can use these filters:
gwfoot_filter_footer_one_widget_title – default value: “Footer Area #1”
gwfoot_filter_footer_one_widget_description – default value: “This is the first widget area (%s) within the Genesis Footer.” (where the %s
placeholder defaults to the gwfoot_filter_footer_two_widget_title
)
gwfoot_filter_footer_two_widget_title – default value: “Footer Area #2”
gwfoot_filter_footer_two_widget_description – default value: “This is the second widget area (%s) within the Genesis Footer.” (where the %s
placeholder defaults to the gwfoot_filter_footer_two_widget_title
)
gwfoot_filter_footer_disclaimer_widget_title – default value: “Footer Disclaimer”
gwfoot_filter_footer_disclaimer_widget_description – default value: “This is the widget area of the search not found content section.”
Example code for changing one of these filters:
add_filter( 'gwfoot_filter_footer_one_widget_title', 'gwfoot_custom_footer_one_widget_title' );
/**
* Genesis Widgetized Footer: Custom Footer Area Widget Title
*/
function gwfoot_custom_footer_one_widget_title() {
return __( 'Custom Footer Area', 'your-child-theme-textdomain' );
}
Final note: I DON’T recommend to add customization code snippets to your child theme’s functions.php
file! Please use a functionality plugin or an MU-plugin instead! This way you can also use this better for Multisite environments. In general you are not abusing the functions.php for plugin-specific stuff and you are then also more independent from child theme changes etc. If you don’t know how to create such a plugin yourself just use one of my recommended ‘Code Snippets’ plugins. Read & bookmark these Sites:
- “What is a functionality plugin and how to create one?” – blog post by WPCandy
- “Creating a custom functions plugin for end users” – blog post by Justin Tadlock
- DON’T hack your
functions.php
file: Resource One – Resource Two (both by Thomas Griffin Media) - “Code Snippets” plugin by Shea Bunge – also network wide!
- “Code With WP Code Snippets” plugin by Thomas Griffin – Note: Plugin currently in development at GitHub.
- “Toolbox Modules” plugin by Sergej Mรผller – see also his plugin instructions.
All the custom & branding stuff codes above can also be found as a Gist on GitHub: https://gist.github.com/2497456 (you can also add your questions/ feedback there ๐
How can I use the advantages of this plugin for multilingual sites?
(1) In general: You may use it for “global” widgets.
(2) Usage with the “WPML” plugin:
Widgets can be translated with their “String Translation” component – this is much easier than adding complex footer credits logic for a lot of languages to your functions.php…
You can now also place the “Language Switcher Widget” at the bottom of your site :).
You can use the awesome “Widget Logic” plugin (or similar ones) and add additional paramaters, mostly conditional stuff like is_home()
in conjunction with is_language( 'de' )
etc. This way widget usage on a per-language basis is possible. Or you place in the WPML language codes like ICL_LANGUAGE_CODE == 'de'
for German language. Fore more info on that see their blog post: http://wpml.org/2011/03/howto-display-different-widgets-per-language/
With the following language detection code you are now able to make conditional statements, in the same way other WordPress conditional functions work, like is_single()
, is_home()
etc.:
/**
* WPML: Conditional Switching Languages
*
* @author David Decker - DECKERWEB
* @link http://twitter.com/deckerweb
*
* @global mixed $sitepress
*/
function is_language( $current_lang ) {
global $sitepress;
if ( $current_lang == $sitepress->get_current_language() ) {
return true;
}
}
Note: Be careful with the function name ‘is_language’ – this only works if there’s no other function in your install with that name! If it’s already taken (very rare case though), then just add a prefix like my_custom_is_language()
.
–> You now can use conditionals like that:
if ( is_language( 'de' ) ) {
// do something for German language...
} elseif ( is_language( 'es' ) ) {
// do something for Spanish language...
}
1.4.0 (2013-05-08)
- NEW: Added full support for “Metro” child theme, official, by StudioPress (note: Metro has repositioned footer).
- NEW: Added Shortcode
[gwfoot-lastupdated]
for displaying the date when your site was last updated. - NEW: Added Shortcode
[gwfoot-widget-area]
for displaying any of the plugin’s 3 Widget areas (if active) into Shortcode aware content areas. - UPDATE: Additional stylesheet now uses the WordPress convention for file names:
gwfoot-styles.min.css
is the minified default version, plus,gwfoot-styles.css
is now the development version. IfWP_DEBUG
orSCRIPT_DEBUG
constants aretrue
, the dev styles will be loaded. This makes development/ customizing & debugging a lot easier! ๐ - UPDATE: Improved versioning of stylesheet, also in light of above update :).
- UPDATE: All frontent relevant code is now moved into the plugin’s frontend file and only then loaded!
- CODE: Some code optimizations, plus code/documentation updates & improvements.
- UPDATE: Updated readme.txt file here.
- UPDATE: Updated German translations and also the .pot file for all translators.
1.3.0 (2012-12-15)
- Maintenance release
- UPDATE: Added the class placeholder to widget registrations to fullfill WordPress standard for Widgets API.
- NEW: Added constant for disabling the widget shortcode support (see FAQ here).
- NEW: Added constant for disabling the Disclaimer widget area (see FAQ here).
- CODE: Some code/documentation updates & improvements.
- UPDATE: Updated readme.txt file here.
- UPDATE: Initiated new three digits versioning, starting with this version.
- UPDATE: Updated German translations and also the .pot file for all translators.
- UPDATE: Moved screenshots to ‘assets’ folder in WP.org SVN to reduce plugin package size.
1.2.0 (2012-08-20)
- Maintenance release
- NEW: Added full support for all known Landing Page Templates in official plus market/community child themes, so that the plugin’s widget areas don’t appear there. A constant for custom disabling is included (see FAQ for more info).
- UPDATE: Improved CSS styling for the Footer Disclaimer Widget, allowing better styling/overriding via child theme. (In rare cases you may re-apply your additions to the ID
#gwfoot-footer-disclaimer-area
and/or the new class within.gwfoot-footer-disclaimer-content
.) - NEW: Compressed CSS file for improved performance (the development file has now the file name
gwfoot-styles.dev.css
and is still packaged). - NEW: Added help tab also on Genesis settings page.
- NEW: Added support for “RealPro” child theme, which is a variant of AgentPress (supporting disclaimer footer areas in both).
- CODE: Minor code/documentation updates & improvements.
- UPDATE: Updated German translations and also the .pot file for all translators.
- UPDATE: Extended and improved readme.txt file documentation here.
- UPDATE: Extended GPL License info in readme.txt as well as main plugin file.
- NEW: Easy plugin translation platform with GlotPress tool: Translate “Genesis Widgetized Footer”…
1.1.0 (2012-04-27)
- NEW: Added little help tab on Widget admin page for better user experience. (Works only with WordPress 3.3 or higher!)
- UPDATE: Moved plugin links from main file to extra admin file which only loads within ‘wp-admin’, this way it’s performance-improved! This also effects the new help tab stuff :).
- UPDATE: Improved loading of styles: only when the widgets are active, otherwise load nothing!
- BUGFIX: Corrected typo in description of ‘Footer Area #2’.
- UPDATE: Added description of helper function for Disclaimer widget to the FAQ section here.
- CODE: Minor code/documentation tweaks and improvements.
- UPDATE: Extended and improved readme.txt file documentation here.
- UPDATE: Updated German translations and also the .pot file for all translators.
- UPDATE: Added banner image on WordPress.org for better plugin branding ๐
1.0.0 (2012-04-25)
- Initial release