Paroday

Paroday:ニュースやアニメのレビュー、FC2ブログのテンプレート・プラグインなどを配信しています。

もしかして Parody ではありませんか? yes

[仕様変更]検索結果ページから個別ページに移動すると広告が表示される

 検索ページから個別ページに広告表示を切り替えたようです。挿入箇所は記事の途中、追記の前(追記のない場合は記事下部)です。

検索ページから個別ページに移動すると広告表示

  1. 検索ページにアクセス : http://paro3day.blog4.fc2.com/?q=%B3%D8%B9%BB
  2. 検索ページから個別ページにアクセス

    more(続きを読む)や風の又三郎(記事タイトル/Permalink)をクリック

個別ページ

仕様

 検索キーワードに関連する広告が見つからなかったときは、個別ページに移動しても広告は表示されません。

 検索キーワードに関連する記事が見つからなくても、関連する広告が見つかれば、広告だけが検索ページに表示されます。

 このとき、広告の日付データが空のため、RDFのコメントアウトが適切に処理されず、「-->」が表示されてしまう不具合があります(この不具合は2010年3月12日までに修正済み)。

「広告」の検索結果ページ : http://paro3day.blog4.fc2.com/?q=%B9%AD%B9%F0

コメントアウト失敗

 広告が表示されずに、「1」という数値が強制挿入されることもあります。

コメントアウト失敗2

 1ヶ月広告のように年月日に「-(-)」を出力したり、検索キーワードに関連する記事が見つからない場合は広告も出力しないようにするなどの対処が必要です。


 テンプレート内に広告が出力されるのは、

http://paro3day.blog4.fc2.com/?q=keyword
http://paro3day.blog4.fc2.com/?template=templateName&q=keyword

 などのページにアクセスしたときのみです。例えば、次のようなURIではFC2ブログ広告ページになります。

http://paro3day.blog4.fc2.com/?share=27225&q=keyword

 携帯モードのFC2ブログ広告に比べれば、かわいいものかもしれませんが、出会い系サイトの広告はフィルタをかけた方がよいのではないかと思います。

検索結果ページ

広告を避ける方法

 検索ページの仕様は頻繁に変わっているのでご注意ください。

 広告をスタイルシートなどで非表示にしたり、スクリプトで取り除くのは確実に規約違反になるため、ページを進めることで広告を回避します。ページを進めることも規約違反に該当するかの問い合わせはしてみましたが、ダメともOKとも返信が来ていない状態です。一応問い合わせているので、何の連絡もなしに、一方的に何らかの措置が行われることはないと思いますが、使用は自己責任でお願いします。

 テンプレートのHTML編集で、head要素 <head> 内に以下のJavaScriptをいれます。referrerで動かない場合はcookie併用のコードを利用してください。

referrer(ver3.0)

 ABどちらかを選択します。

(A) blog-entry-no.html 個別ページに移動

<!--permanent_area--><script type="text/javascript"><!--
if(/^http:\/\/<%blog_id>\.blog(\d+)?\.fc2\.com\/\?q=/.test(document.referrer)){
 location.replace(location.href.replace(/#.*$/,''));
}
--></script><!--/permanent_area-->

 permanent_area変数は必須です。ないと抜け出せなくなることがあります。

 外部jsファイルや『Greasemonkey』でページを進めるには以下のコードを追加します(head要素に先のコードを追加した場合は必要ありません)。

if(/^http:\/\/\w+\.blog(\d+)?\.fc2\.com\/(\?no=\d+|blog-entry-\d+\.html)/.test(location.href)){
 if(/^http:\/\/\w+\.blog(\d+)?\.fc2\.com\/\?q=/.test(document.referrer)){
  location.replace(location.href.replace(/#.*$/,''));
 }
}

(B) blog-entry-no.html#more または ?no=#more 個別ページに移動

 追記位置への移動はできますが、アドレスが ?no や entry に変わってしまいます。どうしても追記位置へ移動したい場合はこちらを利用します。

<!--permanent_area--><script type="text/javascript"><!--
(function(h){
if(/^http:\/\/<%blog_id>\.blog(\d+)?\.fc2\.com\/\?q=/.test(document.referrer)){
 var j=(!/#.*$/.test(h))?h:(/entry-\d+\./.test(h))?h.replace(/blog-entry-(\d+)\.html/,'?no=$1'):h.replace(/\?no=(\d+)(#.*)/,'blog-entry-$1.html$2');
 location.replace(j);
}
}(location.href));
--></script><!--/permanent_area-->

 外部jsファイルや『Greasemonkey』でページを進めるには以下のコードを追加します。

(function(h){
if(/^http:\/\/\w+\.blog(\d+)?\.fc2\.com\/(\?no=\d+|blog-entry-\d+\.html)/.test(h)){
 if(/^http:\/\/\w+\.blog(\d+)?\.fc2\.com\/\?q=/.test(document.referrer)){
  var j=(!/#.*$/.test(h))?h:(/entry-\d+\./.test(h))?h.replace(/blog-entry-(\d+)\.html/,'?no=$1'):h.replace(/\?no=(\d+)(#.*)/,'blog-entry-$1.html$2');
  location.replace(j);
 }
}
}(location.href));
cookie併用(ver1.0)

 ABどちらかを選択します。

(A) blog-entry-no.html 個別ページに移動

<script type="text/javascript"><!--
<!--not_permanent_area-->
document.cookie='searchAd=<!--not_search_area-->0<!--/not_search_area--><!--search_area-->1<!--/search_area-->';
<!--/not_permanent_area-->
<!--permanent_area-->if(/^http:\/\/<%blog_id>\.blog(\d+)?\.fc2\.com\/\?q=/.test(document.referrer) || (!document.referrer&&/searchAd=1/.test(document.cookie))){
 document.cookie='searchAd=0';location.replace(location.href.replace(/#.*$/,''));
}
<!--/permanent_area-->--></script>

 permanent_area変数などは必須です。ないと抜け出せなくなることがあります。

 外部jsファイルや『Greasemonkey』でページを進めるには以下のコードを追加します(head要素に先のコードを追加した場合は必要ありません)。

(function(d){
if(/^http:\/\/\w+\.blog(\d+)?\.fc2\.com/.test(location.href)){
 if(!/\/(\?no=\d+|blog-entry-\d+\.html)/.test(location.href)){
  d.cookie='searchAd=0';
  if(/(\?|&)q=/.test(location.href)){d.cookie='searchAd=1';return;}
 }
 if(/^http:\/\/\w+\.blog(\d+)?\.fc2\.com\/\?q=/.test(d.referrer) || (!d.referrer&&/searchAd=1/.test(d.cookie))){
  d.cookie='searchAd=0';location.replace(location.href.replace(/#.*$/,''));
 }
}
}(document));

(B) blog-entry-no.html#more または ?no=#more 個別ページに移動

 追記位置への移動はできますが、アドレスが ?no や entry に変わってしまいます。どうしても追記位置へ移動したい場合はこちらを利用します。

<script type="text/javascript"><!--
(function(h){
<!--not_permanent_area-->
document.cookie='searchAd=<!--not_search_area-->0<!--/not_search_area--><!--search_area-->1<!--/search_area-->';
<!--/not_permanent_area-->
<!--permanent_area-->if(/^http:\/\/<%blog_id>\.blog(\d+)?\.fc2\.com\/\?q=/.test(document.referrer) || (!document.referrer&&/searchAd=1/.test(document.cookie))){
 document.cookie='searchAd=0';
 var j=(!/#.*$/.test(h))?h:(/entry-\d+\./.test(h))?h.replace(/blog-entry-(\d+)\.html/,'?no=$1'):h.replace(/\?no=(\d+)(#.*)/,'blog-entry-$1.html$2');
 location.replace(j);
}
<!--/permanent_area-->}(location.href));
--></script>

 外部jsファイルや『Greasemonkey』でページを進めるには以下のコードを追加します。

(function(d){
var h=location.href,j;
if(/^http:\/\/\w+\.blog(\d+)?\.fc2\.com/.test(h)){
 if(!/\/(\?no=\d+|blog-entry-\d+\.html)/.test(h)){
  d.cookie='searchAd=0';
  if(/(\?|&)q=/.test(h)){d.cookie='searchAd=1';return;}
 }
 if(/^http:\/\/\w+\.blog(\d+)?\.fc2\.com\/\?q=/.test(d.referrer) || (!d.referrer&&/searchAd=1/.test(d.cookie))){
  d.cookie='searchAd=0';
  j=(!/#.*$/.test(h))?h:(/entry-\d+\./.test(h))?h.replace(/blog-entry-(\d+)\.html/,'?no=$1'):h.replace(/\?no=(\d+)(#.*)/,'blog-entry-$1.html$2');
  location.replace(j);
 }
}
}(document));

修正

×検索ページから他のFC2ブログの個別ページに移動すると広告表示

 FC2ブログサイトにはもう一つ特典があります。※本特典は2010年2月26日に修正されました。2010年2月26日現在、他所のFC2ブログ経由では広告は表示されません。

  1. 検索ページにアクセス : http://paro3day.blog4.fc2.com/?q=%C5%B7%A4%CE%C0%EE
  2. 検索ページから他所のFC2ブログの個別ページにアクセス

    「paro2day - GreaseMonkeyの使い方」をクリック

 ブログ内だけでなく、外部サイトの paro2day.blog122.fc2.com でも広告は表示されます。

他人の個別ページ


  • 【更新履歴】
  • 2011 04-02 21:10 - 広告回避を更新。新サーバ(blog.fc2.com)でも一応動くように。
  • 2010 02-27 00:42 - 広告回避と修正を更新・追記
関連記事
  1. comment
  2. change 2010-02-26 00:09 No.407 #-URLhttp://fc2blogmanual.blog60.fc2.com/blog-entry-19.html

    >FC2ブログの仕様 FC2ブログでできること
    >テンプレート上の広告:テキスト広告のみ。色・サイズ・表示位置などとも任意に変更可

    これ書き換えといて。

  3. Yes 2010-02-26 00:20 No.408 #-URL

    それ広告じゃなくて「検索に広告入れたよ!」って告知なんだよXD

  4. We 2010-02-26 00:27 No.409 #-URL

    誰だ?
    広告なんて入れた奴は。
    お父さん怒らないから名乗り出なさい。

  5. Can 2010-03-03 00:47 No.410 #-URL

    おい、広告が増えてるぞ。

  6. Paroday 2010-03-03 01:08 No.411 #-URL

    あら、やだ。

  7. 迷い人 2011-03-31 16:00 No.599 #-URL

    『広告を避ける方法2.0』について。
    firefox(3.616ver)では、おそらく100%避けられるのですが、
    ie(8.0.7601.17514)では、50%くらしか避けられません。
    これは仕様なのでしょうか?
    対策があればご教授ください。

  8. Pdy 2011-04-02 21:24 No.602 #-URL

    8.0.7601はWindows7でしょうか。
    XPなので、同じIE8のバージョンでは確認できないと思われますが、こちらで検索結果ページを経由した個別ページを20回程度確認したところ、すべて広告はつきませんでした(個別ページはスクリプトを利用しない状態で広告が表示される検索ページ経由です)。

    スクリプトは何らかの原因によって、ブラウザの履歴(referrer)が正常に取得できない場合は機能しません。

    設置しても広告が表示される検索ページ経由の個別ページで
    アドレスバーに
    javascript:alert(document.referrer);
    と入れてエンターキーを押して表示されるダイアログに
    http://hoge.blog.fc2.com/?q=keyword
    と検索ページのアドレス(?q=keyword)が表示されるかどうかをご確認ください。
    検索ページが表示されていれば、スクリプトが機能していないことになります。

    こちらのIE8で再現できるページを実際に確認してみないことには、よくわかりません。
    cookieを併用するバージョンを作ってみたので、そちらもご確認ください。

  9. 迷い人 2011-04-03 19:52 No.603 #-URL

    8.0.7601はWindows7です。

    pcをディスク クリーンアップして、改めて確認したところ、
    ieでもおそらく100%避けられていました。
    どうやら私のpcに問題があったようです。

    お騒がせしてすみませんでした。

コメント

Icon ※必須 :
Pass  ※入力した英数字を識別コードとしてNoに表示(123→LkZag.iM)

トラックバック

http://paro2day.blog122.fc2.com/tb.php/528-b5193e57

  1. trackback