Câu trả lời:
Nó phụ thuộc. Bạn đã chọn:
Nếu bạn sử dụng mô-đun Fishpig (là một mô-đun tốt), bạn có thể sử dụng http: //www.magentoc Commerce.com/magento-connect/mage-wordpress-integrated-search-4394.html
Giải pháp mới nhất là phát triển tích hợp WordPress của riêng bạn trên Magento :)
Tôi đã sử dụng mô-đun Fishpig trên một loạt các trang web, đã mua trả tiền cho các plugin và đã vui vẻ quảng bá nó trong nhiều năm. Tuy nhiên, tôi không sử dụng nó nữa. Nó làm những gì nó làm tốt, nhưng những gì nó làm là chạy mọi thứ thông qua Magento.
Hãy đối mặt với nó, khách hàng nhìn vào một trang Wordpress và đột nhiên bắt đầu sáng tạo. 'Chúng tôi có thể làm điều này trong Wordpress!', 'Chúng tôi có thể làm điều đó trong cài đặt Wordpress!'. Bạn phải tiếp tục giải thích với họ rằng bình thường, vâng, điều đó dễ thực hiện trong Wordpress .... nhưng việc cài đặt Wordpress của họ không bình thường vì tất cả đều chạy qua chính Magento và điều đó thay đổi mọi thứ.
Vì vậy, ngân hàng các tiện ích Wordpress tùy chỉnh của bạn sẽ không hoạt động, các plugin Wordpress của bên thứ 3 sẽ không hoạt động. Chủ đề và tùy chọn chủ đề sẽ không hoạt động. Trừ khi bạn thực hiện một khối lượng công việc chuyển đổi và đồng hóa chúng thành mô-đun Fishpig.
Theo tôi, một cách tiếp cận tốt hơn là theo cách của James Kemp ( http://wordpress.org/plugins/magento-wordpress-integration/ ) hoặc Richard Feraro ( http://wordpress.org/plugins/mage-enabler / ). Cả hai đều có cùng một cách tiếp cận, cho phép bạn truy cập đối tượng Mage từ Wordpress và kéo bất cứ thứ gì bạn muốn từ Magento vào chủ đề Wordpress của bạn. Nếu bạn nhìn vào các plugin mặc dù, chúng rất đơn giản và không liên quan đến nhiều mã.
Cả hai đều yêu cầu sửa đổi app/code/local/Mage/Core/functions.php
vì cả Wordpress và Magento đều có function __()
phương thức được khai báo. Có những ghi chú chi tiết về nó trên cả hai trang web của tác giả plugin và nó rất dễ dàng. Sau đó bạn có thể bị mắc kẹt trong.
Thật đơn giản, đây là một ví dụ sử dụng plugin James Kemp. Bạn có thể có một chủ đề Wordpress bị loại bỏ với một lượt header.php
thích;
<!DOCTYPE html>
<html class="no-js">
<head>
<?php the_block("head"); ?>
<?php wp_head(); ?>
</head>
<body <?php body_class(); ?>>
Điều này kéo toàn bộ khối đầu Magento của bạn vào tiêu đề Wordpress. Hoàn hảo, không trùng lặp, không có công việc bổ sung. Lưu ý tôi đã thêm wp_head()
bởi vì nếu bạn thêm các plugin Wordpress, họ sẽ có khả năng sử dụng nó như một cái móc và thực tế là có nó trong header.php
tệp Wordpress của bạn .
Tương tự với footer.php;
<?php the_block("footer"); ?>
<?php wp_footer(); ?>
</body>
</html>
Và có khối chân trang Magento của bạn trong Wordpress. Phần còn lại tùy thuộc vào bạn nhưng bạn có quyền tự do thêm nhiều nội dung bổ sung vào bản cài đặt Wordpress của mình như bạn muốn mà không có bất kỳ ràng buộc nào.
Chỉnh sửa - ngày 14 tháng 5
Kể từ khi tôi viết bài này, tôi cũng đã bắt đầu sử dụng Wordpress làm CMS và kéo dữ liệu trở lại vào Magento bằng cách sử dụng plugin Wordpress này - Plugin API JSON http://wordpress.org/plugins/json-api/
Để cung cấp cho bạn một ví dụ mã - mã bên dưới kéo các mục cần thiết trong Wordpress cho loại bài đăng tùy chỉnh được gọi là sự kiện, truy cập vào trường tùy chỉnh trong các bài đăng được gọi là eventdate đặt tất cả chúng trong một mảng, sắp xếp theo ngày và đưa ra danh sách tất cả các sự kiện có liên kết đến từng trang sự kiện trong Wordpress cài đặt. Tôi đã sử dụng nó trong điều hướng chính của trang Magento trong danh sách thả xuống, nó hoạt động rất tốt. Wordpress là do có một API JSON được thêm vào lõi nhưng cho đến nay nó vẫn chưa được phát hành.
<ul>
<?php
$events = json_decode(file_get_contents('http://www.example.com/blog/?json=get_posts&post_type=event'));
$eventList = array();
foreach ( $events->posts as $event_item ) :
$arrayDate = date("ymdHi", strtotime($event_item->custom_fields->eventdate[0] ));
$eventList[$arrayDate]['Title'] = $event_item->title;
$eventList[$arrayDate]['Date'] = date('l jS F', strtotime($event_item->custom_fields->eventdate[0] ));
$eventList[$arrayDate]['Link'] = $event_item->url;
endforeach;
// Key reverse sort to get events in date order
ksort($eventList);
foreach ($eventList as $eventItem) :
echo '<li><a href="'. $eventItem['Link'] .'">'. $eventItem['Title'] .' - '. $eventItem['Date'] .'</a></li>';
endforeach;
?>
</ul>
Chỉnh sửa - ngày 15 tháng 10
Gần đây tôi đã phải thử và sử dụng phương pháp tích hợp này trong một cửa hàng đa sử dụng các thư mục con mã quốc gia giống như trong câu hỏi này của Matthias Zeis;
Số lượt xem hoặc trang web khác nhau trong các thư mục con
Tôi đã xem xét thử tiện ích mở rộng đa cấp Fishpig cho việc này nhưng cuối cùng tôi đã hỏi một câu hỏi trên SO -> /programming/32613815/htaccess-wordpress-under-magento-site-with-multi-lingu- thư mục con
Tôi đã đặt câu trả lời lên đó, nó sử dụng các biến môi trường máy chủ và một số bộ lọc Wordpress. Tôi đã thêm các khối máy chủ .htaccess và Nginx để giúp đỡ.
Ngoài ra, đối với bất kỳ ai triển khai trang Magento của họ bằng Capistrano và run rẩy trước khả năng có lõi Wordpress được cập nhật liên tục và các plugin gây ô nhiễm repo của họ, tôi đã viết một bài đăng trên blog cho thấy cách bạn có thể chuyển toàn bộ vào thư mục chia sẻ trong Capistrano 3 và chỉ có chủ đề Wordpress của bạn trong repo;
Phần mở rộng tích hợp WordPress của Fishpig. Nó miễn phí, hoạt động tốt, tích hợp chủ đề. Không tích hợp tìm kiếm. Nhưng đó là phương pháp tích hợp tốt nhất mà chúng tôi biết.
Ngoài ra, bạn có thể sử dụng wordgento:
http://wordpress.org/plugins/tristar-wordgento/
Tôi đã sử dụng điều này cho blog của tôi và làm việc rất tốt.
Có một plugin Magento miễn phí cho phép bạn sử dụng nội dung được tạo bằng wordpress bên trong thiết kế Magento của bạn. Điều này cho phép bạn sử dụng sức mạnh của blog Wordpress và nội dung bên trong cửa hàng của bạn. Tôi không biết nếu tìm kiếm cũng trong nội dung wordpress. Xem http: //www.magentoc Commerce.com/magento-connect/wordpress-integration.html để biết thêm chi tiết.