0
我有一個頁面,它可以從同一標籤或類別下的多個博客檢索博客貼。我在檢索blogpost的永久鏈接時遇到問題,它一直重定向到同一個博客,並且說該網頁不存在,即它始終訪問第5行中指出的博客#5並忽略switch語句。我的代碼:該貼的永久鏈接不起作用
<?php
global $wpdb;
global $post;
$tag = $_GET['avain'];
$postarr = array();
switch_to_blog(5);
$blogs = $wpdb->get_results("SELECT blog_id FROM {$wpdb->blogs} WHERE blog_id != {$wpdb->blogid} AND site_id = '{$wpdb->siteid}' AND spam = '0' AND deleted = '0' AND archived = '0'", ARRAY_A);
array_unshift($blogs, 1);
foreach($blogs as $blog) {
$wpdb->set_blog_id($blog[ 'blog_id' ]);
$tax_id = $wpdb->get_var("SELECT term_taxonomy_id FROM $wpdb->term_taxonomy WHERE (taxonomy = 'post_tag' OR taxonomy = 'category') AND term_id IN (SELECT term_id FROM $wpdb->terms WHERE name='$tag')");
$post_id = $wpdb->get_results("SELECT object_id FROM $wpdb->term_relationships WHERE term_taxonomy_id = $tax_id");
foreach ($post_id as $id) {
$postarr[] = $id->object_id;
}
$postsAsCommaSepString = implode(',', $postarr);
$posts = $wpdb->get_results("SELECT * FROM {$wpdb->prefix}posts WHERE ID IN ($postsAsCommaSepString)");
foreach ($posts as $post):setup_postdata($post);
$author = get_the_author();
switch ($author) {
case "Kate":
switch_to_blog(3);
break;
case "Maria":
switch_to_blog(4);
break;
case "Germanica":
switch_to_blog(5);
break;
}
?>
<div class="post"><header class="post-header"><div class="date-holder"><span><?php the_time('j F, Y') ?></span></div>
<a href="<?php echo get_permalink($post->ID); ?>"><?php the_title(); ?></a></header>
<div class="post-content"><?php the_content(); ?></div></div>
<?php endforeach;
wp_reset_postdata();
}
?>
你的問題是缺少一個問題... – Qix 2014-12-07 21:47:34
@Qix的問題是,我需要得到一個正確的重定向到一個正確的blogpost,現在switch語句被忽略,它總是試圖尋找與特定博客#5中的標題,我首先需要根據帖子的作者切換到正確的博客。 – user3125917 2014-12-07 22:14:10