late` parameter.
*
* @param string $template_type The current template type.
* @param string[] $template_hierarchy The current template hierarchy, ordered by priority.
* @param string $fallback_template A PHP fallback template to use if no matching block template is found.
* @return WP_Block_Template|null template A template object, or null if none could be found.
*/
function resolve_block_template( $template_type, $template_hierarchy, $fallback_template ) {
if ( ! $template_type ) {
return null;
}
if ( empty( $template_hierarchy ) ) {
$template_hierarchy = array( $template_type );
}
$slugs = array_map(
'_strip_template_file_suffix',
$template_hierarchy
);
// Find all potential templates 'wp_template' post matching the hierarchy.
$query = array(
'theme' => wp_get_theme()->get_stylesheet(),
'slug__in' => $slugs,
);
$templates = get_block_templates( $query );
// Order these templates per slug priority.
// Build map of template slugs to their priority in the current hierarchy.
$slug_priorities = array_flip( $slugs );
usort(
$templates,
static function ( $template_a, $template_b ) use ( $slug_priorities ) {
return $slug_priorities[ $template_a->slug ] - $slug_priorities[ $template_b->slug ];
}
);
$theme_base_path = get_stylesheet_directory() . DIRECTORY_SEPARATOR;
$parent_theme_base_path = get_template_directory() . DIRECTORY_SEPARATOR;
// Is the current theme a child theme, and is the PHP fallback template part of it?
if (
strpos( $fallback_template, $theme_base_path ) === 0 &&
strpos( $fallback_template, $parent_theme_base_path ) === false
) {
$fallback_template_slug = substr(
$fallback_template,
// Starting position of slug.
strpos( $fallback_template, $theme_base_path ) + strlen( $theme_base_path ),
// Remove '.php' suffix.
-4
);
// Is our candidate block template's slug identical to our PHP fallback template's?
if (
count( $templates ) &&
$fallback_template_slug === $templates[0]->slug &&
'theme' === $templates[0]->source
) {
// Unfortunately, we cannot trust $templates[0]->theme, since it will always
// be set to the current theme's slug by _build_block_template_result_from_file(),
// even if the block template is really coming from the current theme's parent.
// (The reason for this is that we want it to be associated with the current theme
// -- not its parent -- once we edit it and store it to the DB as a wp_template CPT.)
// Instead, we use _get_block_template_file() to locate the block template file.
$template_file = _get_block_template_file( 'wp_template', $fallback_template_slug );
if ( $template_file && get_template() === $template_file['theme'] ) {
// The block template is part of the parent theme, so we
// have to give precedence to the child theme's PHP template.
array_shift( $templates );
}
}
}
return count( $templates ) ? $templates[0] : null;
}
/**
* Displays title tag with content, regardless of whether theme has title-tag support.
*
* @access private
* @since 5.8.0
*
* @see _wp_render_title_tag()
*/
function _block_template_render_title_tag() {
echo '
' . wp_get_document_title() . '' . "\n";
}
/**
* Returns the markup for the current template.
*
* @access private
* @since 5.8.0
*
* @global string $_wp_current_template_content
* @global WP_Embed $wp_embed
*
* @return string Block template markup.
*/
function get_the_block_template_html() {
global $_wp_current_template_content;
global $wp_embed;
if ( ! $_wp_current_template_content ) {
if ( is_user_logged_in() ) {
return '' . esc_html__( 'No matching template found' ) . '
';
}
return;
}
$content = $wp_embed->run_shortcode( $_wp_current_template_content );
$content = $wp_embed->autoembed( $content );
$content = shortcode_unautop( $content );
$content = do_shortcode( $content );
$content = do_blocks( $content );
$content = wptexturize( $content );
$content = convert_smilies( $content );
$content = wp_filter_content_tags( $content );
$content = str_replace( ']]>', ']]>', $content );
// Wrap block template in .wp-site-blocks to allow for specific descendant styles
// (e.g. `.wp-site-blocks > *`).
return '' . $content . '
';
}
/**
* Renders a 'viewport' meta tag.
*
* This is hooked into {@see 'wp_head'} to decouple its output from the default template canvas.
*
* @access private
* @since 5.8.0
*/
function _block_template_viewport_meta_tag() {
echo '' . "\n";
}
/**
* Strips .php or .html suffix from template file names.
*
* @access private
* @since 5.8.0
*
* @param string $template_file Template file name.
* @return string Template file name without extension.
*/
function _strip_template_file_suffix( $template_file ) {
return preg_replace( '/\.(php|html)$/', '', $template_file );
}
/**
* Removes post details from block context when rendering a block template.
*
* @access private
* @since 5.8.0
*
* @param array $context Default context.
*
* @return array Filtered context.
*/
function _block_template_render_without_post_block_context( $context ) {
/*
* When loading a template directly and not through a page that resolves it,
* the top-level post ID and type context get set to that of the template.
* Templates are just the structure of a site, and they should not be available
* as post context because blocks like Post Content would recurse infinitely.
*/
if ( isset( $context['postType'] ) && 'wp_template' === $context['postType'] ) {
unset( $context['postId'] );
unset( $context['postType'] );
}
return $context;
}
/**
* Sets the current WP_Query to return auto-draft posts.
*
* The auto-draft status indicates a new post, so allow the the WP_Query instance to
* return an auto-draft post for template resolution when editing a new post.
*
* @access private
* @since 5.9.0
*
* @param WP_Query $wp_query Current WP_Query instance, passed by reference.
*/
function _resolve_template_for_new_post( $wp_query ) {
remove_filter( 'pre_get_posts', '_resolve_template_for_new_post' );
// Pages.
$page_id = isset( $wp_query->query['page_id'] ) ? $wp_query->query['page_id'] : null;
// Posts, including custom post types.
$p = isset( $wp_query->query['p'] ) ? $wp_query->query['p'] : null;
$post_id = $page_id ? $page_id : $p;
$post = get_post( $post_id );
if (
$post &&
'auto-draft' === $post->post_status &&
current_user_can( 'edit_post', $post->ID )
) {
$wp_query->set( 'post_status', 'auto-draft' );
}
}
Warning: call_user_func_array() expects parameter 1 to be a valid callback, function '_add_template_loader_filters' not found or invalid function name in /var/www/html/bkr-lopesmachado.com.br/web/wp-includes/class-wp-hook.php on line 307
Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/bkr-lopesmachado.com.br/web/wp-includes/block-template.php:1) in /var/www/html/bkr-lopesmachado.com.br/web/wp-includes/rest-api/class-wp-rest-server.php on line 1719
Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/bkr-lopesmachado.com.br/web/wp-includes/block-template.php:1) in /var/www/html/bkr-lopesmachado.com.br/web/wp-includes/rest-api/class-wp-rest-server.php on line 1719
Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/bkr-lopesmachado.com.br/web/wp-includes/block-template.php:1) in /var/www/html/bkr-lopesmachado.com.br/web/wp-includes/rest-api/class-wp-rest-server.php on line 1719
Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/bkr-lopesmachado.com.br/web/wp-includes/block-template.php:1) in /var/www/html/bkr-lopesmachado.com.br/web/wp-includes/rest-api/class-wp-rest-server.php on line 1719
Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/bkr-lopesmachado.com.br/web/wp-includes/block-template.php:1) in /var/www/html/bkr-lopesmachado.com.br/web/wp-includes/rest-api/class-wp-rest-server.php on line 1719
Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/bkr-lopesmachado.com.br/web/wp-includes/block-template.php:1) in /var/www/html/bkr-lopesmachado.com.br/web/wp-includes/rest-api/class-wp-rest-server.php on line 1719
Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/bkr-lopesmachado.com.br/web/wp-includes/block-template.php:1) in /var/www/html/bkr-lopesmachado.com.br/web/wp-includes/rest-api/class-wp-rest-server.php on line 1719
1.0Auditoria Externa - BKR Lopes, Machado Auditores e Consultoreshttps://www.lopesmachado.comTatiane Romanahttps://www.lopesmachado.com/author/tatiane/Informativo tributário nº 10 – Refis da crise: novas alterações legaisrich600338<blockquote class="wp-embedded-content" data-secret="BczonTjWUh"><a href="https://www.lopesmachado.com/informativo-tributario-no-10/">Informativo tributário nº 10 – Refis da crise: novas alterações legais</a></blockquote><iframe sandbox="allow-scripts" security="restricted" src="https://www.lopesmachado.com/informativo-tributario-no-10/embed/#?secret=BczonTjWUh" width="600" height="338" title="“Informativo tributário nº 10 – Refis da crise: novas alterações legais” — Auditoria Externa - BKR Lopes, Machado Auditores e Consultores" data-secret="BczonTjWUh" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" class="wp-embedded-content"></iframe><script type="text/javascript">
/*! This file is auto-generated */
!function(d,l){"use strict";var e=!1,o=!1;if(l.querySelector)if(d.addEventListener)e=!0;if(d.wp=d.wp||{},!d.wp.receiveEmbedMessage)if(d.wp.receiveEmbedMessage=function(e){var t=e.data;if(t)if(t.secret||t.message||t.value)if(!/[^a-zA-Z0-9]/.test(t.secret)){for(var r,a,i,s=l.querySelectorAll('iframe[data-secret="'+t.secret+'"]'),n=l.querySelectorAll('blockquote[data-secret="'+t.secret+'"]'),o=new RegExp("^https?:$","i"),c=0;c<n.length;c++)n[c].style.display="none";for(c=0;c<s.length;c++)if(r=s[c],e.source===r.contentWindow){if(r.removeAttribute("style"),"height"===t.message){if(1e3<(i=parseInt(t.value,10)))i=1e3;else if(~~i<200)i=200;r.height=i}if("link"===t.message)if(a=l.createElement("a"),i=l.createElement("a"),a.href=r.getAttribute("src"),i.href=t.value,o.test(i.protocol))if(i.host===a.host)if(l.activeElement===r)d.top.location.href=t.value}}},e)d.addEventListener("message",d.wp.receiveEmbedMessage,!1),l.addEventListener("DOMContentLoaded",t,!1),d.addEventListener("load",t,!1);function t(){if(!o){o=!0;for(var e,t,r,a=-1!==navigator.appVersion.indexOf("MSIE 10"),i=!!navigator.userAgent.match(/Trident.*rv:11\./),s=l.querySelectorAll("iframe.wp-embedded-content"),n=0;n<s.length;n++){if(!(r=(t=s[n]).getAttribute("data-secret")))r=Math.random().toString(36).substr(2,10),t.src+="#?secret="+r,t.setAttribute("data-secret",r);if(a||i)(e=t.cloneNode(!0)).removeAttribute("security"),t.parentNode.replaceChild(e,t);t.contentWindow.postMessage({message:"ready",secret:r},"*")}}}}(window,document);
</script>
https://www.lopesmachado.com/wp-content/uploads/2016/03/img_info10_int.jpg520260