現在使用している TwentyTwenty テーマは、標準ではフッタに次のようなクレジットを表示する。
<div class="footer-credits">
<p class="footer-copyright">©2020年
<a href="https://listfreak.com/">*ListFreak</a>
</p><!-- .footer-copyright -->
<p class="powered-by-wordpress">
<a href="https://ja.wordpress.org/">Powered by WordPress</a>
</p><!-- .powered-by-wordpress -->
</div><!-- .footer-credits -->
ここから “Powered by WordPress” を除き、”©2020年” を “© 2005″(2005は当サイトの開始年)とする変更を行った。
今後テーマを変える可能性もあるので、テーマファイルに手を入れない方法を探した。この部分は wp_footer() から呼び出されるが、テンプレートファイルのHTMLを書き換えられるようなフックはない。そこでJavaScriptで書き換えることにした。
add_action( 'wp_footer', 'kh_footer', 22 );
function kh_footer() {
?>
<script type="text/javascript">
document.querySelector("p.footer-copyright").firstChild.data = "© 2005 ";
document.querySelector("p.powered-by-wordpress").textContent = "";
</script>
<?php
}
- wp_footer フックの中では優先度低めの22に設定。
- ”©2020年” の部分は要素(Element)ノードでなくテキストノード。よって firstElementChild でなく firstChildでアクセスする。