Simple GA Rankingの関数を使ったカスタマイズで特定の記事を除外する方法です。
配列でオプションを渡すと表示する記事数やカテゴリー・タクソノミーの除外をすることができます。
[code lang=”php”]
<?php
array(
‘display_count’ => 10,
‘period’ => 30,
‘post_type’ => ‘post’,
‘exclude_post_type’ => ”,
‘`taxonomy_slug`__in’ => ”,
‘`taxonomy_slug`__not_in’ => ”,
‘filter’ => ”
);
?>
[/code]

ショートコードで特定のURLを除外する方法はすぐ見つかったのですが、出力結果をいじりたかったりテーマをカスタマイズしている場合には使いずらかったので、他の方法を探してみました。
下記のコードでは表示を10件にし、https://susu.mu/newsのURLをすべて除外する事ができます。

Google Analytics APIの仕様どおりにfilterパラメータを指定すると特定のURLの記事を除外できます。

[code lang=”php”]
<?php
$args = array(
‘display_count’ => 10,
‘filter’ => ‘ga:pagepath!=/news’,

);
$ranking_data = sga_ranking_get_date( $args );
if ( function_exists( ‘sga_ranking_get_date’ ) ) {
if ( ! empty( $ranking_data ) ) { ?>
<section>
<header>
<h1>人気記事ランキング</h1>
</header>
<div>
<?php foreach ( $ranking_data as $post_id ) {
set_query_var( ‘post_id’, $post_id );
get_template_part(‘template-parts/loop’,’ranking’);
} ?>
</div>
<div class="readmore"><a href="/ranking"><span>人気記事ランキングをもっと見る →</span></a></div>
</section>
<?php
}
}
endif;
?>
[/code]

関連リンク