我是编程新手。。。(这个问题绝对是关于编程的,但我用的是wordpress)我试着说清楚:
我有一个基于子域的多站点网络。如果用户发帖子到他们的站点,我会从当前帖子获得一个克隆到我的网络主页。这个克隆有一个规范的url,显示给原始post的内容,post slug也有concur(ID没有)
示例:x用户发布:
url: xusersite.network.com/4243345/this-is-slug-by-post-title
canonical: xusersite.network.com/4243345/this-is-slug-by-post-title
我得到:
url: network.com/123677745/this-is-slug-by-post-title
canonical: xusersite.network.com/4243345/this-is-slug-by-post-title
现在我要在子网站上,通过原始邮件获取克隆邮件的ID。。。所以我有这个密码:
switch_to_blog( 1 );
$canonical = 'xusersite.network.com/4243345/this-is-slug-by-post-title';
$slug = 'this-is-slug-by-post-title'; // current slug
$args = array(
'name' => $slug,
'post_type' => 'post',
'post_status' => 'publish',
'numberposts' => 1
);
$my_posts = get_posts($args);
没关系,但问题是,如果另一个用户的博客标题相同,例如:y user posted:
url: yusersite.network.com/72543/this-is-slug-by-post-title
canonical: yusersite.network.com/72543/this-is-slug-by-post-title
我得到一个帖子,同样的弹头:
url: network.com/776536556733/this-is-slug-by-post-title
canonical: yusersite.network.com/72543/this-is-slug-by-post-title
所以我的php知识就在这里,我可以这样做:
if( $my_posts ) :
$cloneid = $my_posts[0]->ID;
$clonecanonical = wp_get_canonical_url( $cloneid );
if( $clonecanonical == $canonical ) :
$exit = 'true';
else :
$exit = 'false';
endif;
endif;
如果美元退出是假的,我如何得到下一个$MyPoST,因此MyStPr职务(1)-gt;ID?我怎样才能得到正确的$my_帖子?