現在「イノセンス」スキンを適用中です。

外部リンク画像を指定した場合にLightbox系の処理が動かない | Cocoonテーマに関する質問 | Cocoon フォーラム

サイト内検索
書き込みの前に以下の3点をご確認ください。
  1. 1つのトピックにつき1つの質問を書き込んでください
  2. 不具合・カスタマイズ対象ページのURLを提示高速化を無効にしてください
  3. 該当部分のキャプチャ・環境情報とともに書き込んでいただけると助かります

何を書き込んだら良いか分からない場合は、以下のテンプレートをコピペしてご利用ください。

対象のページのURL:

相談内容:

解決のために試したこと:

※文字だけでは正しく伝わらない可能性があるため、画像の添付もお願いします。
※高速化設定をしている場合は無効にしてください。
環境情報:

※↑こちらに「Cocoon設定 → テーマ情報」にある「環境情報」を貼り付けてください。

環境情報の取得方法はこちら。
https://wp-cocoon.com/theme-report/
高速化設定を無効にするにはこちら。
https://wp-cocoon.com/theme-trouble/

フォーラム利用ガイドリンク

  1. フォーラムガイドライン
  2. よくある質問と答え(FAQ)
  3. サポート対象外のケース
  4. 原因不明の不具合用トラブルシューティング
  5. トピックにHTMLを貼り付ける方法(推奨ツール:notepad.pw
  6. 真っ白画面でのエラーメッセージの確認方法 
  7. ブラウザ環境チェックツール

フォーラム質問後、問題等が解決した場合は結果を書き込んでいただけると幸いです。同様の問題で調べている方には、結果が一番気になる部分となります。

また、問題の解決に至った場合には、トピック冒頭の「解決済み」リンクをクリックしていただけますと幸いです。

wpForoの解決済みリンク

また、有用な返信があった場合は「いいね!」リンクもご活用ください。返信者の励みになります。

wpForoのいいねリンク

「いいね!」機能はフォーラム登録者のみが利用できる機能です。

CC BY-ND 2.1)準じていれば(リンクを貼っていただければ)転載も自由です。カスタマイズ記事を書く際にコード等をコピペ利用していただいて構いません。

フォーラムの使い方がよくわからない場合は、テストトピックで自由にテストしていただいて構いません。

最近の書き込みはこちら。

詳細なカスタマイズ依頼をするならこちら。

スポンサーリンク
外部リンク画像を指定した場合にLigh...
 
共有:
通知
すべてクリア

[解決済] 外部リンク画像を指定した場合にLightbox系の処理が動かない


ぱのん
 ぱのん
(@ぱのん)
ゲスト
結合: 2年前
投稿: 3
Topic starter  

こんにちは、早速質問なんですが、

画像を挿入するときGoogleフォトの画像を外部リンクで指定しています。

この場合、設定でどの指定でも『baguetteBox』『Lity』『iLghtbox』画像の拡大効果は作動しません。

コードエディターモードで aタグ内に 【data-lightbox="image-set"】を追加で指定すると『iLghtbox』では作動出来ました。

画像を外部リンクで指定した場合でもうまく動作させる方法は無いでしょうか?


未解決
わいひら
(@yhira)
メンバーサイト Admin
結合: 3年前
投稿: 11965
わいひら - Facebookわいひら - Twitter
 

よろしければ、案内にもあるように実際のページのURLを提示していただけると助かります。
まず動作しない環境の実物を確認したく思います。


panon
(@panon)
Active Memberサイト
結合: 2年前
投稿: 5
 

現在の画像の設定は『Lightbox』です。

高速化のコードの縮小化はチェック外しています。

https://panonbox.com/resona-atmfree/

リンクの画像はすべてGoogleフォトの画像をリンクで挿入しています。

https://panonbox.com/googlephoto/

上記のページでは記事の中間あたりにアバター画像を2枚並べていますが、上部が『Googleフォト』で下部が『同じサーバー内』のものです。

現状はコードエディターモードで aタグ内に 【data-lightbox="image-set"】を追加してるので画像の拡大効果は出ています。

またこの2枚の画像ですが何も手を加えなければ、上の画像は普通にリンクに飛び、下の画像は『Lightbox』が反映されます。ですが、上部の画像に【data-lightbox="image-set"】を追加すると下部の画像から『Lightbox』のコードが消えて状態が逆転します。上部に反映され下部はリンクに飛びます。

 


わいひら
(@yhira)
メンバーサイト Admin
結合: 3年前
投稿: 11965
わいひら - Facebookわいひら - Twitter
 

CocoonのLightbox判別として、jpg、jpeg、png、gifが含まれているものを画像と判別しています。
https://github.com/yhira/cocoon/blob/e03782b9cda2dfb090c24bf495643e31a82bfefd/lib/image.php#L42
そうでないと、通常のテキストリンクまでLightbox仕様になってしまうので。

Google PhotoのURLの場合、以下のように、画像と判別できる情報がないため、反応しません。
ttps://lh3.googleusercontent.com/Pha8Evpbtcq5Gi7Ws2cWUXBPhZxL7agdfq9ko30dTQenptHIRiHOXs8oZnBTfn8B84vI3lTzYbSE4QQaYXkzHF8wNqr3dwm5jD3HecMiojEuB1yGTXXgw-vS9iSirwSujaDfT_oM5A=w800

今後も、Cocoon親テーマ側に、機能としてそういった判別は行わないと思います。


わいひら
(@yhira)
メンバーサイト Admin
結合: 3年前
投稿: 11965
わいひら - Facebookわいひら - Twitter
 

その場合、子テーマ側で対応していただく必要があるのですが、それ用のフックを用意しました。
まずは以下のファイルでアップデートしてください。
------------------------------------------------
https://github.com/yhira/cocoon
最新ファイルをダウンロードする場合は、上記ページのダウンロードボタンからzipファイルをダウンロードしてください。

FTPでのアップデート方法はこちら。
https://wp-cocoon.com/ftp-update/
------------------------------------------------


わいひら
(@yhira)
メンバーサイト Admin
結合: 3年前
投稿: 11965
わいひら - Facebookわいひら - Twitter
 

その後、以下のコードを子テーマのfunctions.phpに追記すると、アップデートの影響を受けない子テーマ側で対応できるかと思います。

LightboxをGoogle Photoに対応させる

//Google PhotoのLightbox置換
add_filter('add_lightbox_property', function ($content){
  //Aタグを正規表現で置換
  $content = preg_replace(
    '/<a([^>]+?googleusercontent\.com[^>]+?)>([\s\w\W\d]+?)<\/a>/i',//Aタグの正規表現
    '<a${1} data-lightbox="image-set">${2}</a>',//置換する
    $content );//投稿本文(置換する文章)

  return $content;
}); 

ぱのん
 ぱのん
(@ぱのん)
ゲスト
結合: 2年前
投稿: 3
Topic starter  

特殊な内容に対応して頂きありがとうございます。途中問題が発生しましたが、自己解決出来ました。

画像と次の画像に挟まれている場所すべてにリンクタグが指定される状態でした。(添付画像参照)

Chromeの検証機能で確認していたので、気がつくまで時間がかかりました。”/a”実際は無いのですが有るように処理されるようですね。

結果的には

'<a${1} data-lightbox="image-set">${2}',//置換する
'<a${1} data-lightbox="image-set">${2}</a>',//置換する

”</a>”が抜けていただけだと思います。

ちなみに${2}の部分ですが親テーマの判別では”3”ですが2と3の違いはなにかあるのでしょうか?

思っていたように表示させる事が出来ましたありがとうございます。


わいひら
(@yhira)
メンバーサイト Admin
結合: 3年前
投稿: 11965
わいひら - Facebookわいひら - Twitter
 

すいません。僕の記入ミスだと思います。
上のコードも修正しておきます。

ちなみに${2}の部分ですが親テーマの判別では”3”ですが2と3の違いはなにかあるのでしょうか?

これに関しては、以下のページの「パターンに一致する文字を別の文字に置き換える」部分を参照してください。
http://www.sound-uz.jp/php/note/regx

ここら辺。

$0 は正規表現パターン全体にマッチする文字を表しています。もちろん $1、$2、$3 ... というのもあるわけですが、これはパターンの中で、カッコで囲まれたパターンの文字を表します。始めのカッコのパターンにマッチする文字が $1、2番目のカッコのパターンにマッチする文字が $2、といった順番に対応しており、パターンの一部を参照することが出来ます。


わいひら
(@yhira)
メンバーサイト Admin
結合: 3年前
投稿: 11965
わいひら - Facebookわいひら - Twitter
 

実際に、エディターに書いたコードを見たら問題なかったようです。
なので、おそらくaの閉じタグは、HTMLタグなので、フォーラムにタグと認識されてしまったのかもしれません。
一応、エディターに書いた原本のコードも画像で掲載しておきます。


ぱのん
 ぱのん
(@ぱのん)
ゲスト
結合: 2年前
投稿: 3
Topic starter  

PHPの正規表現や置き換えについて、すごく勉強になりました。

PHPもこれから学習していこうと思います。ありがとうございました。


わいひら 件のいいね!
共有:
スポンサーリンク
わいひらをフォローする
おすすめサーバー(コスパ・バックアップ重視型)

性能も兼ね備えながら安くブログ運営を開始できる点においてのNo.1。
それでいてブログ成長後は、十分すぎるほどのスペックアップ余力も担保されている。

◎安く始められる
◎LiteSpeedを用いた高速サーバー(完全SSD)
◎http/3(高速化プロトコル)に対応
◎東京・大阪でリージョン選択が可能
◎プランのアップ・ダウングレードが自由自在
◎同サービス内でドメイン管理が可能
◎ディスク容量が多い
◎転送量が多い
◎毎日無料バックアップ(14日分)
◎DBは14日以内なら無料自動復旧可能
◎ファイルも14日以内なら無料自動復旧可能
◎アダルト・出会い系サイト可
◎ドメインとサーバー代のチャージ払いが可能
○サーバ引っ越し依頼が可能(有料)

サービス運営期間:2年9ヶ月

1年以上の契約をする場合は、クーポンコード入力でさらに10%割引(※2021/6/30まで)。

クーポンコード:PK4JK4RJ

クーポンの使用方法はこちら

とにかく速い。サイトに表示スピードを求めるならココ。
管理画面がシンプルで使いやすい。

◎nginxを用いた高速サーバー(完全SSD)
◎プランのアップ・ダウングレードが自由自在
◎同サービス内でドメイン管理が可能
◎ディスク容量が多い
◎転送量が多い
○http/2(高速化プロトコル)に対応
◎毎日無料バックアップ(14日分)
◎DBは14日以内なら無料自動復旧可能
◎ファイルも14日以内なら無料自動復旧可能
◎サーバ引っ越しツールあり(無料)
○サーバ引っ越し依頼が可能(有料)
◎ドメインとサーバー代のチャージ払いが可能

サービス運営期間:2年7ヶ月

安定感抜群のサーバーです。あまり急激なアクセス変動がないアフィリエイトサイトに向いています。

◎nginxを用いた高速サーバー(完全SSD)
◎老舗サーバーなので安定感抜群
◎ディスク容量が多い
◎転送量が多い
◎同サービス内でドメイン管理が可能
○http/2(高速化プロトコル)に対応
○毎日無料バックアップ(14日分)
○DBは7日以内なら無料自動復旧可能
×ファイルは有料かつ手動での復旧
×プラン変更でCPUのスペックアップができない
×プラン変更しても即時反映されない
×アダルト・出会い系サイト不可

サービス運営期間:17年

常に新しいことに挑戦しているフロンティア精神あふるるレンタルサーバーです。
LiteSpeedやHTTP/2を日本で初めて導入したサーバー。

◎LiteSpeedを用いた高速サーバー(完全SSD)
◎http/3(高速化プロトコル)に対応
◎プランのアップ・ダウングレードが自由自在
◎同サービス内でドメイン管理が可能
◎転送量が多い
◎ディスク容量が多い
◎毎日無料バックアップ(14日分)
◎DBは14日以内なら無料自動復旧可能
○ファイルは14日以内なら無料復旧可能(※手動)
◎アダルト・出会い系サイト可
◎ドメインとサーバー代のチャージ払いが可能
○サーバ引っ越し依頼が可能(有料)

サービス運営期間:4年

格安な値段で始められる高機能サーバーです。
性能も備えつつ最安ならここ。
ただし少し機能は弱い。

◎LiteSpeedを用いた高速サーバー(完全SSD)
◎激安プランが用意してある
◎値段あたりのスペックが高い(コスパ良し)
◎サーバ引っ越し依頼が可能(無料)
◎アダルト・出会い系サイト可
○http/2(高速化プロトコル)に対応
△プランのアップは可能だがダウンは不可
△毎日自動バックアップ(1日分)
△前日のバックアップからのみ復元できる(無料)

サービス運営期間:5年

Cocoon
タイトルとURLをコピーしました