在WordPress页面上显示特定帖子

在网站上, 每个产品都是一个帖子, 但是当我们添加新产品时, 我们希望获得时事通讯之类的东西, 主要是帖子, 因此在主页的边栏中你可以看到当月的新产品或事件。
我使用的页面是因为我不想在每个新的新闻通讯上重新发布产品, 所以我很想在页面内显示帖子。
在产品页面中, 我将每个产品按类别和子类别分开, 但是由于我想对特定帖子进行分组以将其发布在侧栏上, 因此我认为页面是实现此目的的最佳方法。
现在, 我正在使用以下代码:

< ?php $productos = new WP_Query(array( 'post__in'=> array(81, 83), 'orderby'=> 'title', 'order'=> 'ASC' ) ); if ($productos-> have_posts()) : while ($productos-> have_posts()) : $productos-> the_post(); ?>

它显示ID为81和83的帖子, 我想按抄本的说明使用” 名称” 按段显示帖子, 因为要花一些时间检查新帖子的ID, 而不是使用名称每个新产品, 但无法在阵列中使用, 或者我做错了。
现在我会喜欢做这样的事情
$names = get_post_meta($post-> ID, "names", $single = true); $productos = new WP_Query(array( 'name'=> array($names), 'orderby'=> 'title', 'order'=> 'ASC' ) );

因此, 每次我发布新页面时, 我只会在自定义字段中写一些我想包含在页面中的帖子的标签, 如你所见, 我对php不太满意, 但是我尝试学习, 并且搜索了在这里问之前可能有用的东西很多。
我尝试使用ggis嵌入式帖子插件, 尽管它可以工作, 但我想包含的每个帖子都需要ID, 并且我需要编辑插件, 因为我希望帖子输出中的顺序不同, 这就是为什么我不喜欢很大程度上取决于插件。
更新:
所以我现在正在寻找是否可以使用短代码来实现这一点, 现在我有了:
function producto_func($atts) { extract(shortcode_atts(array( 'nombre' => '' ), $atts)); global $post; $pieza = get_page_by_title($nombre, OBJECT, 'post'); echo '< h1> '. $pieza-> ID . '< /h1> '; } add_shortcode('producto', 'producto_func'); enter code here

因此, 我只需在页面中输入简码[producto nombre =” ff 244″ ]并显示其ID, 就可以根据需要的帖子数量添加任意数量的简码。但是如何显示帖子的全部内容。
任何的想法?
#1我发现我使用短代码解决方案。所以我把它放在我的functions.php页面上
function productos($atts, $content = null) { extract(shortcode_atts(array( "slug" => '', "query" => '' ), $atts)); global $wp_query, $post; $temp = $wp_query; $wp_query= null; $wp_query = new WP_Query(array( 'name'=> $slug, )); if(!empty($slug)){ $query .= '& name='.$slug; } if(!empty($query)){ $query .= $query; } $wp_query-> query($query); ob_start(); ?> < ?php while ($wp_query-> have_posts()) : $wp_query-> the_post(); ?> < h1> < a href="http://www.srcmini.com/< ?php the_permalink() ?>" rel="bookmark"> < ?php the_title(); ?> < /a> < /h1> < div> < ?php the_content() ?> < /div> < ?php endwhile; ?> < ?php $wp_query = null; $wp_query = $temp; $content = ob_get_contents(); ob_end_clean(); return $content; } add_shortcode("producto", "productos");

在我的页面模板中, 我只写了[producto slug =” MY-SLUG” ], 这样一来, 我就可以只显示这些条目。希望有人觉得这有用。
#2从Wordpress Codex:
按子弹显示帖子:
$ query =新的WP_Query(‘ name = about-my-life’ );
按页显示页面:
$ query =新的WP_Query(‘ pagename = contact’ );
【在WordPress页面上显示特定帖子】更新
尝试更改此:
'name'=> array($names),

对此:
'name'=> $names,

‘ name’ -和’ pagename’ -参数不包含在数组中。只有一个字符串。用逗号分隔的列表应该在” 名称” 的” 自定义字段” 中为你提供所需的内容, 尽管我尚未测试过这种方法。
另外, 感谢你使用WP_Query而不是query_posts。

    推荐阅读