$attrs Arguments for displaying stories. * @param array $query_args Query arguments for stories. * * @phpstan-param array{view_type?: string, number_of_columns?: int, show_title?: bool, show_author?: bool, show_date?: bool, show_archive_link?: bool|string, show_excerpt?: bool, image_alignment?: string, class?: string, archive_link_label?: string, circle_size?: int, sharp_corners?: bool, order?: string, orderby?: string} $attrs */ function render_stories( array $attrs = [], array $query_args = [] ): void { $stories_obj = new Story_Query( $attrs, $query_args ); //phpcs:disable WordPress.Security.EscapeOutput.OutputNotEscaped echo $stories_obj->render(); } /** * Returns list of stories based on the arguments passed to it. * * @since 1.5.0 * * @param array $attrs Arguments for displaying stories. * @param array $query_args Query arguments for stories. * @return WP_Post[] * * @phpstan-param array{view_type?: string, number_of_columns?: int, show_title?: bool, show_author?: bool, show_date?: bool, show_archive_link?: bool|string, show_excerpt?: bool, image_alignment?: string, class?: string, archive_link_label?: string, circle_size?: int, sharp_corners?: bool, order?: string, orderby?: string} $attrs */ function get_stories( array $attrs = [], array $query_args = [] ): array { return ( new Story_Query( $attrs, $query_args ) )->get_stories(); } /** * Render stories based on customizer settings. * * @since 1.5.0 */ function render_theme_stories(): void { $injector = Services::get_injector(); /** * Customizer instance. * * @var Customizer $customizer Customizer instance. */ $customizer = $injector->make( Customizer::class ); //phpcs:disable WordPress.Security.EscapeOutput.OutputNotEscaped echo $customizer->render_stories(); }