我试图为函数中的内容宽度创建一个条件语句。我的主题的php。所以有些类别的content\\u宽度为580,有些类别的content\\u宽度为900。这将使oEmbed在任何地方都能正常工作。
通常,你会在你的函数中有这个。php:
if ( ! isset( $content_width ) )
$content_width = 900;
我想要这样的东西:
if(in_category(array(\'news\',\'blog\'))) {
$content_width = 580;
}
elseif(is_page()) {
$content_width = 580;
}
else {
$content_width = 900;
}
当我的函数中有这个时。php内容宽度变成我在最后一行中写的内容。
我错过了什么?这可能吗?
谢谢
最合适的回答,由SO网友:goldenapples 整理而成
不,这是不可能的。$content_width 是一个主题范围内的常量,它在函数中设置。在设置任何查询条件之前。
$content_width 用于确定中的中间图像大小image_send_to_editor
. “大”图像大小将设置为$content\\u width的值。
如果您需要按类别修改这些大小,您可以挂接到该过滤器。。。看看我对这个问题的回答change set_post_thumbnail_size according to post type admin page 关于如何做到这一点的一般示例(请注意,如果您尝试按类别进行操作,则几乎总是失败,因为当用户首次上传图像时,几乎总是不会设置帖子类别-按帖子类型进行设置更可靠一些)
无论您的帖子和页面有多宽,请设置$content_width 到您希望用户在帖子中包含的最宽图像。