0

HTMLコードとPHPコードを含む混合文字列をエコーし​​ようとしていますが、試したすべてのことはうまくいきませんでした.

基本的にやりたいことは、次のコードを 3 回ループすることです。毎回名前に数字の増分を含む3つのdivを提供します。

このコードはワードプレスのテンプレートで使用されます。

エコーなしの私の通常のコードは次のとおりです。

<div id="gallery <?php $c; ?>">
  <?php query_posts('post_type=portfolio'); ?>
  <?php if(have_posts()) : ?>
    <?php while(have_posts()) : the_post(); ?>
      <?php if ( has_post_thumbnail() ) : ?>
        <a href="<?php the_permalink(); ?>" 
           title="<?php the_title_attribute(); ?>" >
           <?php the_post_thumbnail(); ?>
        </a>
      <?php endif; ?>
      <h1><?php the_title(); ?></h1>
      <a href="<?php the_permalink(); ?>" 
         title="<?php the_title_attribute(); ?>" > 
         <h2>View Project</h2>
      </a>
      <?php the_content() ?>
    <?php endwhile; ?>
  <?php endif; ?>
</div>

私はPHPにかなり慣れていないので、これを適切な方法でエコーする方法がわかりません。私のforループはすでにセットアップされています。

皆さんが私を助けてくれることを願っています。

よろしくDragon54

4

3 に答える 3

1

何かのようなもの:

for($i=1; $<=3; $++){
 echo '<div id="gallery gallery_'.$i.'">' . get_the_permalink() . '</div>';
}

トリックを実行する必要があります(http://php.net/manual/de/language.operators.string.phpを参照)

ただし、Wordpressヘルパー関数の中には、それ自体を直接印刷/エコーするものがあることに注意してください。ほとんどの場合、代わりに値を返すものが見つかります

http://codex.wordpress.org/Function_Reference/get_permalink(returns)と http://codex.wordpress.org/Function_Reference/the_permalink(prints)を参照して ください。

于 2012-06-24T16:51:17.293 に答える
0

連結について学んでください。PHP/HTMLをプログラミングする際には非常に重要です。次に、ニュースシステムがどのように設計されているかに応じて、そのブロックをforeachまたはある種のループ内に配置するだけです。

<?php
echo '<div id="gallery_'.$c.'">';
query_posts('post_type=portfolio');

while(have_posts()) {
    the_post();
    if ( has_post_thumbnail() ) { 
        echo '<a href="'.the_permalink().'" title="'.the_title_attribute();.'" '.the_post_thumbnail().'</a>';
    }
}

echo '.<h1>'.the_title().'</h1>
       <a href="'.the_permalink().'" title="'.the_title_attribute().'">link</a>
      </div>';
?>
于 2012-06-24T16:51:29.263 に答える
0

あなたはそれをする必要がありますecho

<div id="gallery_<?php echo $c; ?>">

また、ID内のスペースは許可されていないため、アンダースコアに切り替えました。

于 2012-06-24T16:52:11.350 に答える