1

こんにちは、検索クエリから取得した結果を表示するために、zend フレームワークを使用してウィキペディア API を使用する php ページを取得しました。現時点では、記事のタイトルとその抜粋が表示されます。画像も表示できるようにしたいです。この件についてさらにアドバイスをお願いします。ありがとう。

以下は私のコードです:(qは検索ボックスに入力されたものの値です)

<?php
// if form submitted
if (isset($_POST['q'])) {
    // load Zend classes
    require_once 'Zend/Loader.php';
    Zend_Loader::loadClass('Zend_Rest_Client');
    try {
        // initialize REST client
        $wikipedia = new Zend_Rest_Client('http://en.wikipedia.org/w/api.php');
        // set query parameters
        $wikipedia->action('query');
        $wikipedia->list('search');
        $wikipedia->srwhat('text');
        $wikipedia->format('xml');
        $wikipedia->srsearch($_POST['q']);
        // perform request
        // iterate over XML result set
        $result = $wikipedia->get();
    }
    catch (Exception $e) {
        die('ERROR: ' . $e->getMessage());
    }
 ?>

 <h2>Search results for '<?php echo $_POST['q']; ?>'</h2>
    <ol>
<?php foreach ($result->query->search->p as $r): ?>
<li><a href="http://www.wikipedia.org/wiki/
<?php echo $r['title']; ?>">
<?php echo $r['title']; ?></a> <br/>
<small><?php echo $r['snippet']; ?></small></li>
<?php endforeach; ?>
</ol>
<?php }?>
4

2 に答える 2

0

私の知る限り、本当に良い方法はありません。生成された HTML を取得し、適切なサイズの最初の画像を見つけて表示できます (画像名がわかれば、imageinfo APIを使用して、独自の画像タグで使用できる URL を取得できます)。

于 2012-04-19T21:16:56.090 に答える