Moke|墨客

 找回密码
 立即注册
搜索
查看: 6487|回复: 0

在WordPress文章中调用另一个页面内容的方法

[复制链接]

3636

主题

0

回帖

3681

积分

超级版主

Rank: 8Rank: 8

积分
3681
发表于 2016-5-12 18:19:10 | 显示全部楼层 |阅读模式






                随着WordPress的功能越来越强大,我们几乎可以使用WordPress来做任何想做的事(似乎有点夸张了⊙﹏⊙b汗)。
很多时候,也许我们并不需要在一篇文章中调用另一篇文章或单页面的内容(至少大多数人不需要这样做);但是这并不是让我们放弃WordPress强大功能的理由。
我们可以拿WordPress来开发一个电子商务网站,或者来做一个大型的门户网站,这些都不成问题。我们遇到的问题可能是,一些通用的内容如何在 每个文章页面中显示出来?比如电子商务网站中的购买须知、产品介绍、公司介绍等(每个单独的产品可能都具有一些共同的介绍),是否意味着我们每次都要单独 添加这些内容呢?那我们维护起来将会是一项很庞大的工程。
如果我们可以在WordPress文章中调用到另一个页面的内容,那问题不就解决了吗?事实上,我就是这么做的。
思路就是利用了WordPress的自定义栏目这个功能,在需要调用的文章下面添加一个指定的自定义栏目(默认的)和值(需要调用的那个page的别名)。
好了,直接上代码:
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<h1<?php the_title(); ?></h1>
<?php
    the_content();//正常日志内容
    $key = &quot;fireuikey&quot;;//自定义栏目名称
    $fireuiinfo = get_post_meta($post->ID, $key , true);
        if ($fireuiinfo != ''):$fireui_com_key = array('pagename' => $fireuiinfo);//pagename就是需要调用的那个页面的别名,必须是英文
        query_posts($fireui_com_key);
            if (have_posts()) : while(have_posts()) : the_post(); the_content(); endwhile; endif;
        wp_reset_query();
        endif;
endwhile;
endif;
?>
因为当初做这个项目比较急,因此代码可能会比较草率,或者还有其他的方法。但,至少可以肯定的是,我所使用的这个方法到目前为止一直使用良好。
使用方法,上面的代码替换single.php中的主循环部分(当然,你可以根据你模板的实际情况进行调用和添加样式)。添加文章时,同时添加一个 自定义栏目,栏目名称为&rdquo;fireuikey&rdquo;(可以换成任何你喜欢的变量名称,需要同步修改上面的代码!),值就填写需要被调用的page的别名(英 文)。如果自定义栏目为空或者不添加,那么将不会执行调用,默认文章也会完美呈现。
原文地址:http://www.fireui.com/wordpress/call-the-content-of-another-page.html
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

 

 

快速回复 返回顶部 返回列表