2012-01-16 78 views
1

我不完全確定爲什麼這不起作用。但是這段代碼不起作用。我是否錯過了其中一個引號的轉義?

<?php 
foreach ($gallery_ids as $gallery) { 
    echo '<div class="tgallery" rel="'.$gallery['gid'].'"><?php echo do_shortcode("[nggallery id='.$gallery['gid'].']"); ?></div>'; 
} 
?> 

我猜測可能是我把錯誤的引號放在錯誤的地方。

所有部件seperately工作,如:

  1. 我可以顯示'gid'值與echo $gallery['gid']
  2. 我可以使div標籤似乎與適當的rel
  3. 我能做到,本身使<?php echo do_shortcode("[nggallery id=3]"); ?>工作。

我只是不能讓整個事情出現在一起。

+2

有什麼點放置'<? 'echo'語句中的PHP標籤? – 2012-01-16 14:22:39

回答

1

爲什麼你把<?php ?>放在你的echo裏面?

<?php 
foreach ($gallery_ids as $gallery) 
{ 
    echo '<div class="tgallery" rel="'.$gallery['gid'].'">'.do_shortcode('[nggallery id='.$gallery['gid'].']').'</div>'; 
} 
?> 
+1

這工作!謝謝! – Trip 2012-01-16 14:30:47

0

你已經 「在」 PHP的,所以你開始標記引起的問題:

<?php echo do_shortcode("[nggallery id='.$gallery['gid'].']"); ?> 

它應該是這樣的:

echo '<div class="tgallery" rel="'.$gallery['gid'].'">' . do_shortcode('[nggallery id='.$gallery['gid'].']') . '</div>'; 
2

你混插的PHP和HTML,將"<?php echo"放置在已有的php中。

<div class="tgallery" rel="<?php echo $gallery['gid'];?>"> 
<?php echo do_shortcode('[nggallery id="'.$gallery['gid'].'"]'); ?> 
</div> 
1

問題

任意選取字符串連接或打開/關閉PHP的HTML。你不能像上面所做的那樣結合兩者。

echo '<div class="tgallery" rel="'.$gallery['gid'].'"> 
     <?php echo do_shortcode("[nggallery id='.$gallery['gid'].']"); ?> 
     </div>'; 

代碼的第二線的上方不作爲<?php ... ?>之間的代碼將不被PHP,當它被包含在一個字符串解析的串內的歸屬。

解決方案

級聯

我有固定的代碼中使用以下連接:

foreach ($gallery_ids as $gallery) { 
    $shortcode = do_shortcode("[nggallery id={$gallery['gid']}]"); 
    echo '<div class="tgallery" rel="' . $gallery['gid'] . '">' . $shortcode . '</div>'; 
} 

打開和關閉PHP

這是你將如何使用PHP「模板做「:

<?php foreach($gallery_ids as $gallery): ?> 
    <div class="tgallery" rel="<?php echo $gallery['gid']; ?>"> 
     <?php echo do_shortcode("[nggallery id={$gallery['gid']}]"); ?> 
    </div> 
<?php endforeach; ?> 
0
<?php 
foreach ($gallery_ids as $gallery) { 
    echo "<div class=\"tgallery\" rel=\"{$gallery["gid"]}\">". do_shortcode("[nggallery id=\"{$gallery["gid"]}\"]") ."</div>"; 
} 
?> 
0

試試這個....

<?php 
foreach ($gallery_ids as $gallery) { 
    echo '<div class="tgallery" rel="'.$gallery['gid'].'">'.do_shortcode("[nggallery id=".$gallery['gid']."]").'</div>'; 
} 
?> 

你有一個PHP statment

內嘗試Notepad然後將顏色代碼的PHP代碼,這樣你就可以清楚地看到什麼報價等你有錯

相關問題