function.php中的wordpress函数不是从模板文件中调用的



我创建了一个子主题,最近安装了wooccommerce。

我在模板中添加了一个sidebar-shop.php文件,当我将伪内容放入其中时,它可以很好地工作

在我的函数文件中,我有:

function lls_woo_before_widget(){
    $content='<aside class="rightHandColumn">';
    return $content;
}
add_action('init','lls_woo_before_widget');

在sidebar-shop.php中,我有:

lls_woo_before_widget();
dynamic_sidebar('secondary-aside');

函数lls_woo_before_widget似乎不起作用,但侧边栏很好。

为什么我不能使用sidebar-shop.php中的函数,以及如何使用(我知道我可以将代码写入sidebar-hop.php文件…)

感谢

如果您的目标是将secondary-aside侧边栏包装在<aside>标签中,那么您应该能够直接在sidebar-shop.php文件中这样做:

?>
<aside class="rightHandColumn">
    <?php dynamic_sidebar('secondary-aside'); ?>
</aside>
<?php

至于你上面提到的错误:

  • init现在调用这个函数还为时过早,init钩子不应该生成任何输出,因为头还没有发送,init钩子也不修改the_content
  • the_content用于输出循环中的帖子,不会像您预期的那样出现在侧边栏中
  • dynamic_sidebar()打印侧边栏标记。如果你想在这个侧边栏中的小部件呈现时对它们进行操作,它有钩子
  • 如果要从另一个php文件中的一个文件调用php函数,则需要先include包含该函数的文件,然后再尝试调用它

最新更新