0

WordPressのfunctions.phpにある[newscat= "1" num = "5"] Title[/news]という1つか2つのガイドからショートコードを作成しました。次のようにコーディングします。

   Create the callback function

    function recent_posts_function($atts, $content = null) {
       extract(shortcode_atts(array(
          'num' => 1,
          'id' => ''
       ), $atts));

       $return_string = '<h3>'.$content.'</h3>';
       $return_string .= '<div class="custom-recent-posts">';
       query_posts(array(
        'orderby' => 'date', 
        'order' => 'DESC' , 
        'showposts' => $num,
        'cat' => $id,
        ));
       if (have_posts()) :
          while (have_posts()) : the_post();
            $return_string .= '<div class="custom-recent-posts-post">';
            $return_string .= ''.the_post_thumbnail('news-thumbnail').'';
            $return_string .= '<h3><a href="'.get_permalink().'">'.get_the_title().'</a></h3>';
            $return_string .= '<p>'.get_the_date().'</p>';
            $return_string .= '<p>'.get_the_excerpt().' <a href="'.get_permalink().'">Les mer</a></p>';
            $return_string .= '</div>';
          endwhile;
       endif;
       $return_string .= '</div>';

       wp_reset_query();
       return $return_string;
    }

// Register the shortcode

function register_shortcodes(){
   add_shortcode('news', 'recent_posts_function');
}

問題は、コードの出力が正しくないことです。コンテナの上に画像を移動します。このようなもの(私のHTMLはもっときれいになることができることを私は知っています)。

<img width="248" height="100" src="http://localhost:8888/dhs/wp-content/uploads/2013/03/Diakonveien-18-bygg2-248x100.jpg" class="attachment-news-thumbnail wp-post-image" alt="Test Diakonveien-18-bygg" />
<img width="163" height="100" src="http://localhost:8888/dhs/wp-content/uploads/2013/03/large-test.jpg" class="attachment-news-thumbnail wp-post-image" alt="Test large-test" />

<h3>Nyheter</h3>
<div class="custom-recent-posts">
<div class="custom-recent-posts-post">
    <h3><a href="http://localhost:8888/dhs/for-ansatte-nyheit-test/">For ansatte nyheit test</a></h3>
    <p>22. mars 2013</p>
    <p>Content <a href="http://localhost:8888/dhs/for-ansatte-nyheit-test/">Les mer</a></p>
</div>
<div class="custom-recent-posts-post">
    <h3><a href="http://localhost:8888/dhs/nytt-innlegg-for-student-test/">Nytt innlegg for student test</a></h3>
    <p>21. mars 2013</p>
    <p><a href="http://localhost:8888/dhs/nytt-innlegg-for-student-test/">Les mer</a></p>
</div>

簡単な解決策はありますか、それともコードを再構築する必要がありますか?私はこれのためのプラグインがあることを知っています。だから私は正しい方向を指している誰かを求めています。

4

1 に答える 1

1

はサムネイルを返す代わりに出力するためget_the_post_thumbnail、を使用する必要があります。the_post_thumbnail

于 2013-03-22T14:19:02.040 に答える