<?php
/*
Plugin Name: Logged In and Out Shortcodes
Description: Shortcodes for users logged in and out.
Version: 1.0
Author: Ipstenu (Mika Epstein)
License: MIT
Initial shortcode lifted from Justin Tadlock's Members plugin - http://wordpress.org/extend/plugins/members/
*/
// [loggedin_message]This content is only shown to logged-in users.[/is_user_logged_in]
// Shows content to logged in users
add_shortcode( 'loggedin_message', 'ippy_loggedin_message_shortcode' );
function ippy_loggedin_message_shortcode( $attr, $content = null ) {
/* If it is a feed or the user is not logged in, return nothing. */
if ( is_feed() || !is_user_logged_in() || is_null( $content ) )
return '';
/* Return the content. */
return do_shortcode( $content );
}
// [loggedout_message]This content is only shown to logged-in users.[/is_user_logged_in]
// Shows content to logged out users :)
add_shortcode( 'loggedout_message', 'ippy_loggedout_message_shortcode' );
function ippy_loggedout_message_shortcode( $attr, $content = null ) {
/* If it is a feed or the user is not logged in, return nothing. */
if ( is_user_logged_in() || is_null( $content ) )
return '';
/* Return the content. */
return do_shortcode( $content );
}
// [loginform]
// Shows an inline login form.
function ippy_loginform_shortcode( $atts, $content = null ) {
extract( shortcode_atts( array(
'redirect' => ''
), $atts ) );
if (!is_user_logged_in()) {
if($redirect) {
$redirect_url = $redirect;
} else {
$redirect_url = get_permalink();
}
$form = wp_login_form(array('echo' => false, 'redirect' => $redirect_url ));
}
return $form;
}
add_shortcode('loginform', 'ippy_loginform_shortcode');