Заголовок на странице с пользовательским шаблоном

#wordpress

#wordpress

Вопрос:

Добрый день! У меня странная проблема с WordPress 5.1.1. У меня есть две страницы с пользовательскими шаблонами, домашняя страница и страница блога. На других страницах я использую стандартный шаблон. И на стандартных страницах я вижу заголовок страницы, например, О нас — Sitename, Контакты — Sitename. Но на этих пользовательских страницах он пустой! Я вижу только Sitename, а тег title пуст. Что это может быть? Кроме того, я использую пользовательский WP_Query на странице блога.

UPD

Это моя пользовательская страница в блоге:

     <?php
/**
 * Template Name: Статьи
 */
$page = (get_query_var('paged')) ? get_query_var('paged') : 1;
$wp_query = new WP_Query(array('post_type' => 'post', 'posts_per_page' => 4, 'paged'=> $page ));
$categories = get_categories( array(
    'orderby' => 'name',
    'order'   => 'ASC'
) );
get_header(); 
the_title();
?>

<div id="blog_cards" class="ui grid">
    <div class="sixteen wide column">
            <div id="categories">
                <?php 
                foreach( $categories as $category ) {
                    $category_link = sprintf( 
                        '<a class="category" href="%1$s" alt="%2$s">%3$s</a>',
                        esc_url( get_category_link( $category->term_id ) ),
                        esc_attr( sprintf( __( 'View all posts in %s', 'textdomain' ), $category->name ) ),
                        esc_html( $category->name )
                    );

                    echo $category_link;
                }
                ?>
            </div>
    </div>
    <div class="sixteen wide column">
        <div class="ui two cards">
        <?php
        if ( $wp_query->have_posts() ) :
            while ( $wp_query->have_posts() ) : $wp_query->the_post(); ?>
            <div id="post-<?php the_ID(); ?>" class="card">
                <div class="image">
                    <?php the_post_thumbnail();?>
                </div>
                <div class="content">
                  <div class="header"><a href="<?php the_permalink();?>" rel="bookmark"><?php the_title();?></a></div>
                  <div class="meta">
                    <a><?php the_time('d.m.Y');?></a>
                  </div>
                  <div class="description">
                    <?php the_content();?>
                  </div>
                </div>
                <div class="extra content">
                <?php 
                $post_cats = get_the_category();
                foreach( $post_cats as $category ) {
                    $category_link = sprintf( 
                        '<a class="category" href="%1$s" alt="%2$s">%3$s</a>',
                        esc_url( get_category_link( $category->term_id ) ),
                        esc_attr( sprintf( __( 'View all posts in %s', 'textdomain' ), $category->name ) ),
                        esc_html( $category->name )
                    );

                    echo $category_link;
                }
                ?>
                </div>
        </div>
        <?php endwhile;?>
        </div>
    </div>
    <div class="sixteen wide column">
        <?php if (function_exists('wp_corenavi')) wp_corenavi(array( 'wp_query' => $wp_query )); ?>
    </div>
    <?php 

    endif; ?>
</div>
<?php
do_action( 'storefront_sidebar' );
get_footer();
  

Кроме того, я попытался вызвать the_title() , и он вернул заголовок страницы в теле шаблона. Но тег title пуст.
И я использую стандартную тему витрины для woocomerce.

Комментарии:

1. Пожалуйста, разместите код ваших пользовательских шаблонов

2. вы должны использовать the_title(); в шаблоне, чтобы отобразить заголовок страницы / публикации.

3. Не могли бы вы, пожалуйста, переместить get_header(); и the_title(); перед $page, и могу ли я получить ссылку на ваш сайт, если это возможно..

4. Большое тебе спасибо, Дарш! Я просто поместил get_header () сверху, и все! Работает идеально!

5. я публикую это как ответ, пожалуйста, примите его..

Ответ №1:

Пожалуйста, переместитесь get_header() в верхнюю часть страницы (перед $page).