2010-10-07 41 views
11

Tôi có một mạng nhỏ các thiết lập trang web với tính năng nhiều trang của WordPress 3.0. Tôi muốn tạo một trang web khác để kéo các bài đăng nhất định từ các trang web khác nhau để hiển thị. Trang web 'trung tâm' mới này có vẻ như trang web riêng của nó cho người dùng (với ánh xạ miền), nhưng nội dung của nó đến từ các bài đăng từ các trang web khác.Làm cách nào để hiển thị bài đăng từ các trang web khác trong thiết lập nhiều trang WordPress?

Làm cách nào để nhận bài đăng từ một trang web khác trong thiết lập nhiều trang WordPress? Tôi có thể truy vấn các bài đăng dựa trên tên của trang web không? Kết quả cuối cùng cần phải là tập hợp các bài đăng từ các trang web khác nhau được sắp xếp theo ngày.

Cảm ơn sự giúp đỡ của bạn.

Trả lời

2

Điều này sẽ không quá khó khăn để thiết lập với các cuộc gọi cơ sở dữ liệu trực tiếp. Bạn có thể truy vấn các bài đăng từ bất kỳ trang web nào trên bản cài đặt với đối tượng $ wpdb. Xem Displaying Posts Using a Custom Select Query để biết thông tin về cách sử dụng truy vấn cơ sở dữ liệu tùy chỉnh, nhưng hãy nhớ rằng thay vì chọn từ $ wpdb-> bài đăng bạn sẽ cần truy cập vào bảng trang web cụ thể mà bạn muốn bài đăng. Trên một cài đặt Wordpress 3 mặc định, đây sẽ là wp_12_posts trong đó 12 là id trang. Bạn có thể tìm thấy id trong bảng wp_blogs hoặc bằng cách xem cột ID trong phần Trang web của trình đơn quản trị.

17

tôi đã có vấn đề tương tự mà tôi muốn để có được bài đăng từ một blog và hiển thị nó trên một khác mà tôi đã đưa ra các giải pháp sau đây mà bạn có thể sửa đổi một chút để đáp ứng nhu cầu của bạn nếu cần thiết

<?php 
global $switched; 
switch_to_blog(2); //switched to 2 

// Get latest Post 
$latest_posts = get_posts('category=-3&numberposts=6&orderby=post_name&order=DSC'); 
$cnt =0;?> 
<ul> 
    <?php foreach($latest_posts as $post) : setup_postdata($post);?> 
    <li> 
     <a href="<?php echo get_page_link($post->ID); ?>" title="<?php echo $post->post_title; ?>"><?php echo short_title('...', 7); ?></a> 
    </li>         
    <?php endforeach ; ?> 

<?php restore_current_blog(); //switched back to main site ?> 

tôi 'm cũng giới hạn số lượng từ bị loại bỏ nếu bạn không muốn tính năng này sử dụng đơn giản

$post->post_title; 

Hy vọng điều đó sẽ hữu ích.

+0

Bạn cũng nên đọc [tài liệu get_posts] (https://codex.wordpress.org/Function_Reference/setup_postdata); có một số ví dụ tốt ở đó. Kiểm tra phần ví dụ. – mhulse

+0

Không biết về [http://codex.wordpress.org/WPMU_Functions/switch_to_blog] switch_to_blog(), cảm ơn bạn. – bjoster

Các vấn đề liên quan