如何创建一个链接到包含图片和摘录的其他页面的页面?

时间:2013-08-28 作者:nokul

我在Wordpress网站上有几个页面(不是帖子)。它们包含摘录(我忘了是哪个插件启用的),并有一个文章图片。

现在,我想创建另一个页面,其中包含指向这些页面的选定链接。我只想选择页面,并让这些链接与摘录文本和图片自动创建。

我找到了一个插件,它可以做到这一点,看起来还可以。只是这个插件很旧,已经两年左右没有更新了。

有没有其他方法来实现这一点?

1 个回复
最合适的回答,由SO网友:gmazzap 整理而成

你有一些借口。

第一种选择是创建taxonomy for pages 使用register_taxonomy.

然后,假设此分类法称为“pages group”,创建一个名为taxonomy-pages-group.php 和使用the loop 按需要显示页面。

第二种选择是创建shorcode 您必须将其放入页面或发布内容中。

短代码应如下所示:

[pages ids="12,23,34,45"]
您应该将shorcode注册到add_shortcode (codex) 功能,类似

function add_pages_shortcode() {
  add_shortcode( \'pages\' , \'show_pages_shortcode\' );
}
add_action(\'wp_loaded\',\'add_pages_shortcode\');
以及创建show_pages_shortcode 显示所选页面的函数,类似于:

function show_pages_shortcode( $atts = array() ) {
  if ( isset($atts[\'ids\']) && ! empty($atts[\'ids\']) ) {
    $pages = get_pages( array(\'include\' => $atts[\'ids\'] ));
    if ( ! empty($pages) ) {
      global $post;
      ob_start();
      foreach ( $pages as $post) {
        setup_postdata($post);
        ?>
        <li>
          <a id="page-<?php the_ID(); ?>" href="<?php the_permalink(); ?>">
            <?php the_title(); ?>
            <?php the_post_thumbnail() ?>
          </a>
          <?php the_excerpt() ?>
        </li>
        <?php
      }
      wp_reset_postdata();
      return \'<ul class="pages-list">\' . ob_get_clean() . \'</ul>\';
    }
  }
}
当然,您可以根据需要更改输出。

结束

相关推荐

如何在控制面板中复制“Pages”部分?

我想在控制面板中创建自己的自定义页面(库)选项卡,类似于页面。这有助于我在“画廊”名称下组织画廊页面。我该怎么做?我可以对自定义帖子执行此操作,但这次不会显示模板。:/实际上,我想准确地复制“页面”,并将其命名为“Gallery”。然后我在它下面创建自定义页面。希望你能理解我的问题。