ボックスメニューを新しいタブで開くことは可能ですか? | Cocoonテーマに関する質問 | Cocoon フォーラム

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

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

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

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

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

wpForoの解決済みリンク

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

wpForoのいいねリンク

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

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

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

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

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

フォーラムのTwitterアカウント(@CocoonForum)はこちら

スポンサーリンク
ボックスメニューを新しいタブで開くこと...
 
Share:
Notifications

[解決済] ボックスメニューを新しいタブで開くことは可能ですか?  


myst
(@myst)
Active Member
参加: 2週間 前
投稿: 8
2020年3月19日 12:14  

お世話になります。

有料のテーマも含めて色々と使ってきましたが、けっきょくCocoonに戻ってきました。やっぱり素晴らしいです。

 

質問です。

タイトルの通り「ボックスメニューのリンク先を新しいタブで開きたい」のですが、簡単な方法はありますか?

メニューで指定するだけでは、できませんでした。

良い方法がありましたら、教えて頂けると助かります。

 

宜しくお願いいたします。


わいひら
(@yhira)
メンバーサイト Admin
参加: 2年 前
投稿: 8715
わいひら - Facebookわいひら - Twitter
2020年3月19日 20:57  

現在、そういった機能は存在していません。
ただ、ボックスメニューショートコードには、targetオプションを用意したので、_blankに変更はできるようにしました。
------------------------------------------------
https://github.com/yhira/cocoon
最新ファイルをダウンロードする場合は、上記ページのダウンロードボタンからzipファイルをダウンロードしてください。

FTPでのアップデート方法はこちら。
https://wp-cocoon.com/ftp-update/
------------------------------------------------
加えて、box_menu_link_targetフックを追加したので、子テーマのfunctions.phpに以下のコードを追記することで、新しいタブで開くようにできるようになるかと思います。

//ボックスメニューのリンクを「新しいタブ」で開く
add_filter('box_menu_link_target', function ($target, $url){
return '_blank';
}, 10, 2);
This post was modified 2週間 前 by わいひら

myst 件のいいね!
myst
(@myst)
Active Member
参加: 2週間 前
投稿: 8
2020年3月20日 11:49  

@yhira

早速の対応ありがとうございましたっ!
あっという間に、作業が完了しました。

(こんなに親切な対応をしてくれるのは、ここだけだと思います)。

ちなみに、「同じタブ内」と「新しいタブ」とを混ぜて設定することは技術的に可能でしょうか?

宜しくお願いいたします。

 


わいひら
(@yhira)
メンバーサイト Admin
参加: 2年 前
投稿: 8715
わいひら - Facebookわいひら - Twitter
2020年3月20日 19:25  

可能です。
そういった用途のために、box_menu_link_targetフックの第二引数に$urlを割り当てているので、そのURLから「内部リンク」とか「外部リンク」とかを判断する条件分岐を書いて、_selfと_blankを振り分ければできます。


myst 件のいいね!
myst
(@myst)
Active Member
参加: 2週間 前
投稿: 8
2020年3月20日 20:43  

@yhira

お忙しいところを何度も助けてくださって、ありがとうございます!
今後、いろいろなパターンで活用させていただきます。

ありがとうございました!


myst
(@myst)
Active Member
参加: 2週間 前
投稿: 8
2020年3月21日 13:42  

@yhira

たびたびスミマセン...

解決した(というか、あとは自力で)と思ったのですが……色々と試してみて、けっきょく記述の仕方がわかりませんでした。

記述方法の例を、お教え下さいますでしょうか。

本当にごめんなさい。

 


わいひら
(@yhira)
メンバーサイト Admin
参加: 2年 前
投稿: 8715
わいひら - Facebookわいひら - Twitter
2020年3月21日 19:17  

どういう仕様で開き方を変えるのかの仕様がわからないとコードは書けないです。
僕が書いた「内部リンク」と「外部リンク」とかで分けるの簡単に書くなら、以下を子テーマのfunctions.phpに追記すればできるかなと思います。

//ボックスメニューのリンクを外部リンクだけ「新しいタブ」で開く
add_filter('box_menu_link_target', function ($target, $url){
  if (!includes_home_url($url)) {
    $target = '_blank';
  }
  return $target;
}, 10, 2); 

動作確認はしていないので、もし不具合があったら不具合状態をまた書き込んでいただければと思います。


myst
(@myst)
Active Member
参加: 2週間 前
投稿: 8
2020年3月21日 20:44  

@yhira

わざわざスミマセン...ありがとうございます!

まさに、外部リンクのみ新しいタブにしようと思っていました。

早速、試してみました。が、サイト内の固定ページも新しいタブで開かれてしまいます。

 

ボックスメニュー

(1)ダウンロードページ(サイト内)

(2)ダウンロードページ(サイト内)

(3)外部リンク

(4)外部リンク

(5)固定ページ(サイト内)

(6)固定ページ(サイト内)

 

(1)〜(4)までは、予定通りにいきましたが、

なぜか(5)と(6)も、新しいタブになってしまいます。

原因は判りますでしょうか?

 

宜しくお願いいたします。

 


わいひら
(@yhira)
メンバーサイト Admin
参加: 2年 前
投稿: 8715
わいひら - Facebookわいひら - Twitter
2020年3月22日 19:18  

そこまで行くと、実物を見ずには何とも言えないかもしれません。

フォーラムの案内にもありますように、該当ページのURLを提示していただければと思います。

不具合・カスタマイズ対象ページのURLを提示高速化を無効にしてください


myst
(@myst)
Active Member
参加: 2週間 前
投稿: 8
2020年3月22日 22:43  

@yhira

お忙しい中、お返事ありがとうございます。

以下がボックスメニューを使用したサイトです。

https://大相撲クイズ.com

フッターの手前に設置してあります。

左から

(1)ダウンロードページ(サイト内)
(2)ダウンロードページ(サイト内)
(3)外部リンク
(4)外部リンク
(5)固定ページ(サイト内)
(6)固定ページ(サイト内)

問題の箇所は(5)(6)です。
同じサイト内のリンクですが、新しいタブで開かれてしまいます。

宜しくお願いいたします。

 


わいひら
(@yhira)
メンバーサイト Admin
参加: 2年 前
投稿: 8715
わいひら - Facebookわいひら - Twitter
2020年3月23日 19:16  

日本語ドメインなんですね。
だとしたら、最も手っ取り早いのは直接URL(ピュニコード)文字列で判別してみるとか。

//ボックスメニューのリンクを外部リンクだけ「新しいタブ」で開く
add_filter('box_menu_link_target', function ($target, $url){
  if (!includes_string($url, 'https://xn--eckva8a1692afcm60z.com/')) {
    $target = '_blank';
  }
  return $target;
}, 10, 2); 

日本語ドメインの場合、どういう環境になるのかちょっと興味があります。
後学のためにも、環境情報もいただいてよろしいでしょうか。
https://wp-cocoon.com/theme-report/


myst
(@myst)
Active Member
参加: 2週間 前
投稿: 8
2020年3月23日 20:55  

@yhira

何度も有難うございます!

書き換えてみたのですが、ダメでした...

ひとつ実験をしてみました。

メニュー6つの並び順を、色々と入れ替えてみたのです。

すると、どの並びにしても(5)と(6)が、新しいタブで開かれることがわかりました。

 

差し当たり、しばらくは外部リンクのメニューを(5)(6)に移動させることにします。

これでやりたかったことは出来たことになります!

しかし、原因が判るとスッキリはしますので、私も色々と考えてみます(閃きがあれば、こちらで報告させていただきます)。

 

環境情報

----------------------------------------------
サイト名:大相撲クイズ.com
サイトURL: https://xn--eckva8a1692afcm60z.com/wp
ホームURL: https://xn--eckva8a1692afcm60z.com
コンテンツURL:/wp/wp-content
インクルードURL:/wp/wp-includes/
テンプレートURL:/wp/wp-content/themes/cocoon-master
スタイルシートURL:/wp/wp-content/themes/cocoon-child-master
子テーマスタイル:/wp/wp-content/themes/cocoon-child-master/style.css
WordPressバージョン:5.3.2
PHPバージョン:7.2.27
ブラウザ:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36
サーバーソフト:Apache
サーバープロトコル:HTTP/1.1
言語:ja,en-US;q=0.9,en;q=0.8
----------------------------------------------
テーマ名:Cocoon
バージョン:2.1.2.1
カテゴリ数:1
タグ数:0
ユーザー数:1
----------------------------------------------
子テーマ名:Cocoon Child
バージョン:1.1.0
style.cssサイズ:827バイト
functions.phpサイズ:632バイト
----------------------------------------------
Gutenberg:1
AMP:0
PWA:0
Font Awesome:5
Auto Post Thumbnail:1
Retina:1
ホームイメージ:/wp/wp-content/themes/cocoon-master/screenshot.jpg
----------------------------------------------
ブラウザキャッシュ有効化:0
HTML縮小化:0
CSS縮小化:0
JavaScript縮小化:0
Lazy Load:0
WEBフォントLazy Load:0
JavaScript(フッター):1
----------------------------------------------
利用中のプラグイン:
Classic Editor 1.5
Contact Form 7 5.1.7
Contact Form 7 Serial Numbers 0.8.1
Download Manager 3.0.92
PDF Embedder 4.6
Search Regex 1.4.16
TinyMCE Advanced 5.3.0
WP Mail SMTP 1.8.1
WP User Avatar 2.2.5
zipaddr-jp 1.23
----------------------------------------------

 


わいひら
(@yhira)
メンバーサイト Admin
参加: 2年 前
投稿: 8715
わいひら - Facebookわいひら - Twitter
2020年3月23日 22:07  

その環境情報+文字列を直接入力してダメということは、こちら側の不具合だと思いコードを確認してみました。
そしたら、変数の代入関係の不具合でした。
お手数をおかけして申しわけないです 😥
修正したものを以下にアップしておきました。
------------------------------------------------
https://github.com/yhira/cocoon
最新ファイルをダウンロードする場合は、上記ページのダウンロードボタンからzipファイルをダウンロードしてください。

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

This post was modified 1週間 前 by わいひら

myst 件のいいね!
わいひら
(@yhira)
メンバーサイト Admin
参加: 2年 前
投稿: 8715
わいひら - Facebookわいひら - Twitter
2020年3月23日 22:08  

コードはこっちで良いかと思います。おそらく。

//ボックスメニューのリンクを外部リンクだけ「新しいタブ」で開く
add_filter('box_menu_link_target', function ($target, $url){
  if (!includes_home_url($url)) {
    $target = '_blank';
  }
  return $target;
}, 10, 2);  

myst 件のいいね!
myst
(@myst)
Active Member
参加: 2週間 前
投稿: 8
2020年3月24日 12:36  

@yhira

お手を煩わせてすみません。

ビンゴでした!

思ったとおりに動作するようになりました。

完璧です。

今回は助かりました。最後までお付き合いいただき本当に有難う御座います。

今後とも宜しくお願いいたします!

 

ちなみに他の個人ブログサイトでも「Cocoon」を使わせて頂いております。

 


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

性能も兼ね備えながら安くブログ運営を開始できる点においてのNo.1。

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

サービス運営期間:1年8ヶ月

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

クーポンコード:PK4JK4RJ

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

とにかく速い。サイトに表示スピードを求めるならココ。

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

サービス運営期間:1年6ヶ月

プラン変更で負荷対策が行えるので、ブログ向きのレンタルサーバーです。

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

サービス運営期間:3年

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

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

サービス運営期間:16年

格安な値段で始められる高機能サーバーです。
性能も備えつつ最安ならここ。
サイトを続けるうちにアクセスが増えれば、プランのアップグレートで対応可能です。

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

サービス運営期間:4年

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