Luxeritasのフッターの提供元表記を非表示にしようと戦った記録

負けました

こことは別で運営しているブログではWordPressテーマ「Luxeritas」を使っています。

高速、高機能、スッキリしたデザイン、カスタマイズの容易さ、行き届いたSEO対策にAMP対応……

これで無料で本当にいいの? というレベルで、お気に入りです。

しかし一点だけ、どうにかできないかなーと思う部分があります。

フッターに表示される提供元の表記「WordPress Luxeritas Theme is provided by “Thought is free”.」が消せないんです。

……と、持てる知識を総動員していろいろ試してみました。

開発者のるなさんに挑戦する形です。

が、幾重にも張り巡らされた非表示対策に挫折しました。

その一部始終をご紹介します。

※2017-09-10追記

本記事の内容に対し、Luxeritas作者のるなさんがお怒りというご連絡を受けております。

非礼に値する軽率な行いをしてしまい申し訳ありませんでした。ここに謝罪いたします。

本記事の取扱については作者のるなさんの意向を確認のうえ対処いたします。それまでは同じことが繰り返し起きないよう、警告の意味で残置いたします。

※2017-09-10追記

本件に関し、作者のるなさんよりご連絡をいただきました。

本記事で紹介した方法は、試すだけでもWordPressで不具合が発生しかねないものであるそうです。

最悪の場合、管理画面へのログインができなくなる、ブログ画面が表示されなくなる等の重大な事態に陥る可能性があります。

あらかじめご承知おきください。

Luxeritasの提供元表記は消してOK

そもそもこのフッターの提供元は消してもOKとされています。

一応、GPL v2 では、ソース内は消しちゃダメだけど、起動後の画面に表示される部分に関しては制限はない。なので消したきゃ消してもいい。

出典:Q&A よくある質問 | Luxeritas Theme

よし、じゃいっちょ消してみるか!

と意気込んでいろいろ調べて試してみました。

ちなみに使っているバージョンは、2017年9月8日時点の最新版である2.2.4です。

子テーマのCSSで非表示にする → ×

まずは子テーマのCSSで対象部分を消せないか試しました。

対象はid="thk"です。そのため以下コードを子テーマのCSSに追加してみたのですが……

#thk {display:none;}

見事に無視されました。

というのも、そもそも消す対象のstyle属性に思いきり

display:block !important

と書いてあるためです。

CSSに書かれたスタイルよりstyle属性に直書きされている情報のほうが優先されるんですよね。

しかも!importantまでつけられてしまっては太刀打ちできません。

もちろんvisibility:hidden;もダメでしたし、下記サイトに書いてある「背景と同じ文字色にして見えなくする」作戦(color:#XXXXX;)も効きませんでした。

参考 ワードプレスLuxeritas(ルクセリタス)テーマのフッター提供元情報WordPress Luxeritas Theme is provided by “Thought is free”.を消す方法

親テーマのPHPで該当部分を変更 → ×

よろしい、ではPHPだ!

ということで親テーマのフッター(footer.php)で該当部分をまるごとコメントアウトしてみたんですが……

<!-- <p id="thk" class="copy">~</p>-->

ダメでした。

コメントアウトされたHTMLの直下に新しい提供元表記が自動挿入されていました。

これはもしかしてJavaScriptでやってるのでしょうか……

※2017/09/09追記

上記部分をdisplay:none;のstyleを持つdivタグで囲ってみては? というコメントいただきました。

試してみたのですが、divの次に提供元のpタグがニョキッと現れました……

JavaScript生成部分をコメントアウト → ×

と、ここまで同じことを考えた方がいたようです。

仕方ないのでjavascript関連のソースを見てみる。 おそらく”create-javascript.php”の1175行目あたりをコメントアウトすると多分消える。

出典:Luxeritasフッター提供元情報削除 | hyperbanana cafe

というわけで、さっそく該当部分をコメントアウトしてみたのですが……

// return $ret;

全然ダメでした。提供元表記はゾンビのごとく蘇ってきます

うーん、これはどうすればできるのだろうか……

スポンサーリンク

挙動を見てみる

そこで、実際のブログ画面上でフッターの提供元表記がどのように蘇るのかを観察してみました。

ChromeのDeveloper Toolでstyle属性をいじったり、JavaScriptで消すCSSを投入してみたところ……

どうやらいじっても1秒毎に再生するという処理が走っている模様。

JavaScriptでいうとsetInterval()ですね。

おそらく定期的にチェックを行って、NGなら要素を挿入するという処理を行っているのだと思います。

生成しているJavaScriptをいじる

そこであたらめて親テーマのcreate-javascript.phpを見てみると……

ありました。1092行目付近です。

if( href.indexOf("/embed/") < 1 ){
   setInterval( function() {…} ,1000)
}

どうやらこの中身でチェックを行ったうえ、CSSがいじされていたらあるべきstyleを挿入したり、要素そのものが消されていたら要素を挿入しているようです。

よろしい! ならば削除だ!

ということで上記setInterval();をまるごと消してみたのですが……

全然復活しました。

この提供元表記、強いぞ……!

スポンサーリンク

まとめ:るなさんに負けました

というわけで、試した範囲ではLuxeritasの提供元表記を消すことはできませんでした。

開発者のるなさんに戦いを挑んでみたけど、ものの見事に撃沈した形です。

というより、おそらくやり方を見つけたとしてもるなさんが穴を潰しに来る気もするので、きっとイタチごっこですね。

郷にいらずんば郷に従え……またやる気が出るまでおとなしくしてみようと思います。

※2017-09-10追記

なんと本家から有料プラグインが発売開始されました!

この記事で色々やってダメだったのを見てお分かりかもしれませんが、頑張るより買ったほうが早いかもしれません……

Luxeritas 提供元表示消去プラグイン | Luxeritas Theme
WordPress Luxeritas Theme のフッター下にある提供元の表示 「WordPress Luxeritas Theme is provided by "...
スポンサーリンク
スポンサーリンク
スポンサーリンク

この記事をシェアする

おすすめ記事

あなたにオススメの記事

スポンサーリンク
スポンサーリンク

コメント

  1. とおりすがり より:

    下記はいかがでしょうか?

    現在
    (略)

    修正後

  2. とおりすがり より:

    下記はいかがでしょうか?

    現在
    <p id=”thk” class=”copy”>略</a>

    修正後
    <p id=”thk” class=”copy”>略</a>

  3. とおりすがり より:

    なんどもすみません。

    修正後
    <div style=”display:none;”><p id=”thk” class=”copy”>略</a></div>

    • とおりすがりさん

      コメント&アイデアありがとうございます!
      さっそく試してみたところ、display:none;なdiv要素にくくられた分は非表示になりました。
      しかしそのすぐ下(divの次)に新しい提供元がニョキッと現れました……

      どうやら親要素までさかのぼって非表示を検知しているようです。
      たぶんこの検知の仕組み自体をやっつけなければならない気がしてきました……

  4. クズが より:

    作者が静かに怒ってるぞ。
    配布中止されたらてめえのせいだ。

    • クズがさん
      コメントありがとうございます!
      るなさんのサイト見ました。大変だ……
      記事に訂正と追記のうえ、謝罪してきます。
      お知らせくださってありがとうございます!!!