1

ウェブサイトに検索バーを追加したいのですが、私のサイトはコア PHP で作成されています。

サイトの一部のセクションには静的ページがあり、一部のセクションには動的ページがあります。

  1. 私の開発者は、静的ページで機能するカスタマイズされた検索バーを PHP で作成することはお勧めできないと言っています。フォルダー内検索を行うため、遅すぎるためです。彼によると、カスタマイズされた検索バーは動的ページでのみ最適に機能するため、Google API を実装する必要があります。

  2. Google API 検索ボックスの作成に興味がなかったのはなぜですか? 開発者がデザインをカスタマイズできず、標準のボックスがサイトのデザインと調和していなかったためです。

いずれかのポイントを実行する方法に関する提案またはアドバイス。

4

4 に答える 4

1
  1. 彼が正しいのは本当に遅いでしょう。しかし、適切なキャッシング システムを使用すれば、それをキャッチすることができます。

  2. Google 検索バーは、http ://www.elitepvpers.com/forum/ のように少しカスタマイズできます が、いくつかの優れた機能と Google のわずかなブーストを提供します。

于 2014-11-25T07:59:43.330 に答える
0

クライアントが開発者を信頼しないのはなぜですか? 彼は絶対に正しい。

  1. 静的ページを動的に検索するには、ファイル システムを検索する必要がありますが、これは非常に低速です (ただし、キャッシュによって防ぐことができます)。

  2. Google 検索バーは実際にはカスタマイズできません。それは「彼ができなかった」からではなく、Google によって制限されているからです。あなたは彼らの製品を使用していますか?あなたは彼らのブランドを手に入れます。それはそれと同じくらい簡単です。

  3. PHP を使用すると、動的な Web サイトを作成できます。あなたはそれを使う必要があります。コンテンツをデータベースに保存すると、全文検索の利点が得られます。これは素晴らしいことです。

  4. 非常に単純な Web サイトがある場合は、静的コンテンツを含む XML (または好みの形式) を設定し、それを実際のページの URL にリンクすることを検討してください。たとえば、次のようになります。

XML ファイル

<?xml version="1.0"?>
<pages>
    <page>
        <url>http://google.com</url>
        <title>Some title</title>
        <content>
            The quick brown fox jumps over the lazy dog
        </content>
    </page>

    <page>
        <url>http://yahoo.com</url>
        <title>Ohai Catz</title>
        <content>
            The quick Cat kitten cat cat
        </content>
    </page>
</pages>

サンプル PHP

<?php

// String to search for
$searchString = 'Cat';

$xml = simplexml_load_file('staticpages.xml');

$pageMatches = [];

foreach( $xml->page AS $page )
{
    // Check if the keyword exists in either the title or the content 
    if( stristr($page->content, $searchString) !== false || stristr($page->title, $searchString) !== false )
    {
        $pageMatches[] = $page;
    }
}
?>

<?php echo $searchString ?> has been found on the following pages: <br>

<?php foreach( $pageMatches AS $match ): ?>
    <a href="<?php echo $match->url ?>"><?php echo $match->url ?></a><br>
<?php endforeach ?>

出力

Cat has been found on the following pages: 
http://yahoo.com

そのアプローチの利点:

  • データベースなし
  • 少し調整するだけで、サイトのコンテンツを XML から表示できるようになり、データの中心的なソースができました。
  • タグやキーワードなどの追加情報を XML に追加して、検索をより正確にすることができます。

ここで、効率的な検索のためにこの方法をすぐに失格にする大きな欠点があります。

  • 検索アルゴリズムを実装する必要があります。

でシミュレートしましたstristr()使用可能な結果の検索が必要な場合は、多くの作業と労力を費やす必要があります。インターネットでいくつかのアルゴリズムに出くわすかもしれません。しかし、検索アルゴリズムはそれ自体が科学です。Google は何の理由もなく数十億ドル規模の企業ではありません。心に留めておきます

于 2014-11-25T08:21:07.710 に答える