0

我已经下载了一个 wordpress 主题,它通过这个 php 函数为其页面部分分配了两个不同的 css 类(一个用于偶数,一个用于奇数):

if (in_array('type-page', $classes)) {
$classes[] = (++$j % 2 == 0) ? 'even' : 'odd';

有什么方法可以更改\重写函数以逐步为每个页面部分分配自定义 css 类?例如

  • 第一节 -> Css Class 001
  • 第二节-> Css Class 002
  • 第三节-> Css Class 003等等..

我认为这可能是一个菜鸟问题,但我对 php 完全没有经验。

提前致谢!

4

1 回答 1

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++;

        }
于 2013-04-07T00:43:38.020 回答