删除“echo”并将其替换为“return”?

时间:2012-03-13 07:35:50

标签: php

我有以下代码,但是,我必须去除所有样式(任何CSS)并让它返回而不是回声,否则它会与我正在使用的其他代码混淆。 我正在使用echo的另一个代码是一个短代码,如果购物车中有商品,则输出以下内容。

显然我无法回应(关于回声短码的结尾),所以我必须回归。如果购物车是空的,它会根据我下面的评论代码返回。当购物车有物品时,我无法让它返回:(我的尝试在下面。

//Original code, if there's items

if(is_object($cart) && $cart->countItems()) {
  ?>
  <div id="Cart66scCartContents" style="float:right; text-align: right;">
    <a id="Cart66scCartLink" href='<?php echo get_permalink($cartPage->ID) ?>'>
    <span id="Cart66scCartCount"><?php echo $cart->countItems(); ?></span>
    <span id="Cart66scCartCountText"><?php echo $cart->countItems() > 1 ? ' items' : ' item' ?></span> 
    <span id="Cart66scCartCountDash">&ndash;</span>
    <!-- <span id="Cart66scCartPrice"><?php //echo CART66_CURRENCY_SYMBOL . 
      number_format($cart->getSubTotal() - $cart->getDiscountAmount(), 2); ?> -->
    </span></a>
    <a id="Cart66scViewCart" href='<?php echo get_permalink($cartPage->ID) ?>'>View Cart</a>
    <span id="Cart66scLinkSeparator"> | </span>
    <a id="Cart66scCheckout" href='<?php echo get_permalink($checkoutPage->ID) ?>'>Check out</a>
  </div>
  <?php
}
else {

//My code, if there's no items (which works perfectly as a return)

    $emptyMessage = isset( $attrs['empty_msg'] ) ? $attrs['empty_msg'] : 'Your cart is empty';
    return "<p id=\"Cart66scEmptyMessage\" style=\"float:right; text-align: right;\">" . $emptyMessage . "</p>";

}

我尝试将“如果购物车中有商品”设置为退货而不是回复..

if(is_object($cart) && $cart->countItems()) {      
  return "<a href='" . get_permalink($cartPage->ID) . "'>" . $cart->countItems(); . " " . $cart->countItems() > 1 ? ' items' : ' item' . "&ndash;" . number_format($cart->getSubTotal() - $cart->getDiscountAmount(), 2); . "</a> <a href='" . get_permalink($cartPage->ID) . "'>View Cart</a> | <a href='" . get_permalink($checkoutPage->ID) . "'>Check out</a>";
}
else {
    $emptyMessage = isset( $attrs['empty_msg'] ) ? $attrs['empty_msg'] : 'Your cart is empty';
    return "<p id=\"Cart66scEmptyMessage\" style=\"float:right; text-align: right;\">" . $emptyMessage . "</p>";

}

文字“1项 - 查看购物车|结帐”未显示我的尝试。 我做错了什么?

谢谢!

2 个答案:

答案 0 :(得分:5)

你在. $cart->countItems();有一个分号,删除它,你应该好好去

答案 1 :(得分:0)

声明字符串变量并连接您尝试在该字符串中回显的所有HTML并返回字符串变量。

  

示例$ string ='