这可能是一个非常简单的问题......
我有一段代码,我需要提取某条信息。
<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('XXXX')->toHTML();?>
为此,我需要 XXXX 部分来提取以下查询的结果:
<?php echo $_product->getAttributeText('warranty') ?>
因此上述查询的输出将是进入 XXXX 所需的信息。
下面的标记是完全错误的,但应该展示我想要实现的想法:
<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('<?php echo $_product->getAttributeText('warranty') ?>')->toHTML();?>
你只是有一个多余的 PHP 开口
<?php echo
$this->getLayout()->createBlock('cms/block')->setBlockId($_product->getAttributeText('warranty'))->toHTML();?>
但是,这相当复杂且难以调试。我会将其分成几行并使用变量...请记住,您可以在该上下文中执行此操作,您不必只在一行中完成所有操作:)
也许很简单:
<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId($_product->getAttributeText('warranty'))->toHTML();?>
如果没有,那么我非常想知道 setBlockId 函数需要什么样的 var(数组、int、字符串、double 等)以及 $_product->getAttributeText 返回什么。
echo $this->getLayout()->createBlock('cms/block')->setBlockId($_product->getAttributeText('warranty'))->toHTML();?>
<?php
echo $this->getLayout()
->createBlock('cms/block')
->setBlockId($_product->getAttributeText('warranty'))
->toHTML();
?>