サイト内検索
Cocoonフォーラム
書き込みの前に以下の3点をご確認ください。
何を書き込んだら良いか分からない場合は、以下のテンプレートをコピペしてご利用ください。
不具合・カスタマイズ対象ページのURL:
相談内容:
不具合の発生手順:
解決のために試したこと:
※文字だけでは正しく伝わらない可能性があるため、スクショ画像の添付もお願いします。
※高速化設定をしている場合は無効にしてください。
環境情報:※↑こちらに「Cocoon設定 → テーマ情報」にある「環境情報」を貼り付けてください。
環境情報の取得方法はこちら。
→ https://wp-cocoon.com/theme-report/
高速化設定を無効にするにはこちら。
→ https://wp-cocoon.com/theme-trouble/
フォーラム利用ガイドリンク
- フォーラムガイドライン
- よくある質問と答え(FAQ)
- サポート対象外のケース
- 原因不明の不具合用トラブルシューティング
- トピックにHTMLを貼り付ける方法(推奨ツール:notepad.pw)
- 真っ白画面でのエラーメッセージの確認方法
- ブラウザ環境チェックツール
- Cocoonカスタマイズ依頼
フォーラム質問後、問題等が解決した場合は結果を書き込んでいただけると幸いです。同様の問題で調べている方には、結果が一番気になる部分となります。
Topic starter
2022年7月31日 13:54
添付画像のようにカルーセルで表示している各記事サムネに順位を付けたいです。
サイドバーだと、管理画面のウィジェットから順位の有無が選択出来ますが、カルーセルの場合、そのような項目がなくそもそもアクセス数による表示ができないかと思います (ランダム、更新順、新着順)。
1. カルーセルの記事一覧をアクセス数による表示順に変更し、順位を表示方法はあるのでしょうか。
2. 1が出来ない場合、カルーセルで表示されているn番目の記事にn位のような形でcss側で表示できるのではと考えています。下記コードなどで試しているのですが、何も表示されていない状態です。n番目の記事を指定できる方法を教えていただきたいです。
.slick-initialized #slick-slide03::before{ content: "3"; background: rgba(94, 185, 77, 0.9); color: #fff; font-size: 14px; line-height: 1; padding: 4px 8px; position: absolute; left: 0; top: 0; z-index: 1; }
2022年8月1日 12:15
カルーセルの記事一覧をアクセス数による表示順に変更し、順位を表示方法はあるのでしょうか。
Cocoon の機能としてはありません。ただ、カスタマイズをすれば可能です。
もっとも簡単な方法を書いておきます。ただ、この方法は、WordPress の 投稿の先頭固定表示 をお使いの場合に人気順になりません。※ 固定した投稿が先頭にくるため。
まず、子テーマの functions.php に以下のコードを追加します。
function get_carousel_orderby() { return is_carousel_popular_posts_enable() ? 'post__in' : get_theme_option(OP_CAROUSEL_ORDERBY, 'rand'); }
これで、Cocoon 設定 > カルーセルタブにある「~で集計した人気記事を含める」にチェックが入っている場合は、人気順になります。チェックが入っていない場合は、「カルーセルの並び替え」で選択した順番です。
次に、子テーマの javascript.js に以下のコードを追加します。
{ const carouselWraps = document.getElementsByClassName('carousel-entry-card-wrap'); for (const wrap of carouselWraps) { const index = wrap.id.replace('slick-slide0', ''); const span = document.createElement('span'); span.textContent = Number(index) + 1; span.classList.add('carousel-entry-card-index'); span.setAttribute('aria-hidden', true); wrap.appendChild(span); } }
これで各記事に数字が付きます。
あとは、子テーマの style.css に CSS を追加すれば終わりです。
.carousel-entry-card-wrap { position: relative; } .carousel-entry-card-index { background: rgba(94, 185, 77, 0.9); color: #fff; font-size: 14px; line-height: 1; padding: 4px 8px; position: absolute; left: 0; top: 0; z-index: 1; }
This post was modified 2年前 by Akira
問題の解決に至った場合には、トピック冒頭の「解決済み」をクリックしていただけますと幸いです。
また、有用な回答があった場合は返信右下にある「いいね!」もご活用ください。回答者の励みになります。
(CC BY-ND 2.1)準じていれば(リンクを貼っていただければ)転載も自由です。カスタマイズ記事を書く際にコード等をコピペ利用していただいて構いません。
フォーラムの使い方がよくわからない場合は、テストトピックで自由にテストしていただいて構いません。
最近の書き込みはこちら。
詳細なカスタマイズ依頼をするならこちら。