MLAShortcode_Support

Class MLA (Media Library Assistant) Shortcode Support provides the functions that implement the [mla_gallery] and [mla_tag_cloud] shortcodes. It also implements the mla_get_shortcode_attachments() and mla_get_terms() database access functions.

package

Media Library Assistant

since 2.20

Methods

Compose one level of an mla_term_list

_compose_term_list(string &$list, array &$links, array &$terms, array &$markup_values, array &$arguments, array &$attr) : void
static

Adds shortcode output text and term-specific links to arrays passed by reference.

since 2.25

Arguments

$list

string

Shortcode output text, by reference

$links

array

Term-specific links for flat/array output, by reference

$terms

array

Term objects, by reference

$markup_values

array

Style and list-level substitution parameters, by reference

$arguments

array

Shortcode parameters, including defaults, by reference

$attr

array

Shortcode parameters, explicit, by reference

Add level to term children and count them, all levels.

_count_term_children(object &$parent, integer $depth) : integer
static

Recalculates term counts by including items from child terms. Assumes all relevant children are already in the $terms argument.

since 2.25

Arguments

$parent

object

Parent Term objects, by reference

$depth

integer

Maximum depth of parent/child relationship

Response

integer

Total number of children, all levels

Find a term that matches $child_of

_find_child_of(array &$parents, integer $parent_id) : mixed
static
since 2.25

Arguments

$parents

array

Potential parent Term objects, by reference

$parent_id

integer

Term_id of the desired parent

Response

mixed

Term object of the desired parent else false

Find the term(s) that match $include_tree

_find_include_tree(array &$terms, array $include_tree) : mixed
static
since 2.25

Arguments

$terms

array

Potential term objects, by reference

$include_tree

array

term_id(s) of the desired terms

Response

mixed

Term object(s) of the desired terms else false

Filters the image src result, returning an icon to represent an attachment.

_get_attachment_icon_src(array|false $image, integer $attachment_id) 
static
since 2.52

Arguments

$image

array|false

Either array with src, width & height, icon src, or false.

$attachment_id

integer

Image attachment ID.

Walk a list of terms and find hierarchy, preserving source order.

_get_term_tree(array &$terms, array $arguments = array()) : array
static
since 2.25

Arguments

$terms

array

Term objects, by reference

$arguments

array

Shortcode arguments, including defaults

Response

array

( [taxonomy] => array( [root terms] => array( [fields], array( 'children' => [child terms] )

Add count of children to parent count.

_pad_term_counts( &$terms,  $taxonomy,  $post_types = NULL,  $post_stati = NULL) : null
static

Recalculates term counts by including items from child terms. Assumes all relevant children are already in the $terms argument.

since 2.20

Arguments

$terms

$taxonomy

$post_types

$post_stati

Response

null

Will break from function if conditions are not met.

Handles pagnation output types 'previous_page', 'next_page', and 'paginate_links'

_process_pagination_output_types( $output_parameters,  $markup_values,  $arguments,  $attr,  $found_rows,  $output = '') : mixed
static
since 2.20

Arguments

$output_parameters

$markup_values

$arguments

$attr

$found_rows

$output

Response

mixed

false or string with HTML for pagination output types

Handles brace/bracket escaping and parses template for a shortcode parameter

_process_shortcode_parameter( $text,  $markup_values) : string
static
since 2.20

Arguments

$text

$markup_values

Response

string

parameter with brackets, braces, substitution parameters and templates processed

Computes image dimensions for scalable graphics, e.g., SVG

_registered_dimensions() : array
static
since 2.20

Response

array

Remove the term(s) that match $exclude_tree

_remove_exclude_tree(array &$terms, array $exclude_tree) : void
static
since 2.25

Arguments

$terms

array

Potential term objects, by reference

$exclude_tree

array

term_id(s) of the desired terms

Cleans up damage caused by the Visual Editor to the tax_query and meta_query specifications

_sanitize_query_specification( $specification) : string
static
since 2.20

Arguments

$specification

Response

string

query specification with HTML escape sequences and line breaks removed

Make sure $attr is an array, repair line-break damage, merge with $content

_validate_attributes(mixed $attr, string $content = NULL) : array
static
since 2.20

Arguments

$attr

mixed

Array or string containing shortcode attributes

$content

string

Optional content for enclosing shortcodes

Response

array

clean attributes array

Translates query parameters to a valid SQL order by clause.

_validate_sql_orderby( $query_parameters,  $table_prefix = NULL,  $allowed_keys = NULL,  $binary_keys = array()) : string|boolean
static

Accepts one or more valid columns, with or without ASC/DESC. Enhanced version of /wp-includes/formatting.php function sanitize_sql_orderby().

since 2.20

Arguments

$query_parameters

$table_prefix

$allowed_keys

$binary_keys

Response

string|boolean

Returns the orderby clause if present, false otherwise.

Parses shortcode parameters and returns the gallery objects

mla_get_shortcode_attachments( $post_parent,  $attr,  $return_found_rows = NULL) : array
static
since 2.20

Arguments

$post_parent

$attr

$return_found_rows

Response

array

List of attachments returned from WP_Query

Retrieve the terms in one or more taxonomies.

mla_get_terms( $attr) : array
static

Alternative to WordPress /wp-includes/taxonomy.php function get_terms() that provides an accurate count of attachments associated with each term.

taxonomy - string containing one or more (comma-delimited) taxonomy names or an array of taxonomy names. Default 'post_tag'.

post_mime_type - MIME type(s) of the items to include in the term-specific counts. Default 'all'.

post_type - The post type(s) of the items to include in the term-specific counts. The default is "attachment".

post_status - The post status value(s) of the items to include in the term-specific counts. The default is "inherit".

ids - A comma-separated list of attachment ID values for an item-specific cloud.

include - An array, comma- or space-delimited string of term ids to include in the return array.

exclude - An array, comma- or space-delimited string of term ids to exclude from the return array. If 'include' is non-empty, 'exclude' is ignored.

parent - term_id of the terms' immediate parent; 0 for top-level terms.

minimum - minimum number of attachments a term must have to be included. Default 0.

no_count - 'true', 'false' (default) to suppress term-specific attachment-counting process.

number - maximum number of term objects to return. Terms are ordered by count, descending and then by term_id before this value is applied. Default 0.

orderby - 'count', 'id', 'name' (default), 'none', 'random', 'slug'

order - 'ASC' (default), 'DESC'

no_orderby - 'true', 'false' (default) to suppress ALL sorting clauses else false.

preserve_case - 'true', 'false' (default) to make orderby case-sensitive.

pad_counts - 'true', 'false' (default) to to include the count of all children in their parents' count.

limit - final number of term objects to return, for pagination. Default 0.

offset - number of term objects to skip, for pagination. Default 0.

fields - string with fields for the SQL SELECT clause, e.g., 't.term_id, t.name, t.slug, COUNT(p.ID) AS count'

since 2.20

Arguments

$attr

Response

array

array of term objects, empty if none found

Verify the presence of Ghostscript for mla_viewer

mla_ghostscript_present( $explicit_path = '',  $ghostscript_only = false) : boolean
static
since 2.20

Arguments

$explicit_path

$ghostscript_only

Response

boolean

true if Ghostscript available else false

Filters all clauses for shortcode queries, pre caching plugins

mla_shortcode_query_posts_clauses_filter( $pieces) : array
static

This is for debug purposes only. Defined as public because it's a filter.

since 2.20

Arguments

$pieces

Response

array

query clauses after modification (none)

Filters all clauses for shortcode queries, post caching plugins

mla_shortcode_query_posts_clauses_request_filter( $pieces) : array
static

This is for debug purposes only. Defined as public because it's a filter.

since 2.20

Arguments

$pieces

Response

array

query clauses after modification (none)

Filters the JOIN clause for shortcode queries

mla_shortcode_query_posts_join_filter( $join_clause) : string
static

Defined as public because it's a filter.

since 2.20

Arguments

$join_clause

Response

string

query clause after item modification

Filters the ORDERBY clause for shortcode queries

mla_shortcode_query_posts_orderby_filter( $orderby_clause) : string
static

This is an enhanced version of the code found in wp-includes/query.php, function get_posts. Defined as public because it's a filter.

since 2.20

Arguments

$orderby_clause

Response

string

query clause after modification

Filters the WHERE clause for shortcode queries

mla_shortcode_query_posts_where_filter( $where_clause) : string
static

Captures debug information. Adds whitespace to the post_type = 'attachment' phrase to circumvent subsequent Role Scoper modification of the clause. Handles post_parent "any" and "none" cases. Defined as public because it's a filter.

since 2.20

Arguments

$where_clause

Response

string

query clause after modification

The MLA Tag Cloud support function.

mla_tag_cloud(array $attr) : string
static

This is an alternative to the WordPress wp_tag_cloud function, with additional options to customize the hyperlink behind each term.

since 2.20

Arguments

$attr

array

Attributes of the shortcode.

Response

string

HTML content to display the tag cloud.

The MLA Tag Cloud shortcode.

mla_tag_cloud_shortcode(array $attr, string $content = NULL) : string
static

This is an interface to the mla_tag_cloud function.

since 2.20

Arguments

$attr

array

Attributes of the shortcode.

$content

string

Optional content for enclosing shortcodes

Response

string

HTML content to display the tag cloud.

The MLA Term List support function.

mla_term_list(array $attr) : string
static

This is an alternative to the WordPress wp_list_categories, wp_dropdown_categories and wp_terms_checklist functions, with additional options to customize the hyperlink behind each term.

since 2.25

Arguments

$attr

array

Attributes of the shortcode.

Response

string

HTML content to display the term list, dropdown control or checklist.

The MLA Term List shortcode.

mla_term_list_shortcode(array $attr, string $content = NULL) : string
static

This is an interface to the mla_term_list function.

since 2.25

Arguments

$attr

array

Attributes of the shortcode.

$content

string

Optional content for enclosing shortcodes

Response

string

HTML content to display the term list.

Properties

Turn debug collection and display on or off

mla_debug : boolean
static
since
var

Type(s)

boolean

Default values when global $post is not set

empty_post : array
static
since
var

Type(s)

array

These are the default parameters for term list display

term_list_item_specific_arguments : array
static
since
var

Type(s)

array

WP_Query filter "parameters"

query_parameters : array
static

This array defines parameters for the query's join, where and orderby filters. The parameters are set up in the mla_get_shortcode_attachments function, and any further logic required to translate those values is contained in the filter.

Array index values are: orderby, post_parent

since
var

Type(s)

array

Data selection parameters for the WP_Query in [mla_gallery]

mla_get_shortcode_attachments_parameters : array
static
since
var

Type(s)

array

Data selection parameters for the WP_Query in [mla_gallery]

mla_get_shortcode_dynamic_attachments_parameters : array
static
since
var

Type(s)

array

Data selection parameters for [mla_tag_cloud], [mla_term_list]

mla_get_terms_parameters : array
static
since
var

Type(s)

array