ズボラ応援ブログ始めました

Delivery Liteでサイドバーの見出しをh1から変更する

f:id:niketcha:20190707175457p:plain

キナリノとかMeryみたいなデザインのサイトが作りたくてWordPressのテーマを探していたところ、Delivery Liteというテーマを見つけました。構造的にはMeryにとっても近い!

リンクDelivery Liteデモ

無料でそのまま使っても、ほとんどデモサイトのままのデザインになるところがお気に入りです。サイドバーの最新記事リストはRecent Posts Widget Extendedというプラグインを使ってるみたいですが、このくらいならプラグインなしでちょろちょろっと自分で作れるので問題なし。

今回はこのDelivery Liteのサイドバーの見出しがh1に設定されているのを修正する方法の紹介です。

見出しの基本

見出しタグはh1~h6まで、数字が小さいほど大きな見出しということになります。

基本的には1ページにh1はひとつです。h2以降は複数あっても大丈夫ですが、h2が無いのにh3を使うというようなことはしません。

見出しの付け方が間違えているからといってSEOに悪影響を与えるわけではないようですが、なんだか気持ち悪いので修正しておきます。


サイドバーの見出し変更方法

修正箇所

Delivery Liteのサイドバーの見出しはfunctions.phpのdelivery_register_sidebarsという関数で設定されています。

register_sidebarの引数に「before_title」と「after_title」があります。これはウィジェットのタイトルの前後に入れるタグを指定できる引数です。ここがh1になっているのでサイドバーの見出しがh1になってしまいます。

修正方法

子テーマを導入していない方は最新版-WordPress子テーマの作り方を参考にしてみてください。

if ( ! function_exists( ‘delivery_register_sidebars’ ) )という記述があるので、子テーマでdelivery_register_sidebars関数を新しく定義すれば親テーマの関数は実行されません。

親テーマの関数をコピーして子テーマのfunctions.phpに貼り付け、h1を他のタグに変えればOKです。

example

function delivery_register_sidebars() {
register_sidebar(
array(
'name'          => _x( 'Header', 'sidebar', 'delivery' ),
'id'            => 'header',
'description'   => __( 'An optional widget area for your site header.', 'delivery' ),
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget'  => '</aside>',
'before_title'  => '<div class="widget-title">',
'after_title'   => '</div>',
)
);
register_sidebar(
array(
'name'          => _x( 'Primary', 'sidebar', 'delivery' ),
'id'            => 'primary',
'description'   => __( 'The main sidebar, appears on posts and pages.', 'delivery' ),
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget'  => '</aside>',
'before_title'  => '<div class="widget-title">',
'after_title'   => '</div>',
)
);
register_sidebar(
array(
'name'          => _x( 'Secondary', 'sidebar', 'delivery' ),
'id'            => 'secondary',
'description'   => __( 'Secondary(left) sidebar, appears on posts and pages.', 'delivery' ),
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget'  => '</aside>',
'before_title'  => '<div class="widget-title">',
'after_title'   => '</div>',
)
);
register_sidebar(
array(
'name'          => _x( 'Footer', 'sidebar', 'delivery' ),
'id'            => 'footer',
'description'   => __( 'The footer sidebar, appears on the footer of your site.', 'delivery' ),
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget'  => '</aside>',
'before_title'  => '<div class="widget-title">',
'after_title'   => '</div>',
)
);
}

add_action( ‘widgets_init’, ‘delivery_register_sidebars’ );の部分は子テーマには記述しなくて大丈夫です。

タイトルとURLをコピーしました