【问题标题】:Category Images Only Displaying Once on Special Recent Posts (WordPress)类别图像仅在最近的特殊帖子上显示一次 (WordPress)
【发布时间】:2012-05-16 21:15:21
【问题描述】:

我正在使用 WordPress 构建一个博客。我正在使用类别图像插件将每个类别的图像放在帖子上方。

主页以大图和每篇文章的摘录布局,当您单击它时,它会将您带到整篇文章(我为此使用了“特别最近的帖子”插件)。我想要每个大图像/摘录上方的类别图像标题。

第一篇文章一切正常,但之后我没有标题。原因是我在标题中的代码正在调用“类别图像” php 函数,该函数有效。然后它调用'Special Recent Posts' php 函数,该函数实际上运行循环以获取前五篇最新文章。它不会对每篇文章每次都运行类别图像功能,仅在第一次运行。

代码如下:

<?php get_header(); ?>

<?php c2c_the_category_image($image_extensions='png gif jpg', $image_dir='/wp-content/images/', $use_name_if_no_image=true, $start_from='begin', $limit=999); ?>

<?php echo do_shortcode("[srp srp_number_post_option='5' srp_thumbnail_option='yes' srp_widget_title_hide_option='yes' srp_post_date_option='no' srp_wdg_excerpt_length='50' srp_wdg_excerpt_length_mode='fullexcerpt']"); ?>

<?php get_sidebar(); ?>

<?php get_footer(); ?>

如何让它为所有最近的帖子运行类别图像功能?感谢您的帮助。


编辑:

我试图进入 Special Recent Posts 插件的 PHP,但是当我尝试在其中输入类别图像代码时,它产生了一些严重错误。如果它在那里,我正在寻找最简单的解决方案(我知道这不是一个非常简单的问题)。有什么帮助吗? (我已经悬赏)

【问题讨论】:

  • 因为您使用的是简码而不是“正常”循环(顺便说一句 - 为什么??)您可以添加一个小的 foreach 循环,将两个片段放入其中并将 number_post_option 参数更改为 1跨度>
  • 我对 PHP 比较陌生(解释简码,这是我的“简单”方式)。所以做一个 foreach 循环,将 number_post_option 参数更改为 1,然后让 foreach 循环运行直到它达到 5(对于帖子的数量)?
  • 是的 .. 如果您仍然想要简码,这似乎是这样做的方式......我会摆脱简码并只是构建一个正常的循环。那些插件我不熟悉,但是看文档看功能,或者只是阅读插件源代码..这是学习一些PHP的好机会..
  • 酷,谢谢!我希望提高我的编码技能,所以这可能是一个很好的机会。
  • 好吧,我还没到那一步。我可能对 foreach 循环有疑问......我正在努力弄清楚如何在 foreach 循环中调用函数(我是新手,所以请原谅!)。我遇到的大多数教程都将 foreach 循环作为数组提供。

标签: wordpress plugins shortcode


【解决方案1】:

你做事的方式非常复杂和令人费解。

证明有效的最简单方法是让图像与类别 ID 或类别 slug 对应!

http://baldino.rs/collection

如您所见,这是一个列出所有类别及其图片和说明的页面。


如果你愿意的话,我很难理解:

  • 在每个帖子上方都有一个类别图片
  • 在每个帖子上方都有一个类别图片AND发布图片

我将在下面演示第一个解决方案

这是我们创建博客页面的顺序:

  1. 按 slug 或 ID 命名类别图像(我推荐 ID)
  2. 将图片上传到服务器 - 最好上传到主题的图片文件夹
  3. 创建我们的自定义循环,它将显示我们的类别图像、类别名称、帖子标题和摘录

所以索引页面(博客页面)应该是这样的

<?php get_header();?>

<div id=:content">
    <div id="posts">
    <?php if (have_posts()) : while (have_posts()) : the_post();?>
        <div <?php post_class() ?> id="post-<?php the_ID(); ?>">
            <?php
            $category = get_the_category();?> 
            <img src="<?php bloginfo('template_directory'); ?>/images/<?php echo $category[0]->term_id;?>.jpg"/>
            <h3 class="cat-title"><?php echo $category[0]->cat_name;?></h3>
            <h2><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h2>
            <div class="entry">
                <?php the_content(); ?>
            </div>
        </div>
    <?php endwhile;endif; ?>    
    </div>

<?php get_sidebar(); ?>
</div>

<?php get_footer(); ?>

你真的应该避免使用循环

轻松解决的简单问题的插件

我建议你开始阅读 WP 法典 - http://codex.wordpress.org

每个函数、类、引用都有详细的文档记录,非常容易理解。

如果您有更多问题,请随时提问

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-21
    • 2012-11-15
    • 1970-01-01
    • 2010-12-03
    相关资源
    最近更新 更多