SWELL│固定記事のタイトル上のフックを作成する方法

SWELLには様々なフックがありますが、固定記事のタイトル上のフックはありません。

そこでコードを上書きすることでオリジナルのフックswell_before_page_titleをつくることで、用意に追加できるようにしてみました。

do_action( 'swell_before_page_title' ); // ★追加したフック

上書きなので非破壊で親テーマでも使えます。

その備忘録です。

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

大事なのはSWELLのコードの上書きで公式で用意されてない場所にフックを新規設置できるということです。

いろいろSWELLのカスタマイズの幅が広がるので便利です。

目次

著者

WEB制作をしているデジタルノマド
WordPressのカスタマイズが好きで、色々と自作しています。

WordPressのカスタマイズに困ったらご相談ください!

SWELLで固定記事のタイトル上のフックを作成する方法

やり方は簡単です。

functions.phpにコードを挿入するだけです。

まずは管理画面から外観 > テーマエディタ > functions.phpに下記のコードを挿入してください。

※ちなみにコードスニペットに挿入するとコードの順番的に先に読み込まれてしまうので、うまくいかないです。

if ( ! function_exists( 'swl_parts__page_title' ) ) :
    function swl_parts__page_title( $args ) {

        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 add_something_after_nav() {
    echo '<p style="text-align: center; color: red;">固定記事の下に表示したい内容</p>';
}
add_action( 'swell_before_page_title', 'add_something_after_nav' );

実際には下記のように表示されます。

以上です。

  • URLをコピーしました!

WAZAの有料記事のサブスクリプションも開始しました。

サービス

Service

WordPressサイトのカスタマイズのサービスに関心がありましたら、ぜひ詳細をご覧ください。

目次