Как скрыть заголовок H1 в одном или нескольких материалах в Wordpress
Первые 2 способа скроют заголовок визуально, но поисковые системы будут его видеть. Если его нужно удалить полностью, то подойдут способы №3 и №4.
Способ №1
Добавить в файл стилей следующий код:
#post-15 h1 { display:none; }
И заменить цифру «15» на ID записи, который можно посмотреть в адресе страницы при редактировании в административной панели.
Способ №2
Добавить в файл шаблона (подойдет header.php, content.php, footer.php и др.) следующий код:
<?php if ($post->ID == 2094) { ?>
<style type="text/css">h1 {
display:none;
}
</style>
<?php } ?>
И заменить число 2094 на id поста.
Вариация этого способа
(Подойдет и для сайта на другой CMS). Добавить в файл PHP шаблона код:
<?php if ($_SERVER['REQUEST_URI'] == '/blog/') { ?>
<style>
h1 {display:none;}
</style>
<?php } ?>
И заменить '/blog/' на адрес страницы после домена. Он должен начинаться с дроби и точно соответствовать URL. Просто дробь ('/') — главная страница. (Дробь на конце тоже влияет на условие).
Способ №3
Открыть файл, в котором выводится заголовок записи. Он находится по адресу «/wp-content/ТЕМА/» и называться может «content.php», «content-single.php» или еще как-то в зависимости от темы. Найти в нем через CTRL + F код со словом «h1». Он может выглядеть так:
<?php the_title( '<h1 class="entry-title">', '</h1>' ); ?>
Или так:
<?php
if ( is_single() ) :
the_title( '<h1 class="entry-title">', '</h1>' );
else :
the_title( sprintf( '<h2 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ), '</a></h2>' );
endif;
?>
И заменить его целиком на следующий код:
<?php if ($post->ID == 2094) { ?> <?php }
else { ?> <?php the_title( '<h1 class="entry-title">', '</h1>' ); ?> <?php } ?>
Число «2094» нужно заменить на ID поста, в котором нужно скрыть заголовок.
Если нужно скрыть заголовки для нескольких материалов, то заменить на этот код:
<?php
$post_ids_hide_h1 = array(2094, 140, 145);
if (in_array($post->ID, $post_ids_hide_h1))
{ ?> <?php } else { ?> <?php the_title( '<h1 class="entry-title">', '</h1>' ); ?> <?php } ?>
Вместо цифр в скобках после слова «array» указать ID записей.
Вариация этого способа
(Подойдет и для сайта на другой CMS). В файле PHP шаблона, отвечающем за вывод заголовка, найти код с h1 и обернуть его условием по адресу страницы. Пример:
<?php if ($_SERVER['REQUEST_URI'] == '/blog/') { ?> <!-- Если адрес равен '/blog/' -->
<!-- Пусто -->
<?php } else { ?> <!-- Иначе -->
<?php the_title( '<h1 class="entry-title">', '</h1>' ); ?>
<?php } ?>
И заменить '/blog/' на адрес страницы после домена. Он должен начинаться с дроби и точно соответствовать URL. Просто дробь ('/') — главная страница. (Дробь на конце тоже влияет на условие).
На других CMS вывод заголовка может быть другим и этот код:
<?php the_title( '<h1 class="entry-title">', '</h1>' ); ?>
нужно заменить на соответствующий. Например:
<h1><?php echo $title ?></h1>
Способ 4
Создать запись, сохранить и потом стереть текст заголовка.