LLMS_Shortcode_Hide_Content::get_output()

Retrieve the actual content of the shortcode


Description Description

$atts & $content are both filtered before being passed to get_output() output is filtered so the return of get_output() doesn’t need its own filter


Top ↑

Return Return

(string)


Top ↑

Source Source

File: includes/shortcodes/class.llms.shortcode.hide.content.php

	protected function get_output() {

		// Backwards compatibility, get membership if set and fallback to the id.
		$ids = $this->get_attribute( 'membership' ) ? $this->get_attribute( 'membership' ) : $this->get_attribute( 'id' );

		// Explode, trim whitespace and remove empty values.
		$ids = (array) array_map( 'trim', array_filter( explode( ',', $ids ) ) );

		// Assume content is hidden.
		$hidden = true;

		if ( 'any' === $this->get_attribute( 'relation' ) && ! empty( $ids ) ) {
			foreach ( $ids as $id ) {
				if ( llms_is_user_enrolled( get_current_user_id(), $id ) ) {
					$hidden = false;
					break;
				}
			}
		} elseif ( 'all' === $this->get_attribute( 'relation' ) && ! empty( $ids ) ) {
			$inc = 0;
			foreach ( $ids as $id ) {
				if ( llms_is_user_enrolled( get_current_user_id(), $id ) ) {
					$inc++;
				}
			}

			if ( count( $ids ) === $inc ) {
				$hidden = false;
			}
		}

		return ! $hidden ? do_shortcode( $this->get_content() ) : $this->get_attribute( 'message' );

	}


Top ↑

Changelog Changelog

Changelog
Version Description
3.5.1
3.24.1 Introduced.

Top ↑

User Contributed Notes User Contributed Notes

You must log in before being able to contribute a note or feedback.