【问题标题】:Stop loop from duplicating content停止循环复制内容
【发布时间】:2012-12-23 13:07:08
【问题描述】:

我正在尝试修改的 wordpress 插件中有一个循环。

$dataarray = explode(',',$data);
foreach ($dataarray as $entry){
    $sql .= "OR ID = '$entry' ";
}   

$endvar = wp_parse_args( $var, $defaults );
extract( $endvar, EXTR_SKIP );
$sql = preg_replace("/^OR./","", $sql); 
$order = $endvar['order_by'];
$my_posts = $wpdb->get_results("SELECT * FROM $table_name2 WHERE $sql ORDER BY $order");
$mod_url = mfp_create_link_url();

foreach ($my_posts as $entry){
    echo get_the_post_thumbnail($entry->ID, 'thumbnail');
    $fav_post .= $entry_before."<a href='".get_permalink($entry->ID)."' title='".$entry->post_title."' class='".$endvar['link_class']."'>".$entry->post_title."</a>".$entry_after;
    echo $fav_post;
    echo pippin_excerpt_by_id($entry);
}

这显示;

<thumbnail-1>
   <title-1>
     <excerpt-1>
<thumbnail-2>
   **<title-1>**
   <title-2>
     <excerpt-2>

我不明白为什么它显示&lt;title-1&gt; 两次,而其他只显示一次。

【问题讨论】:

  • 发布实际生成的 HTML 比发布伪代码更好。

标签: php sql foreach wordpress


【解决方案1】:

在你的循环中添加

$fav_post .= 

然后回显

echo $fav_post;

永远不要在循环中将其设置为空白。删除句点或只是回显该行

echo $entry_before."<a href='"...

【讨论】:

    猜你喜欢
    • 2018-08-15
    • 1970-01-01
    • 1970-01-01
    • 2015-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-16
    相关资源
    最近更新 更多