使用快捷代码显示来自其他网站页面的内容

时间:2016-12-29 作者:EnglishTeacherEric

假设我在WordPress网站上有两个页面,其中包含内容(文本、HTML、短代码)。当加载页面B时,如何创建一个短代码来显示页面a中的内容?

我当然认识到,如果使用不当,这有可能成为一个无限循环,并且存在潜在的格式化危险。撇开最佳实践不谈,我们网站上有一个重要的it用例。

2 个回复
SO网友:Tunji

您可以按如下方式创建快捷码:

function wpse250662_post_content_shortcode($atts) {

    $args = shortcode_atts( array(
        \'pagename\' => \'\'
    ), $atts );

    $query = new WP_Query( $args );

    if ( $query->have_posts() ) :
        while ( $query->have_posts() ) : $query->the_post();
            $content = apply_filters(\'the_content\',get_the_content( ));
            ob_start();
            ?>
            <div class="content">
                <?php echo $content; ?>
            </div>
            <?php
        endwhile;
    endif;
    wp_reset_postdata();
    return ob_get_clean();
}
add_shortcode(\'wpse250662-content\', \'wpse250662_post_content_shortcode\');

USAGE:

[wpse250662-content pagename="PAGE SLUG YOU WANT TO DISPLAY"]

Resources: Shortcode API

SO网友:robin416

杰夫·斯塔尔的https://wordpress.org/plugins/simple-custom-content/“rel=”nofollow noreferrer“>简单自定义内容插件提供了向特定帖子和页面添加自定义内容的快捷码,其功能之一是向特定帖子和页面添加自定义内容。该插件的主要用途是添加样板文件,如版权信息、官方政策、免责声明等,但可能会满足您的需要。

查看tl;dr—;Tags—;WordPress插件,用于将内容注入页面或帖子的插件。

相关推荐

SHORTCODE_ATTS()中的$ATTS参数是什么?

这个WordPress developers reference page for shortcode_atts() 国家:$atts(array)(必选)用户在shortcode标记中定义的属性。但我不理解这个定义。例如,在WP Frontend Profile 插件:$atts = shortcode_atts( [ \'role\' => \'\', ], $atts ); 据我所知,shortcode\