首页 > 解决方案 > Woocommerce 页面标题出现在错误的位置

问题描述

我遇到了出现在 h3 标签之外的页面标题文本的问题。

我正在使用的 PHP 是:

$pagetitle = woocommerce_page_title();
echo '<h3>' . $pagetitle . '</h3>';

这是这样渲染的:

Shop
<h3></h3>

我希望它是这样的:

<h3>Shop</h3>

如果我只是使用:

$pagetitle = Shop;
echo '<h3>' . $pagetitle . '</h3>';

它工作正常。有谁知道可能导致此问题的原因是什么?

标签: phpwoocommerce

解决方案


根据https://docs.woocommerce.com/wc-apidocs/function-woocommerce_page_title.html,该函数将自行回显标题,除非您将“echo”参数指定为false.

这就是为什么您在 h3 标签之外看到标题的原因 - 它在您输出标签之前得到回显,并且在该模式下它不会返回值。

所以你可以做

echo '<h3>';
woocommerce_page_title();
echo '</h3>';

这将意味着 woocommerce 与标题相呼应,但在正确的位置......

或者

$pagetitle = woocommerce_page_title(false);
echo '<h3>' . $pagetitle . '</h3>';

它告诉 woocommerce 简单地返回标题而不回显它。


推荐阅读