我创建了一个儿童主题,最近安装了woocommerce。
我已将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-shop.php文件中......)
由于
答案 0 :(得分:1)
如果您的目标是将secondary-aside
侧边栏包裹在<aside>
标记中,您应该可以直接在sidebar-shop.php
文件中执行此操作:
?>
<aside class="rightHandColumn">
<?php dynamic_sidebar('secondary-aside'); ?>
</aside>
<?php
至于你上面提到的错误:
init
现在为时太早,无法调用此函数,init
挂钩不应生成任何输出,因为headers haven't been sent yet和init
挂钩并不是#39} ; t修改the_content
。the_content
用于在循环中输出帖子,并且不会像您期望的那样在边栏中结束。dynamic_sidebar()
prints the sidebar markup。如果您想要在展示这个侧边栏中的小部件时对其进行操作,则has hooks include
包含该函数的文件。