我已经下载了一个wordpress主题,通过这个php函数将两个不同的css类(一个用于偶数,一个用于奇数)分配给它的页面部分:
if (in_array('type-page', $classes)) {
$classes[] = (++$j % 2 == 0) ? 'even' : 'odd';
有没有办法改变\重写函数,逐步为每个页面部分分配一个自定义css类?例如。
我认为这可能是一个菜鸟问题,但我对PHP完全缺乏经验..
提前致谢!
答案 0 :(得分:0)
要理解的关键是第一次调用此方法$ j初始化为0,在后续调用中,如果'type-page'在classes数组中,$ j将增加1。
因此,基于$ j的值实现样式列表的快速简便方法是添加一个包含类的数组。然后在每个触发此if块的方法调用上分配由$ j索引的类。像这样:
public static function filterPostClass($classes)
{
// first we'll create an array of our classes these get indexed 0 to n-1 where n is the length of the array
$classNames = array('Css Class 001', 'Css Class 002', 'Css Class 003'); // and so on ...
static $j = 0;
// then instead of 'even'/'odd', we assign the value in the $j'th index to the $classes var
if (in_array('type-page', $classes)) {
$classes[] = $classNames[$j];
$j++;
}