<?xml version="1.0" encoding="UTF-8" ?><rdf:RDF 
  xmlns="http://purl.org/rss/1.0/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xml:lang="ja">
  <channel rdf:about="http://w.atwiki.jp/searchcustom/">
    <title>検索CGI改造メモ</title>
    <link>http://w.atwiki.jp/searchcustom/</link>
    <atom:link href="https://w.atwiki.jp/searchcustom/rss10.xml" rel="self" type="application/rss+xml" />
    <atom:link rel="hub" href="https://pubsubhubbub.appspot.com" />
    <description>検索CGI改造メモ</description>

    <dc:language>ja</dc:language>
    <dc:date>2008-12-20T23:12:36+09:00</dc:date>
    <utime>1229782356</utime>

    <items>
      <rdf:Seq>
                <rdf:li rdf:resource="https://w.atwiki.jp/searchcustom/pages/26.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/searchcustom/pages/25.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/searchcustom/pages/22.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/searchcustom/pages/20.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/searchcustom/pages/19.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/searchcustom/pages/18.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/searchcustom/pages/16.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/searchcustom/pages/15.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/searchcustom/pages/14.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/searchcustom/pages/13.html" />
              </rdf:Seq>
    </items>
	
		
    
  </channel>
    <item rdf:about="https://w.atwiki.jp/searchcustom/pages/26.html">
    <title>注意/注意事項</title>
    <link>https://w.atwiki.jp/searchcustom/pages/26.html</link>
    <description>
      &amp;topicpath()
**注意
- 未改造スクリプトと実際稼働させているものと見比べて抜粋しているメモ書きです。
-&amp;u(){実際に未改造の物へ組み込んで動作確認してません。} 
エラーになるかもしれません。
エラーになったらできればwikiの方も修正しておいてください。

- &amp;bold(){かならずローカルでテストしてからサーバーにアップロードしてください。}



----
&amp;topicpath()    </description>
    <dc:date>2008-12-20T23:12:36+09:00</dc:date>
    <utime>1229782356</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/searchcustom/pages/25.html">
    <title>PowerSearch改造/検索結果表示</title>
    <link>https://w.atwiki.jp/searchcustom/pages/25.html</link>
    <description>
      &amp;topicpath()

#contents

**登録カテゴリ表示
検索結果に登録しているカテゴリ一覧をリンク表示する。
- &#039;&#039;ps_search.cgi&#039;&#039;　704行付近（sub siteindicate）
$書き出しの直前に追加
#aa(blockquote){{{## カテゴリ表示【追加】
	$catgo = &quot; &quot;;
	@catg = split /&lt;c&gt;/, $y2[11];
	$size = @catg;
	for ( $i = 1 ; $i &lt;= $size ; $i++ ) {
		$catgo .=&quot;/ &lt;a href=\&quot;ps_search.cgi?act=cat&amp;cat=$catg[$i]\&quot;&gt;$category{\&quot;$catg[$i]\&quot;}&lt;/a&gt; &quot;;
	}
##}}}
表示したい場所に
&gt;$catgo
と記入。

- 下記をローカル変数にしておくと少しはマシかもしれない。
&gt;$catgo,$siterenew,$size
&gt;@catg
#right(){{
&amp;link_up(▲)
}}

**バナー欄空欄の時特定画像表示
- &#039;&#039;ps_search.cgi&#039;&#039;　684行付近（sub siteindicate）
#aa(blockquote){{{if (($y2[6] eq &quot;&quot;) || ($bannerreg == 0)){
		$banner = &quot;&quot;;
		}
}}}
差し替え
#aa(blockquote){{{if ($bannerreg == 0){
		$banner = &quot;&quot;;
		}
elsif(($y2[6] eq &quot;&quot;) &amp;&amp; ($bannerreg != 0)){
		$banner = &quot;&lt;a href=\&quot;$siteurl\&quot; target=\&quot;$linktarget\&quot; title=\&quot;$y2[9]様\&quot;&gt;&lt;img src=\&quot;【画像のパス】\&quot; width=\&quot;【画像サイズ】\&quot; height=\&quot;【画像サイズ】\&quot; border=\&quot;0\&quot;&gt;&lt;/a&gt;&quot;;
}
}}}
※この時点でバナーにもリンク付けちゃってますので、初期のようにリンクなしにしたいときは外してください。
#right(){{
&amp;link_up(▲)    </description>
    <dc:date>2008-12-20T23:03:44+09:00</dc:date>
    <utime>1229781824</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/searchcustom/pages/22.html">
    <title>PowerSearch改造/検索機能</title>
    <link>https://w.atwiki.jp/searchcustom/pages/22.html</link>
    <description>
      &amp;topicpath()

#contents

**特定マーク・特定カテゴリを選択していると更新サイトリストに出ない
「特定マーク」を選択している場合で解説。
「特定カテゴリ」でやりたい時は、同じように正規表現などで条件付けしてやればできます。

例）mark0 がついているサイトのみ更新サイト一覧に出す
- &#039;&#039;ps_search.cgi&#039;&#039;　153行付近（sub new）
while 処理の中に下記条件文を追加
#aa(blockquote){{{if ($_ =~/^0/){
	$totalct++;
	push(@site,$_) if ($totalct &gt;= $startnum) &amp;&amp; ($totalct &lt;= $endnum);
	}
}}}
#right(){{
&amp;link_up(▲)
}}

**パワーモード：カテゴリのand/or選択
複数カテゴリ選択したときに、カテゴリ同士を「and」「or」どちらで検索するか選べるようにする。
- &#039;&#039;ps_search.cgi&#039;&#039;　388行付近（sub powersearch）
「#カテゴリーチェック」とコメントアウトされている部分を書き換える。
#aa(blockquote){{{if($andor == 1){
		$flag = 0;
		foreach $data(@cat){
			  if (rindex($_,$data) != -1){
				$flag = 1;
				}else{
				$flag = 0;
				last;
				}
		}
		next if !($flag);
	}else{
		$flag = 0;
		foreach $data(@cat){
			if (index($_,$data) != -1){
				$flag = 1;
				last;
				}
		}
		next if !($flag);
	}
}}}
- &#039;&#039;ps_search.cgi&#039;&#039;　58行付近
#aa(blockquote){{{foreach $i (0 .. $#contents) {
･･･
}
}}}
カッコ内のどこかに追加
&gt;$andor = $text     </description>
    <dc:date>2009-01-12T19:38:42+09:00</dc:date>
    <utime>1231756722</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/searchcustom/pages/20.html">
    <title>PowerSearch改造/データチェック</title>
    <link>https://w.atwiki.jp/searchcustom/pages/20.html</link>
    <description>
      &amp;topicpath()

#contents

**バナーURLに特定のワードが入っていると「banner.拡張子」以外エラー
禁止URLをそのままコピーでできます。
- &#039;&#039;ps_prf.cgi&#039;&#039;　184行付近
「#登録を拒否するURL」の下辺りに追加
#aa(blockquote){{{#登録を拒否するURL（バナー）
# 指定した単語がバナーURLに入っていた場合、エラー画面に移行
@denyurlb = (&quot;fc2&quot;,&quot;at-ninja.jp&quot;);
}}}

- &#039;&#039;ps_user.cgi&#039;&#039;　480行付近（sub datacheck）
↓追加する
#aa(blockquote){{{foreach(@denyurlb){
	if (($sitebanner =~ /$_/i)&amp;&amp;($sitebanner!~ /banner/)){
		&amp;error(&quot;このバナーURLは登録できません。&quot;);
		}
	}
}}}
場所（483行付近）この後に追加
#aa(blockquote){{{foreach(@denyurl){
（略）
	}
}}}

#right(){{
&amp;link_up(▲)
}}








----
&amp;topicpath()    </description>
    <dc:date>2008-12-18T00:01:01+09:00</dc:date>
    <utime>1229526061</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/searchcustom/pages/19.html">
    <title>PowerSearch改造/登録修正画面</title>
    <link>https://w.atwiki.jp/searchcustom/pages/19.html</link>
    <description>
      &amp;topicpath()

#contents

** カテゴリ選択部分（複数select化）
かなり無理矢理
- &#039;&#039;ps_user.cgi&#039;&#039;　56行目
&gt;push(@sitecat,$text) if $key eq &#039;sitecat&#039;;
この行の上に↓追加
#aa(blockquote){{{for($i=0;$i&lt;$maxcat;$i++){
  my $name = &quot;sitecat&quot;.$i;
	if($text){push(@sitecat,$text) if $key eq $name;}
  }
}}}


- &#039;&#039;ps_user.cgi&#039;&#039;　292行目（sub change1）
#aa(blockquote){{{foreach(@y2){$z1{$_}=1;}
foreach (sort {$a cmp $b;} keys %category){
	$category.=&quot;&lt;option value=\&quot;$_\&quot;&quot;.($z1{$_}?&quot; selected&quot;:&quot;&quot;).&quot;&gt;&quot;.&amp;linkmake($_,1).&quot;\n&quot;;
	}
$category=&quot;&lt;select name=\&quot;sitecat\&quot; size=10&quot;.(($maxcat-1)?&quot; multiple&quot;:&quot;&quot;).&quot;&gt;$category&lt;/select&gt;\n&quot;;
}}}
↓と差し替え
#aa(blockquote){{{##カテゴリ複数行
for($i=0;$i&lt;$maxcat;$i++){
$category.=&quot;&lt;select name=\&quot;sitecat&quot;.$i.&quot;\&quot; size=1&gt;&lt;option value=\&quot;\&quot;&gt;----&lt;/option&gt;\n&quot;;
foreach (sort {$a cmp $b;} keys %category){
	if($_ eq $y2[$i]){$category.=&quot;&lt;option value=\&quot;$_\&quot; selected&gt;&quot;.&amp;linkmake($_,1).&quot;&lt;/option&gt;\n&quot;;}
	else{$category.=&quot;&lt;option value=\&quot;$_\&quot;&gt;&quot;.&amp;linkmake($_,1).&quot;&lt;/option&gt;\n&quot;;}
	}
$category.=&quot;&lt;/select&gt;&lt;b    </description>
    <dc:date>2008-12-18T00:01:33+09:00</dc:date>
    <utime>1229526093</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/searchcustom/pages/18.html">
    <title>PowerSearch改造/管理機能</title>
    <link>https://w.atwiki.jp/searchcustom/pages/18.html</link>
    <description>
      &amp;topicpath()
#contents

** パスワード自動再発行
登録時のメールアドレスを入力すると、登録メールアドレスにパスワードが自動発行されます。
ここでは、情報更新時にログインする画面に設置しています。
- &#039;&#039;ps_user.cgi&#039;&#039;　74行目
&amp;font(red){追加部分}
&gt;&amp;font(red){elsif ($act eq &quot;repass&quot;){&amp;repass;}}
&gt;elsif ($act eq &quot;repass1&quot;){&amp;repass1;}

- &#039;&#039;ps_user.cgi&#039;&#039;　417行付近（sub check）
↓を追加
#aa(blockquote){{{パスワード再発行&lt;br&gt;
&lt;form method=&quot;post&quot; action=&quot;./ps_user.cgi&quot;&gt;
登録メールアドレス &lt;input type=&quot;text&quot; name=&quot;cpass&quot; size=&quot;25&quot;&gt;
&lt;input type=&quot;submit&quot; value=&quot;再発行&quot;&gt;
&lt;input type=&quot;hidden&quot; name=&quot;act&quot; value=&quot;repass&quot;&gt;
&lt;input type=&quot;hidden&quot; name=&quot;curl&quot; value=&quot;$url&quot;&gt;
&lt;/form&gt;
}}}
追加場所
#blockquote(){{$message = &lt;&lt;EOD;
&lt;b&gt;$site[4]&lt;/b&gt;の情報変更・削除を行います。&lt;br&gt;
&lt;form method=&quot;post&quot; action=&quot;./ps_user.cgi&quot;&gt;
&lt;input type=&quot;radio&quot; name=&quot;cman&quot; value=&quot;0&quot; checked&gt;登録者
&lt;input type=&quot;radio&quot; name=&quot;cman&quot; value=&quot;1&quot;&gt;管理人&lt;br&gt;
パスワード &lt;input type=&quot;password&quot; name=&quot;cpass&quot; size=9 maxlength=8&gt;
&lt;input type=&quot;submit&quot; value=&quot;認証&quot;&gt;
&lt;input type=&quot;hidden&quot; name=&quot;act&quot; value=&quot;change1&quot;&gt;
&lt;input type=&quot;hidden&quot; name=&quot;curl&quot; value=&quot;$url&quot;&gt;
&lt;/form&gt;
    </description>
    <dc:date>2008-12-18T00:01:12+09:00</dc:date>
    <utime>1229526072</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/searchcustom/pages/16.html">
    <title>PowerSearch改造</title>
    <link>https://w.atwiki.jp/searchcustom/pages/16.html</link>
    <description>
      &amp;topicpath()
*PowerSearch改造
未改造スクリプトと実際稼働させているものと見比べて抜粋。
&amp;u(){実際に未改造の物へ組み込んで動作確認してません。}
動かなかったらツッコミ・修正よろしくお願いします。

#ls(注意)

#ls2(PowerSearch改造,title)


----
&amp;topicpath()    </description>
    <dc:date>2008-12-20T22:46:08+09:00</dc:date>
    <utime>1229780768</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/searchcustom/pages/15.html">
    <title>コメント</title>
    <link>https://w.atwiki.jp/searchcustom/pages/15.html</link>
    <description>
      &amp;topicpath()
質問他
何かあればここにどうぞ。

#comment(title_name=名前,title_msg=コメント,nsize=20,size=50,vsize=5,below)
- 素人改造で申し訳ないです。 &amp;br()CCSEARCHのことは知ってます。中身みたことないですがなかなか良さそうですね。 &amp;br()The Roomさん閉鎖とのこと…。長く利用させてもらってましたので残念ですね。 &amp;br()跡地へリンクさせていただこうと思います。  -- 管理  (2009-12-01 18:27:44)
- The Roomさんが閉鎖決定ということですが、残念ですね・・・。 &amp;br() &amp;br()まだまだ使っていきたいと思っていますが、こちらのサイトはとても参考になりました！ &amp;br()「バナー欄空欄なら特定画像を表示」「登録カテゴリを表示」を早速導入させて頂きました。 &amp;br()とても楽になりました！ありがとうございます。 &amp;br() &amp;br()ところで・・・ &amp;br()http://ccr.mydisk.jp/ &amp;br()こちらで、Yomi-SearchとPower Searchのいいとこどりといった感じのスクリプトが公開されています。 &amp;br()何か改造のヒントになる部分があればいいのですが…  -- 要  (2009-11-23 00:03:58)
- お忙しいところ申し訳ありませんが、登録カテゴリ表示 &amp;br()（yomiのようなカテゴリへのリンクが貼られる形式のものですか？）と &amp;br()バナー欄空欄時の特定画像表示の改造方法をお願いします。 &amp;br()wiki立ち上げありがとうございました！  -- ななか  (2008-12-20 09:53:10)
- てすと  -- てすと  (2008-12-17 20:04:40)    </description>
    <dc:date>2009-12-01T18:27:44+09:00</dc:date>
    <utime>1259659664</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/searchcustom/pages/14.html">
    <title>PowerSearch改造項目一覧</title>
    <link>https://w.atwiki.jp/searchcustom/pages/14.html</link>
    <description>
      &amp;topicpath()

&amp;date()追加

wiki作った人が実際に稼動させている改造版の機能を羅列してみた。
負荷とか難しいことは考えていないのであしからず。
特定部分をそのままコピーでできるものもかなりあります。
途中までやって放置したのもあります。難しいことはやってません。
思い出せないのとか細かくなるので書き出せないものもあります。
思い出したら随時追加
ここに書いた機能の解説は全部はしないとおもいます。

いたる所を触ってしまったことと省いた機能などもあり、配布されているものと照らし合わせるのがかなり手間なのでやる気あるときにメモ化していきます。
実物が見たいとか、知りたい部分あったら連絡してください。


****結果表示
- 検索ワードに対応するカテゴリを一覧表示する。
-- 検索ワードのand/or/not対応済
- [[登録カテゴリ表示&gt;PowerSearch改造/検索結果表示]]
-- 特定カテゴリは表示しないなども可能です。
- URL表示
- 情報バー
--「更新日時で絞り込み（何日以内）」と「表示件数」に変更。説明on/offは撤去。
- [[バナー欄空欄なら特定画像を表示&gt;PowerSearch改造/検索結果表示]]

****検索機能
- 検索ワードに対応するカテゴリを一覧表示する。
-- 検索ワードのand/or/not対応済
- パワーモード時
--カテゴリ選択無しだと全カテゴリから検索（かなり無理矢理）
--[[カテゴリand/or検索選択&gt;PowerSearch改造/検索機能]]
- 新着順に全件一覧
- [[特定マーク・特定カテゴリを選択していると更新サイトリストに出ない&gt;PowerSearch改造/データチェック]]


****登録・修正
- 下位カテゴリ選択→自動的に上位カテゴリも選択。
- 同じ日に修正したときはデータの順番が上がらない。
- 修正の時も管理人コメント送れる（管理画面でも確認可）
- カテゴリ選択形式
-- [[カテゴリ選択（複数select化）&gt;PowerSearch改造/登録修正画面]]：selectが選択数だけ並ぶ形。
--ﾃﾞﾌｫﾙﾄと同じselect形式で任意の場所で複数に分割（カテゴリ数が多い時に）
    </description>
    <dc:date>2009-01-21T07:16:25+09:00</dc:date>
    <utime>1232489785</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/searchcustom/pages/13.html">
    <title>トップページ</title>
    <link>https://w.atwiki.jp/searchcustom/pages/13.html</link>
    <description>
      検索CGIの改造メモ。


改造内容を載せる予定でwikiにしていますが突然消えたらごめんなさい。 



----
参考までに施した改造一覧　[[PowerSearch改造項目一覧]]
- 負荷とか記述のスマートさとかは考えてません。
- 素人改造です
- （2009/03/10）需要も微妙だとおもいますので今後は要望がきた改造だけ追記していきます。
----
&amp;link_contact()

&amp;topicpath()
&amp;counter(total, page=トップページ)    </description>
    <dc:date>2009-03-10T19:39:49+09:00</dc:date>
    <utime>1236681589</utime>
  </item>
  </rdf:RDF>
