【问题标题】:Plugin dynamic title using WordPress使用 WordPress 的插件动态标题
【发布时间】:2013-01-27 15:12:04
【问题描述】:

我正在尝试为我的博客 (WordPress) 制作一个小插件,但是我遇到了以下两个问题。

  1. 我想从插件中获取自定义类别中的最新三篇文章,但现在只获取最后一篇并复制了三遍。我该如何解决这个问题?

  2. 我想制作动态标题。这意味着我希望能够从管理控制面板更改插件的标题。我怎样才能做到这一点?

更新:

感谢各位,我设法显示了帖子图片,但它没有显示在正确的位置。

这是正确的 HTML

<li>
    <div class="projects">
        <ul class="projects sticker">
            <li><h2><?php the_title(); ?></h2></li>
            <li><p><a href="">details</a></p></li>
        </ul>
        <img src="" />
    </div>
</li>

这就是它现在的显示方式

<li>
    <div class="projects">
         <ul class="projects sticker">
             <li><h2><?php the_title(); ?></h2></li>
             <li><p><a href="">details</a></p></li>
         </ul>
   </div>

基本上我得把img标签放在list和div里面。

这是我目前的代码

$args = array('numberposts' => '3', 'category' => $cat_id);
$recent_posts = wp_get_recent_posts($args);
foreach ($recent_posts as $recent ) {
    echo '<a href="' . get_permalink($recent["ID"]) . '" title="Look   '.esc_attr($recent["post_title"]).'" >'
    .'<li>' .'<div class="projects-wrapper">' .'<ul class="projects-sticker">'       .'<li>' .'<h2>' .   $recent["post_title"] .'</li>' .'</h2>' .'<li><p><a href="">details</a></p></li></ul>' .'<img src="'.the_post_thumbnail('thumbnail').'" />'  .'</div>' .'</li>'.'</a>';

【问题讨论】:

  • 执行 print_r($rand_posts) 并看到您的 3 个帖子,但您所做的只是重复相同的内容。而 foreach 循环遍历 3 个帖子的结果
  • 你能把自己说清楚点吗。对不起,php不是我的强项。

标签: php html wordpress content-management-system


【解决方案1】:

要获得最近的帖子更好地使用wp_get_recent_posts。这是它的sn-p。

$args = array( 'numberposts' => '3','category' => $cat_id );
$recent_posts = wp_get_recent_posts( $args );
foreach( $recent_posts as $recent ){
    echo '<a href="' . get_permalink($recent["ID"]) . '" title="Look '.esc_attr($recent["post_title"]).'" >' .   $recent["post_title"].'</a>';
    echo get_the_post_thumbnail($recent["ID"], 'thumbnail');
}
wp_reset_query();

【讨论】:

  • 您仍然将numberposts 作为无效参数,它必须是posts_per_page
  • @janw - 检查上面提供的链接中的参考功能。它是numberposts。而post_per_pagequery_posts 是正确的。
  • 谢谢,但问题仍然存在。它显示最后一个帖子重复了 3 次
  • 不确定,但在循环后尝试wp_reset_query();。我已经更新了我的答案。或者给我们一些调试细节。
  • 是的!成功。还有一个小问题,我怎样才能正确添加图像。我已经尝试使用 the_post_thumbnail(),但没有显示任何内容
【解决方案2】:

订购帖子

您使用showposts =&gt; 3 那不是一个有效的arg 使用posts_per_page =&gt; 3,删除numberposts。 你也随机订购:'orderby' =&gt; 'rand' 必须是'orderby' =&gt; 'date' 更多参数可以在WP_Query 页面上找到。

所以使用:

$args = array('posts_per_page' => 3, 'orderby' => 'date', 'category' => $cat_id);

小部件标题

查看Widget API,扩展小部件类并将您的字段添加到form 函数中。这样,您还可以使帖子的数量例如可变。

【讨论】:

  • 这3个中的哪个问题?顺便说一句,在您的代码中,我看到 category 没有引号。我希望你的代码中确实有这个权利?
猜你喜欢
  • 1970-01-01
  • 2019-10-09
  • 1970-01-01
  • 2017-05-03
  • 1970-01-01
  • 2022-10-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多