Simplicityの特徴 › フォーラム › 要望・機能追加など › WordPress 5.1のnoopener noreferrer強制付与問題につきまして
- このトピックには6件の返信、2人の参加者があり、最後に
きくにより7年、 2ヶ月前に更新されました。
-
投稿者投稿
-
-
2019年2月26日 3:38 PM #61380
きく
ゲスト初めまして。きくというものです。
上記質問と同様にWordPress 5.1にしてから投稿記事にnoopener noreferrerが強制付与される問題で悩んでおります。
ただ私の場合phpが分からずどのようなソースコード書けば強制付与回避できるのか分からない状態です。参考になるかどうか分かりませんが上記を参考に以下のようなコード組んで見ました
//強制付与されるnoopener及びnoreferrer削除 function noopener_wp_targeted_link_rel( $rel_value, $link_html ){ if( false === strpos( $link_html, home_url() ) ){ $rel_value = 'noopener'; } return $rel_value; } remove_filter( 'wp_targeted_link_rel', 'noopener_wp_targeted_link_rel', 10, 2 ); function noreferrer_wp_targeted_link_rel( $rel_value, $link_html ){ if( false === strpos( $link_html, home_url() ) ){ $rel_value = 'noreferrer'; } return $rel_value; } remove_filter( 'wp_targeted_link_rel', 'noreferrer_wp_targeted_link_rel', 10, 2 );正直phpには疎いので全く分からないのですがやりたいこととしては
上記リンクに乗っていたソースコード参考にして
noopenerとnonoreferrerが自分のHP以外のURLの時強制付与されないようにするといったことです。ですがこのソースコードでは強制付与が止まらず悩んでいるところです。
なのでもしサポート外でありましたら誠に申し訳ないのですが
noopenerとnonoreferrerの強制付与回避できるようなソースコードご提示いただくこと可能でしょうか?
誠に差し出がましいお願いだとは存じておりますが何卒よろしくお願いいたします。後一応要望・機能追加項目としてトピック立ち上げた点としましては
今後のアップデートでsimplicity側でnoopenerとnonoreferrerの強制付与回避機能
お願いしたく立ち上げさせていただきました。以上でございますが何卒お願いできれば幸いでございます。
-
2019年2月26日 4:00 PM #61381
きく
ゲスト追記
時期尚早かもしれませんが自己解決したのかもしれないのでご連絡差し上げました。
以下のソースコードでnoopener及びnoreferrer強制付与止めること出来ました。//強制付与されるnoopener及びnoreferrer削除 function no_wp_targeted_link_rel( $rel_value, $link_html ){ if( false === strpos( $link_html, home_url() ) ){ $rel_value = ''; } return $rel_value; } add_filter( 'wp_targeted_link_rel', 'no_wp_targeted_link_rel', 10, 2 );ただ私も幾分素人なのでこのソースであっているかという確信はありません。
もしよりよいコードありましたらご提示願えますと幸いです。以上、追記となりますが何卒よろしくお願い申し上げます。
-
2019年2月26日 8:53 PM #61385
-
2019年2月27日 2:21 PM #61387
きく
ゲストわいひら様
お世話になっております。きくです。
お返事いただきありがとうございます。個人的に気になったのですが
参考サイト様ではnofollow使っていますがnofollowはSEO対策で使われるものであり
自サイトかそれ以外かで条件分岐必要ですが
今回は強制付与されるnoopener及びnoreferrerの回避が目的のため
条件分岐消し以下のコードにしました。//強制付与されるnoopener及びnoreferrer削除 function no_wp_targeted_link_rel($rel_value){ $rel_value = ''; return $rel_value; } add_filter( 'wp_targeted_link_rel', 'no_wp_targeted_link_rel', 10, 2 );またnoopenerについてはセキュリティで必要なのはその通りだと思います。
上記コードの空欄にnoopener付与すればそのまま自動で付与される形になりますので
必要があれば使っていこうと思います。ただほぼないとは思いますがアフィリエイトリンクにnoopener付くと
ASP側にアフィリエイトリンク改造とみなされる可能性もゼロとは
言いかねないので個人的には手動でつけていこうと考えております。以上ではありますが他、過不足あればご指摘願えれば幸いです。
何卒よろしくお願い申し上げます。 -
2019年2月27日 9:52 PM #61394
わいひらキーマスター返信は、あくまで一般論なので、好きな設定で良いかと思います。
一応、Simplicityはnoreferrerだけを取り除くようにしました。
//強制付与されるnoreferrer削除 add_filter( 'wp_targeted_link_rel', 'wp_targeted_link_rel_custom', 10, 2 ); if ( !function_exists( 'wp_targeted_link_rel_custom' ) ): function wp_targeted_link_rel_custom( $rel_value, $link_html ){ $rel_value = str_replace(' noreferrer', '', $rel_value); return $rel_value; } endif; -
2019年2月27日 9:54 PM #61395
わいひらキーマスターSimplicityを最新版の2.7.5にすると、処理が上書きされてしまう可能性があるので、処理の優先度を下げておくと良いかもしれません。
add_filter( 'wp_targeted_link_rel', 'no_wp_targeted_link_rel', 11, 2 ); -
2019年2月27日 11:48 PM #61396
きく
ゲストわいひら様
お世話になっております。きくです。
ご要望聞いてくださり誠に感謝いたします!Simplicity最新バージョンにして処理の優先度も下げたところ
問題なく動くこと確認いたしました。またこの度は長々と付き合って下さり申し訳ございません。
また何かありましたらよろしくお願い致します。
-
-
投稿者投稿
- トピック「WordPress 5.1のnoopener noreferrer強制付与問題につきまして」には新しい返信をつけることはできません。