【スポンサーリンク】

[Cocoon] サイトロゴのリンク先をページ種類で変えた(WordPress)

[Cocoon] サイトロゴのリンク先をページ種類で変えた(WordPress)
  • Cocoonテーマでサイトロゴのリンク先を変更したいと思って、 functions.phpをカスタマイズしました。
  • add_filterで「’mobile_header_site_logo_url‘」の処理で条件分岐するようにして、記事ページとトップページではブログ一覧に移動するように変更しました。
\記事が役に立ったらシェアしてね/
【スポンサーリンク】

1. ロゴのリンク先を分岐させたい

サイト上のロゴを押したとき、通常はトップページに移行します。
しかし、記事上に限ってはブログ一覧ページに移行するように変更しようと思います。

ロゴのリンク先を分岐させたい

以下のコードを functions.php に追加しました。

/** ヘッダーロゴのリンク先URLを変更する 2024-04-21*/
function get_header_site_logo_url_optional($url) {
  if (is_singular('post') || is_front_page()) {
    return home_url('/blog/');
  } else {
    return home_url('/');
  }
  
}
add_filter('mobile_header_site_logo_url', 'get_header_site_logo_url_optional');
ロゴのリンク先を分岐させたい

検索結果から直接 記事を読みに来た人にとっては、「教室サイト」というより「ブログサイト」としての機能が期待されていると思ったからです。

2. Cocoonでのロゴのリンク先を変更する方法

まず、Cocoonテーマでサイトロゴのリンク先を変更する基本の方法からおさらいします。

それには、以下のコードをfunctions.php に追加します。1

//ヘッダーロゴURLを変更する
add_filter('header_site_logo_url', function ($url){
  return 'https://www.google.co.jp/';
});

ただし、モバイルヘッダーの場合は、うまくいきませんでした。

コードを調べると、mobile_header_site_logo_url‘ にすればよいことがわかりました。

出典:Code search results
出典:Code search results
  • site_logo_url:ヘッダーとフッターロゴURLをまとめて変更する
  • header_site_logo_url
  • footer_site_logo_url
  • mobile_header_site_logo_url2

3. ページの種類をチェックする

次に、このフィルター関数の処理で表示されているページ情報から分岐すればよいことになります。
それには、is_singular関数を使います3

  • is_singular()
    個別ページが表示されている場合
  • is_singular('post')
    「post(投稿)」が表示されている場合
  • is_singular(‘page’)
    「page(固定ページ)」が表示されている場合
  • is_singular(array('post','topics'))
    「post(投稿)」または「topics(カスタム投稿タイプ例)」の個別ページが表示されている場合

また、トップページについては4

  • is_front_page()
    サイトのフロントページ(トップページ)かどうかを判定する
  • is_home()
    サイトのブログ投稿インデックスページかどうかを判定する
/** ヘッダーロゴのリンク先URLを変更する 2024-04-21*/
function get_header_site_logo_url_optional($url) {
  if (is_singular('post') || is_front_page()) {
    return home_url('/blog/');
  } else {
    return home_url('/');
  }
  
}
add_filter('mobile_header_site_logo_url', 'get_header_site_logo_url_optional');
ページの種類をチェックする

ただし、実際に操作してみると、同じ要素で違うページに行くのは直感的ではない気もしました。

サイトロゴのリンク先を無条件に記事一覧に変更するだけでもよかったかもしれません。
また、よりよい方法を検証していきます。

こちらもどうぞ。
[Cocoon] 「SNSシェア」ボタンをショートコードで表示できるようにした
[Cocoon] 「SNSシェア」ボタンをショートコードで表示できるようにした
記事内で、以下のショートコードを入力することで、好きな位置にSNSシェアボタンを出せるようにしたいと思います。[sns_share_buttons]できたコード(functions.php)はこちら。/** CocoonのSNSシェアボタンを表示するショートコード 2024-02-18 */add_shortcode( 'sns_share_buttons', 'wrap_get_template_sns_share' );if ( ! function_exists( 's...

[Cocoon] 各見出し後に「目次に戻る」リンクを追加した(functions.php)
[Cocoon] 各見出し後に「目次に戻る」リンクを追加した(functions.php)
ブログの中でもっともよくクリックされるのは、「目次」だそうです。各セクションに Cocoonの目次に対応した「戻る」ボタンを設置しました。参考サイトを元に、自分のブログに合うように一部修正しました。確かに、目次からサッと読みたいところを確認できるサイトは、とても便利ですよね。目次に戻るリンクを挿入するコードfunctions.phpに追加します。/** 自動で目次に戻るリンクを挿入 */add_filter('the_content', function($content) ...

[Cocoon] 記事のタグをサイドバーに表示した(タグクラウドではない)
[Cocoon] 記事のタグをサイドバーに表示した(タグクラウドではない)
ブログのサイドバーの項目を見直してみました。WordPressのサイドバーに記事のタグを追加したカスタム検索とナビゲーションメニューの間に、・リンク・目次・タグ・関連記事を追加しました。とくに、記事のタグを追加するのが、大変だったのでメモします。「タグ」を表示する今回、サイドバーにタグを設置しようと思ったのは、検索が面倒な人に関連記事を探しやすくしたいからです。Cocoonテーマでは、記事のタイトル上下や本文下には、「タグ」を表示することができます。Cocoonの投稿にタグを...

(補足)

  1. CocoonのサイトロゴURLを任意のものに変更するカスタマイズ方法 | Cocoon
  2. cocoon/tmp/mobile-logo-button.php · xserver-inc/cocoon
  3. WordPressのテーマ作成で利用する条件分岐まとめ | 記事 | ShitTakaBull
  4. フロントページ(トップページ)・ブログ投稿ページかどうかを判定する | The WordPress Press
QRコードを読み込むと、関連記事を確認できます。

[Cocoon] サイトロゴのリンク先をページ種類で変えた(WordPress)
【スポンサーリンク】
タイトルとURLをコピーしました