Adds admin login / logout link via shortcode. Snagged from Genesis theme.
<?php
/*
*
* Snagged from Genesis!
* /wp-content/themes/genesis/lib/shortcodes/footer.php
*
*/
add_shortcode( 'tk-loginout', 'tk_loginout_shortcode' );
/**
* Adds admin login / logout link.
*
* Support shortcode attributes are:
* after (output after link, default is empty string),
* before (output before link, default is empty string),
* redirect (path to redirect to on login, default is empty string).
*
*
* @param array|string $atts Shortcode attributes. Empty string if no attributes.
* @return string Shortcode output
*/
function tk_loginout_shortcode( $atts ) {
$defaults = array(
'after' => '',
'before' => '',
'redirect' => '',
);
$atts = shortcode_atts( $defaults, $atts, 'tk-loginout' );
if ( ! is_user_logged_in() )
$link = '<a href="' . esc_url( wp_login_url( $atts['redirect'] ) ) . '">' . __( 'Log in', 'tk-loginout' ) . '</a>';
else
$link = '<a href="' . esc_url( wp_logout_url( $atts['redirect'] ) ) . '">' . __( 'Log out', 'tk-loginout' ) . '</a>';
$output = $atts['before'] . apply_filters( 'loginout', $link ) . $atts['after'];
return $output;
}