wordpress超連結另開新頁?
Dreamylibra 2011.06.05
我發現我貼在我家的幾個超連結按下去不會另開新頁可是你這裡的會耶,
不知道Ally有改哪裡嗎? 還是每次都要用到語法才行?
Dreamylibra 2011.06.05

我發現我貼在我家的幾個超連結按下去不會另開新頁可是你這裡的會耶,
不知道Ally有改哪裡嗎? 還是每次都要用到語法才行?
針對 Comments,我是直接修改程式:
1. 開啟 wp-includes/formatting.php
2. 找到以下 function:
function _make_web_ftp_clickable_cb($matches) {
$ret = '';
$dest = $matches[2];
$dest = 'http://' . $dest;
$dest = esc_url($dest);
if ( empty($dest) )
return $matches[0];
// removed trailing [.,;:)] from URL
if ( in_array( substr($dest, -1), array('.', ',', ';', ':', ')') ) === true ) {
$ret = substr($dest, -1);
$dest = substr($dest, 0, strlen($dest)-1);
}
return $matches[1] . "<a href=\"$dest\" rel=\"nofollow\">$dest</a>$ret";
}
3. 修改紅色的程式碼成為如下寫法:
return $matches[1] . "<a href=\"$dest\" target=\"_blank\">$dest</a>$ret";
至於針對 Post,我用的 2.9.2 在正文裡面寫網址根本不會自動產生連結效果,我是加外掛解決。如果妳的正文狀況跟我一樣,就把這外掛拿回去用吧:sem-autolink-uri
這外掛雖然 folder 名稱叫做 sem-autolink-uri,但安裝好後在後台看到的名字是 Autolink URI。
另外,這外掛的原作者網站是 http://www.semiologic.com/software/autolink-uri/ ,但他只有寫自動產生連結效果,沒有寫 target="_blank",所以妳還是拿我上面提供的那份比較好,我有將之加註 target="_blank"。
我的post應該是會自動開新視窗, 可是回覆不會
這兩天有時間我來改一下, 謝謝Ally ^_^
我的wp每次都是馬上跟著升級所以都已經是3.1.3了呢,
舊的版本有比較好用嗎?
改好了可是不見其效?
我發現一直開新視窗好像也不太好,逛完ally家要關好幾個視窗...^^
下午電腦自動關機, 關機前畫面停在Ally家
剛剛電腦打開我正在做其他事, 眼角餘光掃了一下畫面嚇了我一跳
黑黑的螢幕, 一大排白白的字外加幾個紅色的字
結果愣了幾秒...>"<
什麼黑黑白白紅紅?所以天秤妳到底是試了哪個修改?針對 Comment 的?還是針對 Post 的?
無效的話妳就要去搜尋所有的程式檔案,因為回覆的連結都會被自動加上 rel="nofollow",所以就用 nofollow 當關鍵字搜尋,找出所有的 rel="nofollow",通通改成 target="_blank"。
跳新頁的問題確實傷腦筋。若在同一網站內,當然不要跳新視窗比較合理,但是很多文章都是播歌的,如還連接其他文就覺得跳新視窗比較好,才不會影響原頁面的播放。所以就隨便啦,有時會跳新頁,有時不會,沒個準。
我是針對回覆做修改而已, 只改了wp-includes/formatting.php
有時間再來看看其他檔案, 這幾天超忙的..先謝謝, 改了不行再來求助 ^^
那天打開電腦畫面就是你家這頁, 黑黑的背景加上滿滿白白色的字
中間還有兩句紅色的修改語法, 我一時以為自己電腦中毒了啦... XD
不然就用上次給 flower 的那段語法。那語法是「事後修改」型,既然是用人家提供的 blog 服務,只好這樣事後動手腳。若妳從源頭修改還不見成效,也只能改走這條路了,反正有效果就好。
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js'/>
<script type="text/javascript">
$(document).ready(function(){
$('A[rel="nofollow"]').each(function(){
$(this).attr('target', '_blank');
});
});
</script>