Adds [um_loggedin] shortcode to protect content

This commit is contained in:
Ultimate Member
2016-01-02 01:36:11 +02:00
parent fac38c09c6
commit eab1e87e34
5 changed files with 81 additions and 1 deletions
+42
View File
@@ -9,6 +9,8 @@ class UM_Shortcodes {
$this->loop = '';
add_shortcode('ultimatemember', array(&$this, 'ultimatemember'), 1);
add_shortcode('um_loggedin', array(&$this, 'um_loggedin') );
add_filter( 'body_class', array(&$this, 'body_class'), 0 );
@@ -175,6 +177,38 @@ class UM_Shortcodes {
return $classes;
}
/***
*** @Logged-in only content
***/
function um_loggedin( $args = array(), $content = "" ) {
global $ultimatemember;
ob_start();
$defaults = array(
'lock_text' => __('This content has been restricted to logged in users only. Please <a href="{login_referrer}">login</a> to view this content.','ultimatemember' ),
'show_lock' => 'yes'
);
$args = wp_parse_args( $args, $defaults );
$args['lock_text'] = $this->convert_locker_tags( $args['lock_text'] );
if ( !is_user_logged_in() ) {
if ( $args['show_lock'] == 'no' ) {
echo '';
} else {
$ultimatemember->shortcodes->set_args = $args;
$ultimatemember->shortcodes->load_template( 'login-to-view' );
}
} else {
echo do_shortcode( $this->convert_locker_tags( $content ) );
}
$output = ob_get_contents();
ob_end_clean();
return $output;
}
/***
*** @Shortcode
***/
@@ -369,6 +403,14 @@ class UM_Shortcodes {
$shortcode = '[ultimatemember form_id='.$post_id.']';
return $shortcode;
}
/***
*** @convert access lock tags
***/
function convert_locker_tags( $str ) {
$str = um_convert_tags( $str );
return $str;
}
/***
*** @convert user tags in a string