根据get_post_custom()字段更改样式


Wordpress: Change styling according to get_post_custom() field

这是一篇关于Wordpress页面/文本样式的文章:我的一些帖子是用希伯来语写的,一些是用英语写的。

如果我使用字体Arial,英文字母看起来比希伯来字母大一点,实际上是1pt,所以我想知道是否有一种方法可以将font-size低1pt仅应用于字体的英文字母。

我可以想到这样的解决方案:

使用get_post_custom()来获得我为英语帖子创建的自定义字段,如果字段language='English'我会回显'…addClass('english') to the page where class english'的字体大小比1pt小。在我看来,这个解决方案是相当可怕的,我相信有一个更简单的方法来完成这件事。

任何想法?

编辑:这是我目前的解决方案,当然欢迎更好的解决方案:)
<?php
$language_field = get_post_meta(get_the_ID(), 'language', true);
if(strcmp($language_field,'english') == 0) {
    echo '<script>'.PHP_EOL;
    echo '  $(document).ready(function() {'.PHP_EOL;
    echo '      $("#main h1").css("font-size",parseInt($("#main h1").css("font-size"))-6);'.PHP_EOL;
    echo '      $("#main p").css("line-height","1.5");'.PHP_EOL;
    echo '  });'.PHP_EOL;
    echo '</script>'.PHP_EOL;
}
?>

添加一个名为english的类别,您为每个英文帖子选择该类别如何?然后你可以检查页面是否有这个类别,如果有,改变字体大小。

代码示例:

<?php 
if ( in_category( 'english' )) {
    echo('<style> .classname {font-size: *1px less than Hebrew*;} </style>');
}
?>

这应该是你想要的功能,你不需要添加自定义的帖子,并通过Javascript或jQuery添加类。

你可以在Wordpress仪表板上通过批量编辑应用English类别,这样你就不必单独进入每个页面。

关于in_category的更多信息可以在这里找到