-
投稿者投稿
-
2021年6月25日 11:37 PM #79292
【お使いの Snow Monkey のバージョン】
バージョン: 14.1.0
【お使いの Snow Monkey Blocks のバージョン】
バージョン 11.4.1
【お使いの Snow Monkey Editor のバージョン】
バージョン 5.0.6
【お使いのブラウザ】
Chrome
【当該サイトのURL】### 実現したいこと
サイト内検索の検索フォームの画像で検索されたものをクリックした時別タブで表示したいのですがどうすればいいでしょうか?### 発生している問題
検索結果の画像をクリックして表示された時、戻る方法がブラウザの戻るしかないので、改善したい### 試したこと
♥ 0いいねをした人: 居ません2021年6月26日 6:03 AM #792962021年6月26日 10:21 AM #79307ご返信ありがとうございます。
snow_monkey_template_part_render_template-parts/loop/entry-summary
こちらのファイルはどこにあるのでしょうか?♥ 0いいねをした人: 居ません2021年6月26日 11:37 AM #79311snow_monkey_template_part_render_template-parts/loop/entry-summary
こちらのファイルはどこにあるのでしょうか?ファイルは、テーマの
template-parts/loop/entry-summary
にありますが、フックでおこなうのがベターです。こちらのトピックを応用されれば実装可能かと思いますので、試してみてください。
♥ 0いいねをした人: 居ません2021年6月27日 12:03 PM #79396お世話になります。
記事拝見致しました。my-snow-monkey.php
に記事のようなコードを追加するということでしょうか?str_replaceでtarget=”_blank” rel=”noopener”がつくようにすれば良いと思います。
をどのようにコードに書けばいいでしょうか?
add_filter( 'snow_monkey_template_part_render_template-parts/loop/entry-summary', return str_replace( '</header><a>">', target="_blank" rel="noopener"がつくように );
♥ 0いいねをした人: 居ません2021年6月27日 2:34 PM #79405お試しいただけるようで良かったです。
snow_monkey_template_part_render
は、こちらや
こちら
で解説されているように、テンプレート内容を書き換えることのできるフィルターフックです。
snow_monkey_template_part_render_
以降のtemplate-parts/loop/entry-summary
は、下に記載したとおり、テーマ内の特定のテンプレートファイル(今回はentry-summary.php
)を指しています。テーマ「Snow Monkey」
snow-monkey └template-parts └loop └entry-summary.php
この
entry-summary.php
の<a href="<?php the_permalink(); ?>">
に、target="_blank" rel="noreferrer noopener"
を追加する方法になります。また、ご質問の見出し
サイト内検索の検索フォームの画像で検索されたものをクリックした時別タブで表示
とのことでしたので、検索結果ページ(
is_search()
)にのみ作用するようにします。
例えば、この検索結果ページ以下のコードをmy-snow-monkey.phpに追記することで、お望みの動作になるとは思います。
ただ、提示しておいて言うのも無責任ですが、適切なコードでないかもしれませんので、ご理解いただいたうえでお試しください。add_filter( 'snow_monkey_template_part_render_template-parts/loop/entry-summary', function( $html ) { if ( is_search() ) { // 検索結果ページのみ $html = str_replace( '<a', '<a target="_blank" rel="noreferrer noopener"', $html ); } return $html; } );
なお、ほかのページにある画像の拡大は、ソースコードを拝見したところ、Easy FancyBoxプラグインによるポップアップ形式になっているようなので、同じ動作をさせる場合には、上記コードの該当箇所を
$html = str_replace( '<a', '<a class="fancybox image"',
としてあげると同じ表現になるような気がします。
※こちらは未検証です。以上となりますが、まずは一度お試しください。
2021年6月27日 11:02 PM #79441お世話になります。
以下のように、追記したら別タブ表示になりました。
ありがとうございます。add_filter( 'snow_monkey_template_part_render_template-parts/loop/entry-summary', function( $html ) { if ( is_search() ) { // 検索結果ページのみ // $html = str_replace( // '<a', // '<a class="fancybox image"', $html = str_replace( '<a', '<a target="_blank" rel="noreferrer noopener"', $html ); } return $html; } );
2021年6月27日 11:07 PM #79443ご指摘の通り
ポップアップ形式にしたいと思っており、
以下のように書き換えたのですが、そのように反映されませんでした。
度々申し訳ございませんが、どのようにすればいいかご教授お願い致します。$html = str_replace( '<a', '<a target="_blank" rel="noreferrer noopener"',
↓
$html = str_replace( '<a', '<a class="fancybox image"',
♥ 0いいねをした人: 居ません2021年6月27日 11:25 PM #794472021年6月28日 9:52 PM #79556失礼致しました。
今回はありがとうございました。♥ 0いいねをした人: 居ません -
投稿者投稿
- トピック「サイト内検索の検索フォームの画像で検索されたものをクリックした時別タブで表示したいのですがどうすればいいでしょうか?」には新しい返信をつけることはできません。