外部リンクに Font Awesome アイコンをつけるカスタマイズ

こんにちは、魚沼情報サービスの対馬です。もうすぐ今年も終わりですね。

外部サイトへのリンクが設定されているテキストに、以下のように のアイコンがついていると、閲覧者に伝わりやすいですよね。

Lightning の使い方、カスタマイズを勉強するなら ベクトレ がおすすめ!!

この記事では、段落などに置いたテキストリンクに自動的にアイコンをつけるやり方を紹介しています。

アイコンを追加する CSS

Lightning には Font Awesome というアイコンフォントが組み込まれているので、少し CSS を書くだけでできちゃいます。

まず、子テーマの style.css などに以下の CSS を追加してみてください。

.entry-body p a[href^="http"]::after {
  margin-left: 3px;
  font-family: "Font Awesome 6 Free";
  content: '\f35d';
  font-weight: bold;
}

上記の CSS により、コンテンツの段落内の http で始まるリンクに外部リンクを示すアイコンがつきます。

サイト内のリンクにアイコンを表示しない CSS

このままだと、サイト内のリンクにも外部リンクを示すアイコンが表示されてしまいますので、以下の CSS によりサイト内リンクにはアイコンが表示されないようにします。

.entry-body p a[href^="https://lightning-free.hp1.work"]::after {
  margin-left: inherit;
  font-family: inherit;
  content: '';
  font-weight: inherit;
}

https://lightning-free.hp1.work の部分をサイトの URL に置き換えてください。

サイト内のリンクに別のアイコンをつける CSS

サイト内のリンクでもアイコンがあった方が気づいてもらいやすいので、三角のアイコンをつけてみましょう。

.entry-body p a[href^="https://lightning-free.hp1.work"]::before {
  margin-right: 1px;
  font-family: "Font Awesome 6 Free";
  content: '\f0da';
  font-weight: bold;
}

https://lightning-free.hp1.work の部分をサイトの URL に置き換えてください。

これで、サイト内リンクは以下のような表示になります。

このサイトを初めてご利用いただく方は サイト案内 をお読みください。

テーブルやリスト内のリンクにアイコンをつける

テーブル table やリスト ul の中に置いたリンクにアイコンをつけたい場合も考え方は上記と同様です。

アイコンをつけたくないときは (インライン画像など)

例えば、以下のように段落内に置いたインライン画像にリンクを設定した場合など、アイコンを表示したくないことがあります。

Lightning の使い方、カスタマイズを勉強するなら ベクトレ がおすすめ!! 詳しくはこちら

クラス link-no-icon のための CSS は以下の通りです。

.link-no-icon a::after,
.link-no-icon a::before {
  margin-left: inherit !important;
  font-family: inherit !important;
  content: '' !important;
  font-weight: inherit !important;
}

Chrome 105 になると...

近々リリース予定の Chrome バージョン 105 では、:has() という疑似クラスがサポートされて、画像を含むリンクを a:has(img) で指定できるようになります。

そうなれば、上記の link-no-icon のようなクラスを指定する手間をかけなくても、リンクを設定した画像にアイコンをつけなくすることが楽にできるようになります。

2022.8.16 現在

Chrome 105 がリリースされました

最近、Chrome バージョン 105 がリリースされて、以下の CSS によりリンクを設定した画像にアイコンをつけなくすることができるようになりました。

a:has(img)::after,
a:has(img)::before {
  margin-left: inherit !important;
  font-family: inherit !important;
  content: '' !important;
  font-weight: inherit !important;
}

ただし、Firefox はまだ has() をサポートしていませんので、現時点でこの CSS を使うかどうかは判断が分かれるところだと思います。

2022.9.6 更新

Firefox でも :has() が使えます

2023年12月19日にリリースされた Forefox 121 が :has() に対応しました。

これで主要ブラウザが :has() に対応しましたので、サイト制作に問題なく使えるようになっています。

":has()" | Can I use… Support tables for HTML5, CSS3, etc

2024.3.11 更新

投稿者プロフィール

対馬 俊彦
対馬 俊彦魚沼情報サービス (新潟県南魚沼市)
【日本全国対応】WordPress のサイト制作、設定、カスタマイズ、トラブルでお悩み、お困りの方、お手伝いいたします。

Lightning / VK Blocks / VK Filter Search のサポート、カスタマイズを得意としています。

遠方からのご依頼の場合、打ち合わせ・サポートを Zoom や電子メール・電話などを併用して行わせていただきます。

オンラインレッスン形式でのホームページ制作サポートも行っています。お客様ご自身でホームページを制作・運用する上でうまくいかない部分をサポートいたします。設定やカスタマイズを手伝ってもらいたい、同時に便利な使い方や設定方法、カスタマイズのやり方も知ることができたら...という方にご好評いただいています。

デザイナー様、制作業者様のサイト制作のお手伝いも数多く行っています。難しい部分のコーディング ( PHP / CSS / jQuery ) をやってほしい、いま人手が足りない等、お仕事の依頼をお待ちしています。

ご要望をうかがった上で費用見積り(無料)を提示させていただきますので、お気軽にお問い合わせください。

メールでのお問い合わせはこちら

Lightning テーマ使用

中小企業様、個人事業主様向け

最適なホームページ

を制作いたします

制作費用クオリティを落とさずに



価格を抑えたサイトを制作します
必要十分お問い合わせフォーム、新着情報など



必要なものが最初から揃っています
サポート1年間のサポートがついて安心
初めてでもホームページを活用できます