如何将CSS插入到函数中?

时间:2012-11-11 作者:AndrettiMilas

我有一个自定义函数,允许用户在下一个/上一个链接和分页之间进行选择,我正在尝试向下一个/上一个链接添加CSS类。我已经尝试了多种方法,并不断破坏我的主题。

如何将CSS类插入到上一个和下一个链接中?

// Pagination
function my_theme_navigation() 
{ 
    global $shortname;

    if( get_option( $shortname . \'_next_prev_or_paginate\' ) == \'Next\' ) : 
        // the block for next-prev navigation 
        previous_posts_link (\'Newer\');
        next_posts_link(\'Older\');
    else : 
        // the block for pagination
        global $wp_query; 
        $big = 999999999; // need an unlikely integer       
        echo paginate_links( 
            array( 
                \'base\' => str_replace( $big, \'%#%\', get_pagenum_link( $big ) ), 
                \'format\' => \'?paged=%#%\', 
                \'current\' => max( 1, get_query_var(\'paged\') ), 
                \'total\' => $wp_query->max_num_pages 
            ) 
        ); 
    endif; 
}
例如,请检查此页的底部:http://themeforward.com/demo2/

3 个回复
最合适的回答,由SO网友:Matthew Woodard 整理而成

您可以使用jQuery实现这一点。就像这样。。。

$("a:contains(\'Newer\')").addClass(\'YourNewerClassHere\');
$("a:contains(\'Older\')").addClass(\'YourOlderClassHere\');

SO网友:fuxia

我将使用务实的方法,将自定义类添加到容器元素中:

function my_theme_navigation() 
{ 
    if ( empty( $GLOBALS[\'paged\'] ) or 2 > $GLOBALS[\'paged\'] )
        return;

    // Yes, we have at least one link.
    echo \'<div class="custom">\'; 

    // do the work … 

    echo \'</div>\';
}

SO网友:Mario Peshev

这个paginate_links 函数本身不接受CSS样式的参数,我不确定从自定义函数中推出一些CSS是否是一个非常好的主意。

如果根据选项显示不同的元素,为什么不在主CSS文件中为这两个元素添加CSS?那么,如果打印,元素将默认设置样式,如果不打印,元素将根本不可见(由于您的条件)?

如果出于某种原因希望保持CSS文件的简短,或者需要大量的样式选择器,可以在条件wp_enqueue_style 函数加载带有更改的额外样式表。有一个关于依赖关系的参数,因此可以在主题的CSS之后加载。

对于一些黑色魔术,您可以将自定义CSS挂接到wp_head 并在那里打印CSS,但这肯定不是最佳做法,而是用于非常动态的用户选项(您可以从数据库选项中获取数据或导出文件以用作CSS脚本)。

结束

相关推荐

我如何才能只在单个帖子上链接一个css文件?

如果我理解is_single() 没错,它只应该回来true 当当前的“post”(在一般意义上)是文字post(即,它有一个post_type 属于post), 它会回来的false 当当前的“帖子”是一个页面、附件等时,这就是法典所说的:is_single() returns true if any single post is being displayed is_singular() returns true when any page, attachment, or single pos