如何在 Function.php 中添加多个过滤器?

How to Add Multiple Filters in Function.php?

我在我的网站上使用 Genesis 框架。我想将自定义 CSS 类 添加到我网站的导航菜单和主侧边栏。

为了做到这一点,我使用了以下代码:

add_filter( 'genesis_attr_nav-primary', 'themeprefix_add_css_attr' );
function themeprefix_add_css_attr( $attributes ) {

 $attributes['class'] .= ' toggle';

 return $attributes;

}

并且已将名为 "toggle" 的新 class 添加到主导航。

但是当我在 Function.php 中添加代码以在主侧边栏中添加新的 CSS class 时,我的网站显示错误 500。

add_filter( 'genesis_attr_sidebar-primary', 'themeprefix_add_css_attr' );
function themeprefix_add_css_attr( $attributes ) {

 $attributes['class'] .= 'toggle2';

 return $attributes;

}

您似乎正在定义两个同名函数,这会导致错误。请尝试以下操作:

add_filter( 'genesis_attr_nav-primary', 'themeprefix_add_nav_css' );
function themeprefix_add_nav_css( $attributes ) {

 $attributes['class'] .= ' toggle';

 return $attributes;

}


add_filter( 'genesis_attr_sidebar-primary', 'themeprefix_add_sidebar_css' );
function themeprefix_add_sidebar_css( $attributes ) {

 $attributes['class'] .= 'toggle2';

 return $attributes;

}

请注意,每个过滤器都引用不同的函数:themeprefix_add_nav_cssthemeprefix_add_sidebar_css