如何制作不同的定制贴子版面?

时间:2013-07-27 作者:idekman

我是wordpress的新手,在制作自己的自定义布局时遇到了一些困难。我正在使用\\u的框架(下划线.me)以及自定义帖子模板插件。

目前,我正在使用自定义字段在帖子标题上方注入图像,到目前为止,这已经奏效了,但我在尝试为帖子制作仅索引的自定义布局以及将CSS应用于自定义字段时遇到了问题。

自定义的仅索引帖子外观大约有三种,其中之一是我希望帖子在默认情况下的外观。

我想知道的是我应该查看哪些文件,以及我应该如何进行修改(因为当我包装/应用CSS时,某些元素似乎不会改变)以更改仅索引的外观的一些指导,因为我目前可以修改贴子页面本身的外观。

如果需要更多信息,我可以发布

2 个回复
SO网友:RachieVee

换言之,我认为您要问的是,当自定义帖子类型显示为列表时,如何为其提供不同的样式或模板?

看起来您使用的自定义帖子模板插件只允许您为帖子的单个视图切换模板,而不允许切换帖子列表,这就是您所说的索引?

如果您只需要一种方法来分别设置您的帖子的样式,这取决于您的主题,但在索引中是2122和2133。php,它有循环,如果存在帖子,则显示它们,如果没有帖子,则显示消息。如果您只需要使用一个类,以便可以分别为每个帖子类型的归档设置样式,那么可以使用PHP If语句来检查您的自定义帖子类型,如果为true,则添加一个类。这里有一个例子。假设我的自定义帖子类型为recipe\\u posts,我想添加一个名为“recipe archive”的类,当这些帖子以列表形式显示时,我会在Twentyree的索引中这样写。php:

<div id="primary" class="content-area <?php if(get_post_type() == recipe_posts): ?>recipes-archive<?php endif; ?>">
    <div id="content" class="site-content" role="main">
            <?php if ( have_posts() ) : ?>

                <?php /* The loop */ ?>
                <?php while ( have_posts() ) : the_post(); ?>
                    <?php get_template_part( \'content\', get_post_format() ); ?>
                <?php endwhile; ?>

                <?php twentythirteen_paging_nav(); ?>

            <?php else : ?>
                <?php get_template_part( \'content\', \'none\' ); ?>
            <?php endif; ?>

    </div><!-- #content -->
</div><!-- #primary -->
在这里,我向“内容区域”添加了一个类<?php if(get_post_type() == recipe_posts): ?>recipes-archive<?php endif; ?> 但实际上,您可以在需要的地方使用此方法来简化样式。现在,如果您想更改模板,默认情况下,在2012/2013年,它使用内容。在索引中调用的php。php。如果要交换,可以使用相同的PHP if语句<?php get_template_part(); ?> 还有别的东西。

希望这有帮助。祝你好运

SO网友:Brad Dalton

您要问的两个问题与LayoutsStyling Custom Templates.

Layouts

可以使用模板文件中的代码更改布局,也可以有条件地从子主题函数更改布局。php文件使用过滤器,但这取决于您的父主题。

根据您使用的主题及其对不同布局选项的支持,此操作的代码可能会有所不同。

Custom Body Class

您还可以直接将自定义主体类添加到模板中,或者有条件地从归档或单个模板文件的函数文件中添加自定义主体类。

在模板文件中直接使用此代码

add_filter( \'body_class\', \'add_custom_body_class_template\' );

function add_custom_body_class_template( $classes ) {

$classes[] = \'archive-body-class\';

return $classes;

}
在子主题函数fle中使用此代码:

add_filter( \'body_class\', \'add_custom_body_class_conditionally\' );

function add_custom_body_class_conditionally( $classes ) {

if ( is_page_template(\'template_file_name.php\') ) {

$classes[] = \'custom-body-class\';

return $classes;

    }
}
更改conditional tag 以匹配要设置样式的模板。

来源http://codex.wordpress.org/Function_Reference/body_class

结束

相关推荐

如何在css中将主菜单居中?

你们中有人知道如何在我公司的网站上集中主菜单吗?我已经试了一整天了,累坏了!我尝试过编辑样式表,但没有任何方法可以修复它。我试过扔white-space: nowrap 但是不管我把它放在哪里,它都没有效果。啊!如果有帮助的话,我们使用的是变形主题。我试着创建一个链接,但我无法使用我们的IP地址链接和帖子中的链接工具。http://74.220.219.109/~dentalsp/ 请帮忙!我很沮丧。我真的很感激!