如何让woothemes短代码在产品属性的存档页面上工作

时间:2013-11-02 02:20:10

标签: php wordpress wordpress-plugin woocommerce woothemes

我不确定如何提出这个问题,但是如果你看一下这个链接就会明白我的意思

http://www.skirentalwhistler.com/skill-level/beginner

您将看到[框]的短代码未被执行。

如果您浏览单个产品,则短代码可以正常工作 - 例如,点击第一个名为' Compact'然后你会看到[box]被执行到灰色框中,里面有一个灰色和一个橙色按钮。

此外,我现在花了几个小时试图找出创建此页面的模板。该页面列出了具有特定产品属性值的所有产品(属性为技能级别,值为初学者) 我希望它是archive-product.php,但它似乎不是,我找不到任何其他文件在一个页面上处理多个产品

感谢任何帮助!

2 个答案:

答案 0 :(得分:1)

当您在帖子中使用短代码时,[box]语法就是使用的语法。但是,如果您在模板中执行短代码,则必须使用php执行短代码。由于您的主页似乎只显示短代码而不是运行它,因此它可能位于模板中。要在模板中执行短代码,请执行此操作

<?php echo do_shortcode('[box]'); ?>

对于主页上的那个

<?php echo do_shortcode('[box size="small" style="rounded" border="full"]'); ?>

答案 1 :(得分:1)

好的,我已经研究过如何做到这一点。 非常感谢chiliNUT的帮助,因为他们帮助我继续前进......因此我给了他们一个提升

无论如何,它使用的是主题archive.php模板(不是我假设的woocommerce插件模板)。在archive.php中,我更改了div类'entry'中的以下行

<?php if ( $woo_options[ 'woo_post_content' ] == "content" ) the_content(__( 'Read More...', 'woothemes' )); else the_excerpt(); ?>

<?php echo apply_filters( 'woocommerce_short_description', $post->post_excerpt ) ?>

它现在有效,似乎没有破坏任何其他东西。