3

(这篇文章已在 Yootheme 论坛上提交,但我对解决方案没有那么大的信心,所以我想我也会在这里发布。)

我正在使用 Yoothemes 的 Nano 主题,它适用于我 90% 的网站。http://dofekit.org但是我刚刚安装了 bbPress 论坛插件(不是在实时站点上,而是在本地版本上)并且我创建了 2 个“论坛”。论坛索引页面和所有子页面似乎都插入到标准的 Nano 页面模板中。这不适合论坛,因为它包含页面元信息,而且我看不到关闭论坛的“侧边栏-a”的方法,如我的屏幕截图所示。

http://dl.dropbox.com/u/240752/forums.jpg

有没有办法在 yothemes 框架内为论坛帖子类型创建单独的模板?(我知道它是专有的,但我可以问)

谢谢。

更新:

我是那里的一部分。我已经设法为我的论坛帖子类型制作单独的模板,但我仍然需要在小部件设置中确认自定义帖子类型。

我在warp/systems/wordpress3.0/layouts/content.php中添加了自定义帖子类型

if (is_home()) {
    $content = 'index';
} elseif (is_page()) {
    $content = 'page';
} elseif (is_attachment()) {
    $content = 'attachment';
} elseif ((is_single()) && (get_post_type() == 'forum')) {
    $content = 'forum-single';
}elseif ((is_single()) && (get_post_type() == 'topic')) {
    $content = 'topic-single';
} elseif (is_single()) {
    $content = 'single';
} elseif (is_search()) {
    $content = 'search';
}elseif ((is_archive()) && (get_post_type() == 'forum')) {
    $content = 'forum-archive';
} elseif (is_archive() && is_author()) {
    $content = 'author';
} elseif (is_archive()) {
    $content = 'archive';
} elseif (is_404()) {
    $content = '404';
}

我还将这些自定义帖子类型添加到 warp/systems/wordpress3.0/config/layouts/fields/profile.php 中,以使它们出现在每个小部件的下拉列表中。(我希望能够在这些新的自定义模板上切换小部件。)

$defaults = array(
    'home'    => 'Home',
    'archive' => 'Archive',
    'search'  => 'Search',
    'single'  => 'Single',
    'page'    => 'Pages',
    'forum-archive' => 'Forum List',
    'forum-single' => 'Forum Single',
    'topic-single' => 'Topic Single'
);

有人可以帮忙吗?我想我快到了。

4

2 回答 2

4

您应该能够使用 WordPress 模板为您的自定义帖子类型处理此问题,以进行单个帖子显示

例如,如果您的自定义帖子类型称为“产品”,请创建一个名为 single-product.php 的模板,例如 single-{post_type}.php

无论 Yoothemes 框架如何,该解决方案都应该有效,如果有效,请告诉我!

于 2011-10-13T20:59:14.747 回答
1

我不确定我的回答是否可以帮助您,但是...

我的代码将自定义分类法类别添加到小部件位置...

我编辑文件warp/systems/wordpress/config/layouts/fields/style.php

我为每个自定义分类添加了这一行 =)

// set Eventos cate
    if ($categories = get_categories(array('hide_empty' => 0, 'name' => 'select_name', 'post_type' => 'event', 'taxonomy'  => 'event-category'))) {
        $options[] = '<optgroup label="Eventos | Categorias">';

        foreach ($categories as $category) {
            $val        = 'cat-'.$category->cat_ID;
            $attributes = in_array($val, $selected) ? array('value' => $val, 'selected' => 'selected') : array('value' => $val);
            $options[]  = sprintf('<option %s />%s</option>', $control->attributes($attributes), $category->cat_name);
        }

        $options[] = '</optgroup>';                  
    }

在这里...我的 postype 是“事件”,我的分类是小部件位置列表中的“事件类别”,现在您可以看到分类的所有类别或术语,并用“Eventos | 类别”标记它更好的识别。

好的,这只是代码的一部分,也许您可​​以以此为起点。现在我只能显示和列出这些术语但仍然可以正常工作:(

所以... tnks 的评论和对不起我的英语:P

于 2012-03-05T00:31:05.227 回答