我正在使用WooCommerce功能创建WordPress主题。
对于主页,我已插入WooCommerce短代码:[recent_products per_page="4" columns="4"]
以便提取最新产品。此短代码生成一个“按钮”,选中此项后,会将产品项添加到购物篮中。我想删除它并用标准按钮替换它,该按钮将人们引导到产品页面,以便阅读有关产品的更多信息。为此,我在function.php文件中输入了以下代码:
//Removes Default 'Add to Basket Button':
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart' );
//More Info Button
add_action( 'woocommerce_after_shop_loop_item', 'woocommerce_more_info' );
function woocommerce_more_info() {
echo '<a id="id-<?php the_id(); ?>" href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">More Info</a>';
}
我的问题在于,当链接文本出现在正确的位置时,链接不起作用。而不是带我到相关的产品,带我到以下链接:
http://www.example.com/%3C?php%20the_permalink();%20?%3E
有人可以告诉我需要执行哪些更改,以便链接将我带到产品中。
另外,我怎么能去设计这样一个按钮呢?我会在此功能或其他地方加入吗?
答案 0 :(得分:1)
您未正确使用echo
。
这一行:
echo '<a id="id-<?php the_id(); ?>" href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">More Info</a>';
应该是:
echo '<a id="id-'. get_the_id() .'" href="'. get_the_permalink() .'" title="'. get_the_title() .'">More Info</a>';
the_permalink()
和get_the_permalink()
之间的区别在于第一个显示内容,而后者返回值,因此您可以在字符串中使用它。您使用的其他功能也是如此。