【質問】シンタックスハイライター機能の行番号表示を選択できるようにする方法



  • お世話になっております。

    ■やりたいこと
    シンタックスハイライター機能の行番号表示をユーザー側で指定できるようにしたい。

    ■やったこと
    ・シンタックスハイライトの機能を増やしたいと考え、Prism.jsの公式ページからprism.cssとprism.jsをダウンロードし、jin-childのcssフォルダとjsフォルダに配置。
    ・上記のファイルを読み込むため、jin-childのfunctions.phpに下記のコードを追記。

    //子テーマでPrism.js を読み込む
    function load_prism_scripts() {
      $theme_uri = get_stylesheet_directory_uri();
      wp_enqueue_script( 'prism-js', $theme_uri . '/js/prism.js', array(), false, false );
      wp_enqueue_style( 'prism-css', $theme_uri . '/css/prism.css');
    }
    add_action( 'wp_enqueue_scripts', 'load_prism_scripts' );
    

    ・読み込まれていることは確認できたが、行番号が常に表示されるので調査したところ、JINの標準機能と競合していることを確認。
    ・JINの親テーマ側のjs/common.js内で下記の関数が定義されており、自動的にline-numbersクラスが付与されるためだと推測。

    //シンタックスハイライターの行番号クラスをつける
    (function($){
    	$(document).ready(function() {
    		$('.cps-post-main-box pre').addClass('line-numbers');
    	});
    })(jQuery);
    

    親テーマは手を付けずに子テーマのみの編集で対応したいと考えています。
    解決策として下記が考えられたのですが、どこにどのようなコードを記載すれば正常に動作できるのかわかりませんでした。
    ①子テーマ側で親テーマの関数を無効化する。
    ②親テーマ側で自動で付与されたline-numbersクラスを一度削除し、記事内で付与したクラスのみを反映させる。

    当方、エンジニアのため多少プログラム関連のワードで説明いただいても問題ありません。
    お忙しいところ恐れ入りますが、よろしくお願いします。


    マニュアル確認済み
    キャッシュクリア済み
    WordPressのバージョン : 5.5.1
    ご利用のサーバー名 : Xserver
    PHPのバージョン : 7.4.4
    OS : macOS
    ご利用のブラウザ : Google Chrome
    該当サイトのURL : https://koheinishino.com/