Поддержка Темы и шаблоны Убрать счётчик просмотров со страниц с конкретными id

  • Решено arskrigitsioniets

    (@arskrigitsioniets)


    Мне нужно было вставить счётчик просмотров рядом с заголовком поста типа «страница». В коде ниже (дефолтный код вывода заголовка темы Hueman) я вставил счётчик просмотров:

    <?php elseif ( is_page() ): ?>
        			<h1 class=views-in-header><?php echo hu_get_page_title();echo do_shortcode("[post-views] ")?></h1>

    Шорткод [post-views] взят из плагина. Руками добавлял только echo do_shortcode(«[post-views] «, остальное было по дефолту в теме.

    Но мне нужно, чтобы на конкретных трёх страницах, которые я укажу по id, счётчик не отображался. Как это можно реализовать?

    Я знаю, что есть функция is_page, которая создана специально для этого. Однако я слаб в php и уже как только не пытался её вставить – не работает. Мне пытался помочь другой человек разными вариантами кода с условием, тоже ни один не сработал.

    Возможно, тут есть кто-то, кто сможет помочь? Обращу внимание – я копирайтер, не разработчик сайтов; php знаю очень плохо и учусь на ходу на конкретных примеров. Поэтому, если хотите помочь, объясните максимально понятно, как поставить условие «не выводить do_shortcode([post-views]) на страницах с указанными id».

    Вот полный код вывода заголовков из темы:

    <?php if ( ! hu_is_home_empty() ) : ?>
        <div class="page-title pad group">
          <?php //prints the relevant metas (cat, tag, author, date, ...) for a given context : home, single post, page, 404, search, archive...  ?>
        	<?php if ( is_home() && hu_is_checked('blog-heading-enabled') ) : ?>
        		<h2><?php echo hu_blog_title(); ?></h2>
        	<?php elseif ( is_single() ): ?>
        		<ul class="meta-single group">
        			<li class="category"><?php the_category(' <span>/</span> '); ?></li>
        			<?php if ( comments_open() && ( hu_is_checked( 'comment-count' ) ) ): ?>
        			<li class="comments"><a href="<?php comments_link(); ?>"><i class="far fa-comments"></i><?php comments_number( '0', '1', '%' ); ?></a></li>
    				<li class="post-views-pages"><?php echo do_shortcode("[post-views] ");?></li>
        			<?php endif; ?>
        		</ul>
    	<?php elseif ( is_page() ): ?>
        			<h1 class=views-in-header><?php echo hu_get_page_title();echo do_shortcode("[post-views] ")?></h1>
        	<?php elseif ( is_search() ): ?>
        		<h1><?php echo hu_get_search_title(); ?></h1>
        	<?php elseif ( is_404() ): ?>
        		<h1><?php echo hu_get_404_title(); ?></h1>
        	<?php elseif ( is_author() ): ?>
        		<h1><?php echo hu_get_author_title(); ?></h1>
        	<?php elseif ( is_category() || is_tag() ): ?>
        		<h1><?php echo hu_get_term_page_title(); ?></h1>
        	<?php elseif ( is_day() || is_month() || is_year() ) : ?>
        		<h1><?php echo hu_get_date_archive_title(); ?></h1>
        	<?php elseif ( is_tax() ) : ?>
        		<h1><?php the_archive_title(); ?></h1>
        	<?php elseif ( is_post_type_archive() ) : ?>
        		<h1><?php post_type_archive_title(); ?></h1>
        	<?php else: ?>
            <?php if ( ! is_home() && ! hu_is_checked('blog-heading-enabled') ) : ?>
        		  <h2><?php the_title(); ?></h2>
            <?php endif; ?>
    
        	<?php endif; ?>
    
        </div><!--/.page-title-->
    <?php endif; ?>
    • Тема изменена 4 недели назад пользователем arskrigitsioniets.
    • Тема изменена 4 недели назад пользователем arskrigitsioniets.
    • Тема изменена 4 недели назад пользователем arskrigitsioniets.
Просмотр 7 ответов — с 1 по 7 (всего 7)
  • если дадите ссылки на страницы, можно попробовать скрыть его с помощью css

    если дадите ссылки на страницы, можно попробовать скрыть его с помощью css

    Сейчас счётчик я оттуда убрал, так как рабочий сайт, но он был бы сразу после заголовка «База стратегий», через пробел после него на той же строке, вот тут: https://strategycon.ru/base-of-strategies/ Скрин: https://imgur.com/2tsJsWd

    Хм, а как скрыть через css, если стиль заголовка на всех постах типа «страница» один и тот же?

    Хм, а как скрыть через css, если стиль заголовка на всех постах типа «страница» один и тот же?

    body.page-id-1167

    body.page-id-1167

    Так, допустим класс заголовка views-in-header и мне нужно скрыть его через display: none на странице с id 1. Как должна выглядеть запись в styles.css? Куда всовывать этот body.page-id?

    как только вернете счетчик на место, я напишу рабочий стиль.
    Хотите просто изучить теорию — читайте учебники

    Спасибо, уже разобрался. Решение:

    Php:
    <h1 class=views-in-header><?php echo hu_get_page_title();?><span class=views-of-header-marker><?php echo do_shortcode("[post-views] ");?></span></h1>

    Css:

    body.page-id-1 .views-of-header-marker {
     display: none;
    }

    После id прописать id страницы, где не должно появляться.

    Пожалуйста

Просмотр 7 ответов — с 1 по 7 (всего 7)