【问题标题】:WordPress: How can I add extra classes via variables when using body_class()?WordPress:使用 body_class() 时如何通过变量添加额外的类?
【发布时间】:2009-10-04 10:45:45
【问题描述】:

我正在尝试将一些动态(基于 URI)创建的类名添加到标准 body_class() 语句中。

wordpress codex 提到在使用 body_class('add-class-here') 时将类放入括号中

但是我有 2 个变量需要在 body class="" 中回显,所以我尝试按如下方式进行操作:

<?php
$url = explode('/', $_SERVER['REQUEST_URI']);
$dir = $url[2] ? $url[2] : 'home';
$subdir = $url[3] ? $url[3] : '';
?>

<body <?php body_class(<?=$dir?><?=($subdir?' ':'')?><?=$subdir?>); ?>>

然而,这会导致 PHP 错误,从而破坏页面。

我尝试添加 body_class($dir),虽然它有效,但添加第二个变量 $subdir 时失败。

例如。 body_class($dir($subdir?' ':'')$subdir) 结果: Parse error: syntax error, unexpected T_VARIABLE

($subdir?' ':'') 仅在设置了$subdir 时用于在类名之间添加一个空格。

有什么想法可以将变量添加到主体类中,同时保留body_class() 函数的标准生成类吗?

感谢阅读。

【问题讨论】:

    标签: php wordpress class


    【解决方案1】:
    $path = (isset($subdir) && !empty($subdir)) 
      ? $dir . ' ' . $subdir 
      : $dir . $subdir;
    body_class($path);
    

    【讨论】:

    • 谢谢!它确实修复了它。再次感谢。
    猜你喜欢
    • 1970-01-01
    • 2016-01-22
    • 2023-04-02
    • 1970-01-01
    • 2011-06-02
    • 1970-01-01
    • 2021-05-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多