WordPressには、「先頭に固定表示」という機能があります。
新着一覧の一番上に、記事を固定することができます。

便利ですが、新着が変わってないように見えてしまいます。
そこで、固定記事にラベルを付ける方法を紹介します。
こんなラベルが付きます。

ちょうど、ツイッターの「固定されたツイート」を設置するイメージです。
こちらは、Cocoonテーマ専用のカスタマイズです。
javascriptとCSSの記述を変えてあげれば、他のテーマでも流用可能と思います。
javascriptとCSSの記述を変えてあげれば、他のテーマでも流用可能と思います。
javascriptを追加する
Cocoonの子テーマには、javascript.jsというファイルがあります。

このファイルに、以下の記述を追加してください。
(function(){
var post_id = "post-27";//記事IDを調べて番号を書き換えてください
var array_id = ".home #list #" + post_id + " figure";
var array_cat = ".home #list #" + post_id + " .cat-label";
var fixed_post = document.querySelector(array_id);
var fixed_post_cat_label = document.querySelector(array_cat);
fixed_post.insertAdjacentHTML('afterbegin','<div class="fixed_post_outer"><div class="fixed_post_name">固定された記事</div></div>');
fixed_post_cat_label.style.display = 'none';
}());
次に、このコード内にあるpost-27の数字を固定した記事IDに書き換えます。(上から2行目です)
var post_id = "post-27";//記事IDを調べて番号を書き換えてください
記事IDは、投稿一覧から確認できます。
見えていない場合は、表示オプションのIDにチェックを入れてください。

CSSを追加する
次に子テーマのstyle.cssに、以下を追加します。
/*固定記事のラベル*/
.fixed_post_outer {
position: absolute;
top: 0;
left: 0;
}
.fixed_post_name {
position: relative;
background-color: #FFA13D;
color: #FFF;
font-size: 12px;
padding: 0 12px;
line-height: 30px;
text-align: center;
margin-right: 12px;
}
.fixed_post_name:before {
display: block;
content: '';
position: absolute;
top: 0;
right: -12px;
border-top: 15px solid #FFA13D;
border-bottom: 15px solid #FFA13D;
border-right: 12px solid transparent;
border-left: 12px solid transparent;
}
ラベルは、好きな色に変えてくださいませ。
モバイル向けにラベルを小さくするには、以下のCSSを追加します。
@media screen and (max-width: 480px){
.fixed_post_name {
padding: 0 0.5em;
line-height: 1.5em;
margin-right: 0.5em;
}
.fixed_post_name:before {
right: -0.5em;
border-top: 0.75em solid #FFA13D;
border-bottom: 0.75em solid #FFA13D;
border-right: 0.5em solid transparent;
border-left: 0.5em solid transparent;
}
}
以上で、固定記事のラベルが付きます。
カテゴリーラベルは、固定記事のみ、消えるようになっています。
Font Awesome 5でピンを付ける
Font Awesome 5をお使いの方は、以下のコードをjavascript.jsに書くと、見栄えがよくなります。
← このアイコンです。
(function(){
var post_id = "post-27";//記事IDを調べて番号を書き換えてください
var array_id = ".home #list #" + post_id + " figure";
var array_cat = ".home #list #" + post_id + " .cat-label";
var fixed_post = document.querySelector(array_id);
var fixed_post_cat_label = document.querySelector(array_cat);
fixed_post.insertAdjacentHTML('afterbegin','<div class="fixed_post_outer"><div class="fixed_post_name"><i class="fas fa-thumbtack"></i> 固定された記事</div></div>');
fixed_post_cat_label.style.display = 'none';
}());
以上で固定された記事に、ピンアイコン付きラベルが付きます。


