2012-02-08 19 views
0

私は2つのwordpressプラグインを統合しています。私がしようとしているのは、このコード<?php DisplayStars(get_the_ID()); ?>を別のプラグインの機能に追加することです。私は$html = '<?php DisplayStars(get_the_ID()); ?>';を試しましたが、PHPはエラーを表示します。ご協力いただきありがとうございます。関数内でPHPスクリプトを呼び出して返す

function wpbusdirman_post_excerpt($count) 
{ 
    $wpbusdirman_gpid=wpbusdirman_gpid(); 
    $wpbusdirman_permalink=get_permalink($wpbusdirman_gpid); 
    $html = ''; 
    $html .= '<div id="wpbdmlistings"'; 
    $isasticky = get_post_meta(get_the_ID(),'sticky'); 
    if(isset($isasticky) && !empty($isasticky)) 
    { 
     $isasticky=$isasticky[0]; 
    } 
    if(isset($isasticky) && ($isasticky == 'approved')) 
    { 
     if($count&1) 
     { 
      $html .= ' class="wpbdmoddsticky"'; 
     } 
     else 
     { 
      $html .= ' class="wpbdmevensticky"'; 
     } 
    } 
    else 
    { 
     if($count&1) 
     { 
      $html .= ' class="wpbdmodd"'; 
     } 
     else 
     { 
      $html .= ' class="wpbdmeven"'; 
     } 
    } 
    $html .='><div class="listingthumbnail">' . wpbusdirman_display_the_thumbnail() . '</div><div class="listingdetails">'; 
    $html .= wpbusdirman_display_the_listing_fields(); 
    $html .= wpbusdirman_view_edit_delete_listing_button(); 
    $html .= '</div><div style="clear:both;"></div></div>'; 
    return $html; 
} 
+1

実際には何が起こっていますか? –

+0

私はあなたのコードを再フォーマットしました。次にコードを投稿するときには、より良いフォーマットを試してください。ありがとうございます:-) – Flukey

+0

あなたのコードにはどこでも 'DisplayStars'は表示されません。 –

答えて

0

作業しているコードベースは、PHPです。追加しているコードはPHPです。つまり、html内に追加する必要はありませんが、単に関数を呼び出すだけです。 (あなたはそれがこのファイルにない場合は動作するように機能するために、ファイルの先頭にincludeが必要な場合があります)

$html .= DisplayStars(get_the_ID()); 

は、HTMLにテキストを追加するための呼び出しに必要なすべてでなければなりません。

+0

あなたの答えをありがとう、それは動作します! – user1177437

0

あなたはこのような何かするとき:引用符の間にあるものについて

<?php return "<?php echo('foo'); ?>"; ?> 

が続いてPHPを知らない(またはケア) - それは限り、それは知っているとして、テキストのみだが。ただし、PHPがevalを使用して文字列を解釈するために取得することができます。

<?php 
    $command = "echo('foo');"; 
    eval($command); 
?> 

これは、PHPは「foo」をプリントアウトするようになります。しかし、evalは危険です - note in the PHP manualを見てください。

関連する問題