SWELLには様々なフックがありますが、固定記事のタイトル上のフックはありません。
そこでSWELLの関数を上書きしてオリジナルのフックswell_before_page_titleを作り、固定ページのタイトル上へ容易にコンテンツを追加できるようにしてみました。
if ( is_page() && empty( $args['nowrap'] ) ) {
do_action( 'swell_before_page_title' ); // 固定ページの通常タイトル出力だけで実行
}親テーマのファイルは編集せず、子テーマのfunctions.phpで関数を上書きする方法です。

その備忘録です。
ちなみに固定記事ページ上部のウィジェットがあるので、このカスタマイズ自体は重要なものではないです。

大事なのはSWELLのコードの上書きで公式で用意されてない場所にフックを新規設置できるということです。
いろいろSWELLのカスタマイズの幅が広がるので便利です。

固定ページだけに表示できているか確認する
通常の固定ページを開き、追加内容がタイトルの直前へ表示されることを確認します。
同じ内容が投稿記事のタイトル前へ出ていないことも確認します。
2026年10月2日、WordPress 7.1.2とSWELL 2.19.0の実HTTP表示で、固定ページの通常タイトルとhas_inner指定のタイトルへ挿入できることを確認しました。
nowrap指定の文字列出力と、投稿記事内の通常・has_inner・nowrap指定では追加内容を出しません。
スマートフォン375px相当でもタイトル直前の位置を確認しています。
この上書きはSWELLの関数実装に依存するため、親テーマの更新後は元の関数との差分を確認します。
SWELLで固定記事のタイトル上のフックを作成する方法
やり方は簡単です。
子テーマのfunctions.phpにコードを追加するだけです。
まずは子テーマを有効化した状態で、外観 > テーマファイルエディターから子テーマのfunctions.phpを開き、末尾に下記のコードを追加してください。
親テーマ(SWELL)のfunctions.phpはテーマ更新で上書きされるため、直接編集しないでください。
編集前に子テーマのfunctions.phpをコピーして保存し、FTPやサーバーのファイルマネージャーから元に戻せる状態にしておきましょう。
if ( ! function_exists( 'swl_parts__page_title' ) ) :
function swl_parts__page_title( $args ) {
if ( is_page() && empty( $args['nowrap'] ) ) {
do_action( 'swell_before_page_title' ); // 固定ページの通常タイトル出力だけで実行
}
$title = $args['title'] ?? '';
$subtitle = $args['subtitle'] ?? '';
$has_inner = $args['has_inner'] ?? false;
$nowrap = $args['nowrap'] ?? false; // 後方互換用
if ( $subtitle ) {
$title .= '<small class="c-pageTitle__subTitle u-fz-14">– ' . $subtitle . ' –</small>';
}
if ( $nowrap ) {
echo wp_kses( $title, \SWELL_Theme::$allowed_text_html );
return;
}
$title = wp_kses( $title, \SWELL_Theme::$allowed_text_html );
$title_style = '';
if ( $has_inner ) {
$title = '<span class="c-pageTitle__inner">' . $title . '</span>';
$title_style = is_archive() ? \SWELL_Theme::get_setting( 'archive_title_style' ) : \SWELL_Theme::get_setting( 'page_title_style' );
}
if ( $title_style ) {
echo '<h1 class="c-pageTitle" data-style="' . esc_attr( $title_style ) . '">' . $title . '</h1>';
} else {
echo '<h1 class="c-pageTitle">' . $title . '</h1>';
}
}
endif;
// フックに挿入したい内容(固定ページのみ)
function motoki_before_page_title_content() {
if ( ! is_page() ) {
return;
}
echo '<p style="text-align: center; color: red;">固定ページのタイトル上に表示したい内容</p>';
}
add_action( 'swell_before_page_title', 'motoki_before_page_title_content', 10, 0 );
実際には下記のように表示されます。

以上です。
この記事で紹介しているコードは、GitHubのMOTOKI-LLC/WAZA-codeにもまとめています。
nowrapが指定されたタイトル文字列だけの出力では、このフックを実行しません。通常の固定ページタイトルを出力する場合に、その直前へ内容を挿入します。
元に戻すときは、今回追加したswl_parts__page_titleの定義とadd_actionを含むコードを削除します。



