ฉันใช้งานเครือข่ายหลายไซต์และฉันได้ตั้งค่าการสืบค้น sql ที่ใช้ swith_to_blog (); และสอบถามการโพสต์
มีวิธีที่ฉันสามารถประกาศแบบสอบถามภายใน WP_Query ใหม่และรวมแบบสอบถามจริงเข้าด้วยกันหรือไม่
โดยทั่วไปถ้าฉันทำสิ่งนี้:
$number1 = new WP_Query($multisitequery);
ฉันสามารถรวมเข้ากับ:
$number2 = new WP_Query($normalquery);
$normalquery
เก็บการตั้งค่าเช่นการแบ่งหน้าต่อส่วนที่ตัดตอนมาชื่อ ฯลฯ ... ในรหัสย่อผลงาน
ฉันต้องการให้รวมโพสต์ที่สอบถามจาก$multisite
แบบสอบถามใหม่ของฉัน
สามารถทำได้หรือไม่ เพียงแค่ต้องการช่วยฉันจากการสร้างการตั้งค่ารหัสย่อใหม่ทั้งหมดฮ่า ๆ
ขอบคุณมากล่วงหน้า Rory
แก้ไข ========
สิ่งที่ฉันมีคือ:
$portfolio = array();
$portfolio = $settings;
เพิ่มเติมฟังก์ชันพอร์ตโฟลิโอของฉัน "หลังจากการตั้งค่า $ ทั้งหมด ['options']" ฉันมี:
$portfolio_query = new WP_Query( $portfolio );
$portfolio_query
ใช้ห่วงแม่แบบหน้า
ฉันต้องการเพิ่มแบบสอบถามพิเศษลงในนี้เช่น:
global $wpdb, $blog_id, $post;
$blogs = $wpdb->get_results( $wpdb->prepare( "SELECT * FROM wp_blogs ORDER BY blog_id" ) );
$globalcontainer = array();
foreach ($blogs as $blog){
switch_to_blog($blog->blog_id);
$globalquery = query_posts($args);
$globalcontainer = array_merge( $globalcontainer, $globalquery );
restore_current_blog();
}
ที่ฉันคิดว่าจะเป็นอาเรย์ที่จะผสานเข้าไปใน$globalcontainer
wp_query();
ดังนั้นในสิ่งที่คุณได้ตอบกลับด้วยทฤษฎีฉันสามารถทำได้โดยง่าย:
$mergedqueryargs = array_merge($portfolio , $globalcontainer);
$portfolio_query = new WP_query($mergedqueryargs);
จะถูกต้องไหม
ข้อสองเกี่ยวกับ array_merge array key overwrite ..... ฉันจะหยุดเขียนทับได้อย่างไร