调用wordpress多站点buddypress首页调用全站文章新方法

buddypress  时间:2021-01-14  阅读:()

Wordpress多站点buddypress首页调用全站文章新方法今天专门研究了一下wordpress开通多站点成为一个博客群网站之后安装buddypress成为社区怎样调用全站最新更新的内容到首页的问题。

在《wordpress多站点调用全站所有子站点最新文章函数化》一文中给出一个使用数据库进行调用 同时利用php遍历和冒泡比较的方法获得了一个可以用来实现该功能的方法。但是这种操作还是存在一些不够全面的问题。我们在安装buddypress插件之后整个博客成为一个社区 bp会为wordpress多站点建立一些新的数据表以保存社区的信息并有一些核心函数实现这些信息的调用。

在buddypress中使用if(bp_has_activities(array('action' = 'new_blog_post','max' =get_option('posts_per_page'),'per_page' = get_option('posts_per_page'),'user_id' = 0,'scope' =false,'object'=false,'primary_id'=false))) :whi le(bp_activities()) :bp_the_activity();endwhi le;endif;

来实现如wordpress中query_posts();whi le(have_posts):the_post();endwhi le;一样的文章循环功能。在wordpress的LOOP中的$post换成了$activities_template-activity。我们可以利用里面的很多信息。

废话不多说看看我是怎么实现多站点下全站最新文章调用的

$mu_posts=array();

$i=0;if(bp_has_activities(array('action' = 'new_blog_post','max' =get_option('posts_per_page'),'per_page' = get_option('posts_per_page'),'user_id' = 0,'scope' =false,'object'=false,'primary_id'=false))) :whi le(bp_activities()) :bp_the_activity();

$mu_posts[$i]['blog_id']=$activities_template-activity-item_id;

$mu_posts[$i]['post_id']=$activities_template-activity-secondary_item_id;

$mu_posts[$i]['post_author']=$activities_template-activity-user_nicename;

$i++;//执行结束后 i==1表示有一篇文章第一篇文章的下标为[0]endwhi le;endif;

上面这段代码利用buddypress的特性将一些信息记录在$mu_posts数组中。

?php if( !empty($mu_posts)): ?ul id="blog-post-l ist"class="activity-l ist item-l ist"

?php foreach($mu_posts as$mu_post): ?

?php $blog_id = $mu_post['blog_id'];$post_id = $mu_post['post_id'];$post_author =$mu_post['post_author']; ?

?php $blog_name = get_blog_option($blog_id,'blogname');$blog_url =get_blog_option($blog_id,'siteurl '); ?

?php$post=get_blog_post($blog_id,$post_id);setup_postdata($post); ?l i h1 class="activity-title"a href="?php the_permal ink(); ?" title="?php the_title(); ?"target="_blank"?phpthe_title(); ?/a/h1div class="activity-content"

div class="activity-header"spana href="?php echo get_blog_option(1,'siteurl '); ?/members/?php echo $post_author; ?/"?phpthe_author(); ?/a/span span?phpthe_date(); ?/span

发布在站点spana href="?php echo$blog_url; ?" target="_blank"?php echo$blog_name; ?/a/span ?php if($post-comment_count 0)echo 'spana href="' .get_permal ink(). '#comment"target="_blank"有评论' .$post-comment_count. '条/a/span'; ?

/div div class="activity-inner"

?php

$content=get_the_content();

$content=strip_tags($content,' ');

$content=trim(mb_strimwidth($content,0,500,' '));

//$content=close_html_tags($content);echowpautop($content);

?p class="read-more"a href="?php the_permal ink(); ?" target="_blank"查看原文/a/p

/div

/div

/l i

?phpendforeach; ?

/ul

?phpendif; ?

这一段代码可以放在上面那段代码之后利用之前获取的信息得到文章对应的$blog_id和$post_id再结合wordpress多站点函数就能调用出各种你想要的内容。参考站点南昌大学“前湖之风”周末讲坛联络处博客系统

同时这个地方还用到了setup_postdata($post);这个函数在wordpress中很少被重视我们用get_post($post_id)获取一篇文章之后可以利用setup_postdata($post);函数进行格式化它后面就可以像wordpress中利用the_title()、the_content()等这样在loop循环中使用的和文章相关的函数了。

这一方法我从探索到实现花费了两天时间主要困难在于理解buddypress的数据、函数等同时还会遇到很多系统核心的问题通过不同算法的尝试最终确定了这种有效的调用方式。

HostSailor:罗马尼亚机房,内容宽松;罗马尼亚VPS七折优惠,罗马尼亚服务器95折

hostsailor怎么样?hostsailor成立多年,是一家罗马尼亚主机商家,机房就设在罗马尼亚,具说商家对内容管理的还是比较宽松的,商家提供虚拟主机、VPS及独立服务器,今天收到商家推送的八月优惠,针对所有的产品都有相应的优惠,商家的VPS产品分为KVM和OpenVZ两种架构,OVZ的比较便宜,有这方面需要的朋友可以看看。点击进入:hostsailor商家官方网站HostSailor优惠活动...

无法忍受旧版不兼容PHP7+主题 更换新主题

今天父亲节我们有没有陪伴家人一起吃个饭,还是打个电话问候一下。前一段时间同学将网站账户给我说可以有空更新点信息确保他在没有时间的时候还能保持网站有一定的更新内容。不过,他这个网站之前采用的主题也不知道来源哪里,总之各种不合适,文件中很多都是他多年来手工修改的主题拼接的,并非完全适应WordPress已有的函数,有些函数还不兼容最新的PHP版本,于是每次出现问题都要去排查。于是和他商量后,就抽时间把...

丽萨主机:美国CN2 GIA精品网/KVM/9折,美国原生IP,最低27元/月

丽萨主机怎么样?丽萨主机,团队于2017年成立。成立之初主要做的是 CDN 和域名等相关业务。最近开辟新领域,新增了独立服务器出租、VPS 等业务,为了保证业务质量从一开始就选择了中美之间的 CN2 GIA 国际精品网络,三网回程 CN2 GIA,电信去程 CN2 GIA + BGP 直连智能路由,联通移动去程直连,原生IP。适合对网络要求较高的用户,同时价格也比较亲民。点击进入:丽萨主机官方网站...

buddypress为你推荐
海外虚拟主机国内访问速度较快的海外虚拟主机有哪些呀虚拟主机价格虚拟主机及域名价格?已备案域名查询如何查询网站的域名是否已经备案重庆虚拟空间现在重庆那家主机空间最好?jsp虚拟空间JSP虚拟目录及虚拟路径的配置方法什么是虚拟主机什么是“虚拟主机”?请解释祥细些!虚拟主机服务商哪个虚拟主机的服务商比较好?山东虚拟主机400电话哪家代理商办理得比较好windows虚拟主机windows10用什么虚拟机双线虚拟主机什么是智能双线虚拟主机?联动天下的双线主机有什么优势?
免费网站域名申请 网络域名 php空间租用 万网免费域名 已备案域名出售 3322动态域名 wordpress主机 lunarpages jsp主机 bluehost 鲨鱼机 rak机房 淘宝双十一2018 元旦促销 全站静态化 什么是刀片服务器 阿里校园 100mbps Updog 超级服务器 更多