wordpressで、記事リンクをクリックしたら別ウィンドウが開いて表示されるようするにはどうすればよいでしょうか?


昨日
http://q.hatena.ne.jp/1360182034
を質問し、この方法で記事一覧の表示が上手くできました。
<?php wp_get_archives("type=postbypost");?>
という記述を用いるという方法です。
ただ、リンクをクリックするとそのままリンク先に切り替わってしまうのですが、別ウィンドウが開いて表示されて欲しいと思っています。

どうぞよろしくお願い致します。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2013/02/09 02:14:04
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:a-kuma3 No.1

回答回数4971ベストアンサー獲得回数2153

ポイント100pt

ソースをちょっとだけ書き換えてあげればできます。
wp-includes/general-template.php にある wp_get_archives_link() を書き換えます。

WordPress 3.5.1 だと wp_get_archives_link() は、以下のようになっています。

function get_archives_link($url, $text, $format = 'html', $before = '', $after = '') {
    $text = wptexturize($text);
    $title_text = esc_attr($text);
    $url = esc_url($url);

    if ('link' == $format)
        $link_html = "\t<link rel='archives' title='$title_text' href='$url' />\n";
    elseif ('option' == $format)
        $link_html = "\t<option value='$url'>$before $text $after</option>\n";
    elseif ('html' == $format)
        $link_html = "\t<li>$before<a href='$url' title='$title_text'>$text</a>$after</li>\n";
    else // custom
        $link_html = "\t$before<a href='$url' title='$title_text'>$text</a>$after\n";

    $link_html = apply_filters( 'get_archives_link', $link_html );

    return $link_html;
}

真ん中くらいの、'html' == $format の次、A タグに target="_blank" を追加します。

    elseif ('html' == $format)
        $link_html = "\t<li>$before<a href='$url' target="_blank" title='$title_text'>$text</a>$after</li>\n";


参考にしたのは、↓です。
http://codex.wordpress.org/Function_Reference/wp_get_archives
http://core.trac.wordpress.org/browser/tags/3.5.1/wp-includes/general-template.php#L825

他2件のコメントを見る
id:miku1973

うまくいきましたーーー!

2013/02/09 02:13:55
id:a-kuma3

うかつな回答で、本当に申し訳ない (´・ω・`)

2013/02/09 02:18:24

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません