フォーラムへの返信

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • フォーラム: テーマ
    返信が含まれるトピック: ヘッダーに外部サイトの検索窓を設置したい
    トピック投稿者 askan

    (@askan)

    直前のリストタグのダブルコーテーションが抜けていたのが原因でした。
    おさがわせして申し訳ありませんでした。素早いご回答頂きありがとうございました。

    フォーラム: テーマ
    返信が含まれるトピック: ヘッダーに外部サイトの検索窓を設置したい
    トピック投稿者 askan

    (@askan)

    ご教授ありがとうございます。
    GETにしてみたんですが、動きませんでした。普通のHTMLファイルで試すとちゃんと動きます。
    検索をbuttonにして、submit(); としても動かず、コンソールでエラーが出てました。
    ボタンを押しても、target=”_blank”にしているにもかかわらず、うんともすんともなりません。

    <form accept-charset="UTF-8" name="opac" action="https://#/opac/opac_list.cgi" method="get" target="_blank">
    <input name="lang" value="0" type="hidden">
    <input name="smode" value="0" type="hidden">
    <input name="local" value="on" type="hidden">
    <input name="disp" value="1" type="hidden">
    <input name="kslist" value="000" type="hidden">
    <input name="kscode" value="000" type="hidden">
    <input name="selfcode" value="000" type="hidden">
    <input name="mkscode" value="000" type="hidden">
    <input name="kywd" size="20" placeholder="蔵書検索(OPAC)" type="text">
    <input value="検索" type="submit">
    
    </form>

    他のプラグインが邪魔しているのでしょうか?

    トピック投稿者 askan

    (@askan)

    ご指摘ありがとうございました。なるほど、setup_postdataを使ってセットすればよいのですね。
    最初のコードにsetup_postdataを追加した所、無事表示することができました。
    ありがとうございました。

    // ショートコード
    add_shortcode('list_posts', 'my_list_posts');
    function my_list_posts($atts) {
     // デフォルトテンプレート
      $template = '<h3 class="entry-title"><a href="%s" rel="bookmark">%s</a></h3>
      <div class="entry-summary clear">
    <a href="%s" rel="bookmark">%s</a>%s<a href="%s" rel="bookmark">→ 続きを読む</a>
    </div><!-- .entry-summary -->
    ';
      // 引数の処理
      extract(shortcode_atts(array(
        'template' => $template,
        'args'     => 'post_type=post&posts_per_page=10',
        ), $atts));
    
      $the_list = '';
    
      // 最新のポスト取得
      $postslist = get_posts($args);
      //$postslistにget_postsで取得したデータを入れる
     foreach ($postslist as $post) {
     //ひとつずつ取り出して繰り返し出力する
        setup_postdata( $post );
        $the_list .= sprintf(
          $template,
          esc_attr(get_permalink($post->ID)),
          esc_html($post->post_title),
          esc_attr(get_permalink($post->ID)),
          get_the_post_thumbnail($post->ID,array(160,160)),
          str_replace( "\n", "",get_the_excerpt()),
          esc_attr(get_permalink($post->ID))
          );
       wp_reset_postdata();
      }
      return $the_list;
    }

3件の返信を表示中 - 1 - 3件目 (全3件中)