wordpress-plugin – 在wordpress页面中分割内容

构建一个需要按流组织内容的wordpress网站 – 例如机械,电气等.此外,每个页面都需要新闻,文章事件等部分.如果你选择一个页面(比如机械),它必须有以下部分

>新闻
>文章(类别:文章)
>活动(类别:活动)

其他流也将具有相同的部分

是否有一个插件可以实现,或者我最好为每个垂直构建一个模板页面并编写php代码?具有单个部分的页面的已显示代码.

  <?php           
  $args = array(
'posts_per_page'   => 1,
'category_name'    => 'news',
'orderby'          => 'date',
'order'            => 'DESC',
'post_type'        => 'post',
'post_status'      => 'publish',
'suppress_filters' => true 
);

$posts_array = get_posts( $args ); 


    $the_query = new WP_Query($args);
  //EXAMPLE NEWS SECTION 
  if ( $the_query->have_posts() ) {
      while ( $the_query->have_posts() ) {
          $the_query->the_post();
      the_content();          
      echo $content;
      }

  } else {
      // no posts found

  }
  ?>

最佳答案 在我看来,你可以写一个插件来做过滤.

所述插件在
shortcode上将具有某种类型,其将采用参数(例如类别)并且将返回或回显与该类别相关联的所有帖子.

短代码注册:

add_action('init','register_shortcode');
function register_shortcode(){
  add_shortcode('shortcode_name', 'shortcode_function');
}

短代码功能:

function shortcode_function($attr){
  $attr = shortcode_atts(array('category' => 'default'),$attr); //Setting defaults parameters
  $args = array(
    'category_name'    => $attr['category'],
    'orderby'          => 'date',
    'order'            => 'DESC',
    'post_type'        => 'post',
    'post_status'      => 'publish',
    'suppress_filters' => true 
    );

  $the_query = new WP_Query($args);
  if ( $the_query->have_posts() ) {
    while ( $the_query->have_posts() ) {
      $the_query->the_post();
      //echo other html related stuff
      the_title();
      the_content();          
    }
  }
}

用法

[shortcode_name category='news']
[shortcode_name] //category defaults at 'default'

在你的情况下,页面可能是这样的

<div>
  News : <br/>
  [shortcode_name category='news']
</div>
<div>
  Articles : <br/>
  [shortcode_name category='articles']
</div>
<div>
  Events : <br/>
  [shortcode_name category='events']
</div>
点赞