在帖子上方添加可编辑内容

时间:2015-01-28 作者:user2323822

我想在帖子上方有一个内容区域,在那里我可以使用visual composer编辑内容。然而,当我转到管理>页面,然后转到包含我的博客帖子的页面,并尝试添加文本时,什么都没有显示。我找到了这个问题的答案,并找到了以下代码:

  <?php
  $page_id = 2; // substitute page_id of page you want content included from for "2"
  $page = get_post($page_id);
  echo "<p>$page->post_content</p>";
  ?>
我把它放在我的索引中。php和我想添加的内容显示在我的帖子上方。。但它也产生了许多可视化的composer代码,比如它不与visual composer或设计相连接。。它只是把图像放在最左边

http://snag.gy/ZDJ9S.jpg

有什么想法吗?

1 个回复
SO网友:Pieter Goosen

我对此有一些想法。你可以很容易地在帖子上方建立一个动态区域,用于发布信息或公告

为此,我更喜欢使用非层次化的自定义帖子类型。只是一些非常简单的事情。没有附加分类。自定义帖子类型也不应具有单个帖子视图或存档。原因很简单

自定义帖子类型不包括在主查询中,默认情况下它们不会出现在导航菜单中。这使得CPT非常适合作为正常站点设置之外的信息发布部分使用

如果您有新的公告或想要共享的新内容,只需在自定义帖子类型下创建新帖子即可。不需要一次又一次地编辑相同的帖子。使用自定义帖子类型并为每个公告、事件、信息等创建一个帖子的好处是,您可以保留一个记录,甚至可以在以后创建一个包含这些帖子的专用页面

您可以使用WP_Query 在您希望帖子出现的区域中,或者甚至将tnis合并到自定义小部件中,这就引出了您的问题和问题的实际目的

我更喜欢WP-Query 超过get_ 功能为WP_Query 自动设置postdata,允许使用模板标记,如the_content(). 在你的问题中,你利用get_post(), 它不设置postdata,因此模板标记无法工作。这个WP_Post 返回的对象也未过滤,因此您将看不到对其应用的任何格式

$page->post_content 返回未过滤的内容。您需要手动应用这些过滤器,如

$content = apply_filters( \'the_content\', $page->post_content );
echo $content;
这将为您提供与模板标记完全相同的筛选内容the_content().

结束

相关推荐

Loop for sticky posts

我用过Justin Tadlock\'s 关于如何创建仅包含粘性帖子的循环的教程。代码大致如下所示:$sticky = get_option( \'sticky_posts\' ); rsort( $sticky ); $sticky = array_slice( $sticky, 0, 2 ); query_posts( array( \'post__in\' => $sticky, \'caller_get_posts\' => 1 ) ); 根据教程,我