Alert: This function’s access is marked private. This means it is not intended for use by plugin or theme developers, only in other core functions. It is listed here for completeness.
LLMS_Block_Templates::block_templates_from_db( array $slugs = array() )
Gets the templates saved in the database.
Parameters Parameters
- $slugs
-
(array) (Optional) An array of slugs to retrieve templates for.
Default value: array()
Return Return
(int[]|WP_Post[]) An array of found templates.
Source Source
File: includes/class-llms-block-templates.php
private function block_templates_from_db( $slugs = array() ) { $query_args = array( 'post_status' => array( 'auto-draft', 'draft', 'publish' ), 'post_type' => 'wp_template', 'posts_per_page' => -1, 'no_found_rows' => true, 'tax_query' => array( // phpcs:ignore WordPress.DB.SlowDBQuery.slow_db_query_tax_query array( 'taxonomy' => 'wp_theme', 'field' => 'name', 'terms' => array_merge( array( get_stylesheet(), get_template() ), array_column( $this->block_templates_config, 'namespace' ) ), ), ), ); if ( is_array( $slugs ) && count( $slugs ) > 0 ) { $query_args['post_name__in'] = $slugs; } /** * Filters the query arguments to retrieve the templates saved in the db. * * @since 5.8.0 * * @param array $query_args WQ_Query argiments to retrieve the templates saved in the db. */ $query_args = apply_filters( 'llms_block_templates_from_db_query_args', $query_args ); $templates = ( new WP_Query( $query_args ) )->posts; return array_map( function( $template ) { return $this->build_template_result_from_post( $template ); }, $templates ); }
Expand full source code Collapse full source code View on GitHub
Changelog Changelog
Version | Description |
---|---|
5.8.0 | Introduced. |