post_class不包括带连字符的类

时间:2017-01-17 13:29:54

标签: wordpress

我使用post_class函数在content-page.php模板中为我的内容添加自定义类。

我试图添加一个带有这样的连字符的类

post_class('class-name');

但它在div上没有返回任何内容,而如果我包含一个没有连字符的类,则会正确添加它。

我尝试使用数组,并将其存储在变量中,但都没有工作。

有没有人遇到过这个问题?

2 个答案:

答案 0 :(得分:0)

听起来像是一个典型的WordPress错误,它与连字符,最大字符等等有关。您可以将此报告为WordPress项目的错误。

以下内容有望(未经测试):

<?php
    $classes = array(
        'class-name'
    );
?>

<div <?php post_class( $classes ); ?>>

有时WordPress有奇怪的行为。你试过吗

post_class('long-class-name');

post_class('alotofchars-classname');

它可能有用。

另外请确保您尝试停用插件 - 它也可能是插件问题。

并且你必须在循环中。

答案 1 :(得分:0)

添加带连字符的帖子类工作得很好(在最新的WordPress版本本地测试)。

这里可能出现的问题是插件或修改帖子类的自定义代码。生成的帖子类以及传入post_class()的任何内容都将通过WordPress过滤器传递。这使得WordPress核心之外的其他插件/代码有机会在使用它们之前修改类列表。

如果您查看主题中的代码或插件,您会发现附加到此过滤器的内容并导致您看到的问题。

查看使用&#39; post_class&#39;调用add_filter()的任何内容。作为第一个论点。