Jaka jest najlepsza strategia integracji WordPress z Magento?

22

Szukam najlepszego sposobu na zintegrowanie WordPressa z Magento.

Najpierw chciałbym, aby WordPress używał Nagłówka i Stopki Magento.

Po drugie, chciałbym, aby użytkownik mógł jednocześnie wyszukiwać w Magento i WordPress. I nie utknąć. Konieczność wyszukiwania danych wejściowych.

jnbdz
źródło

Odpowiedzi:

14

To zależy. Masz wybór:

Jeśli korzystasz z modułu Fishpig (który jest dobrym modułem), możesz użyć http://www.magentocommerce.com/magento-connect/mage-wordpress-integrated-search-4394.html

Najnowszym rozwiązaniem jest opracowanie własnej integracji WordPress na Magento :)

Jacques Bodin-Hullin
źródło
Tak ... mam kłopoty. Mam tylko tydzień. : \
jnbdz
Mój problem z modułem Fichpiga polega na tym, że nie jestem pewien, czy działa on na wielojęzycznym blogu WordPress. Więc nie jestem pewien, czy to będzie działać z tym: codex.wordpress.org/Create_A_Network
jnbdz
Możesz używać WordPress Multisites i zintegrować je z Magento za pomocą rozszerzenia FishPig Multisite
Ben Tideswell
Czy jest jakiś moduł, za pomocą którego mogę zintegrować wordpress w taki sposób, aby klienci mojego sklepu mogli komentować na forum utworzonym przez wordpress bez konieczności logowania się do wordpress?
Jnanaranjan
24

Korzystałem z modułu Fishpig na wielu stronach, kupiłem płatne wtyczki i od lat z radością go promuję. Jednak już go nie używam. Robi to, co robi dobrze, ale to, co robi, to wszystko uruchamia Magento.

Spójrzmy prawdzie w oczy, klient spogląda na stronę Wordpress i nagle zaczyna być kreatywny. „Możemy to zrobić w Wordpress!”, „Możemy to zrobić w instalacji Wordpress!”. Musisz ciągle wyjaśniać im, że normalnie tak, to jest łatwe do zrobienia w Wordpress ... ale że ich instalacja Wordpress nie jest normalna, ponieważ wszystko przebiega przez samo Magento i to wszystko zmienia.

Twój bank niestandardowych widżetów Wordpress nie będzie działał, wtyczki Wordpress innych firm nie będą działać. Motywy i opcje motywów nie będą działać. Chyba że wykonasz mnóstwo pracy, konwertując je i asymilując do modułu Fishpig.

Moim zdaniem znacznie lepszym podejściem jest pójście drogą Jamesa Kempa ( http://wordpress.org/plugins/magento-wordpress-integration/ ) lub Richarda Feraro ( http://wordpress.org/plugins/mage-enabler) / ). Oba mają takie samo podejście, pozwalając ci uzyskać dostęp do obiektu Mag z Wordpress i wciągnąć wszystko, co chcesz z Magento do motywu Wordpress. Jeśli spojrzysz na wtyczki, są one bardzo proste i nie wymagają dużego kodu.

Oba wymagają modyfikacji, app/code/local/Mage/Core/functions.phpponieważ zarówno Wordpress, jak i Magento mają function __()zadeklarowaną metodę. Istnieją szczegółowe informacje na ten temat na obu stronach autorów wtyczek i jest to bardzo łatwe. Potem możesz utknąć.

To takie proste, oto przykład użycia wtyczki Jamesa Kempa. Możesz mieć uproszczony motyw Wordpress z header.phppodobnym;

<!DOCTYPE html>
<html class="no-js">
<head>
    <?php the_block("head"); ?>
    <?php wp_head(); ?>
</head>

<body <?php body_class(); ?>>

Który ciągnie cały blok głowy Magento do nagłówka Wordpress. Idealne, bez powielania, bez dodatkowej pracy. Uwaga Dodałem, wp_head()ponieważ jeśli dodasz wtyczki Wordpress, potencjalnie użyją tego jako haka i dobrą praktyką jest mieć to w header.phppliku Wordpress .

To samo dotyczy footer.php;

    <?php the_block("footer"); ?>
    <?php wp_footer(); ?>

  </body>
</html>

I jest twój blok stopki Magento w Wordpress. Reszta zależy od Ciebie, ale masz swobodę dodawania tyle dodatkowych elementów do instalacji Wordpress, ile chcesz, bez żadnych ograniczeń.

Edycja - 14 maja

Odkąd to napisałem, zacząłem używać Wordpress jako CMS i pobierać dane z powrotem do Magento za pomocą tej wtyczki Wordpress - wtyczki JSON API http://wordpress.org/plugins/json-api/

Aby podać przykład kodu - poniższy kod pobiera wymagane wpisy w Wordpress dla niestandardowego typu postu o nazwie event, uzyskuje dostęp do niestandardowego pola w tych postach o nazwie eventdate umieszcza je wszystkie w tablicy, sortuje je według daty i wyświetla listę wszystkich wydarzenia z linkiem do każdej strony wydarzenia w instalacji Wordpress. Użyłem go w głównej nawigacji strony Magento w menu rozwijanym, działa naprawdę dobrze. Wordpress ma mieć API JSON dodane do rdzenia, ale jak na razie nie zostało wydane.

<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>

Edycja - 15 października

Niedawno musiałem spróbować zastosować tę metodę integracji w wielu sklepach, które korzystały z tych samych podkatalogów z kodem kraju, co w tym pytaniu Matthiasa Zeisa;

Różne widoki sklepów lub strony internetowe w podfolderach

Zastanawiałem się nad wypróbowaniem rozszerzenia Multistore Fishpig, ale w końcu zadałem pytanie na SO -> /programming/32613815/htaccess-wordpress-under-magento-site-with-multi-language- podkatalogi

Umieściłem tam odpowiedź, wykorzystuje zmienne środowiskowe serwera i niektóre filtry Wordpress. Dodałem również bloki serwera .htaccess i Nginx, aby pomóc.

Ponadto dla każdego, kto wdroży swoją stronę Magento przy użyciu Capistrano i dreszczy, mając nadzieję na stale aktualizowany rdzeń Wordpress i wtyczki zanieczyszczające ich repozytorium, napisałem post na blogu pokazujący, jak możesz po prostu przenieść całą działkę do wspólnego katalogu w Capistrano 3 i w repozytorium umieść tylko motyw Wordpress;

http://www.mcnab.co/blog/wordpress-git-and-capistrano-v3/

McNab
źródło
Które z proponowanych wtyczek WordPress najczęściej używasz? Również moje Magento jest w wielu językach.
jnbdz
1
to świetna odpowiedź, gdy poznasz względne zalety i wady korzystania z Fishpig vs. wtyczki Kemp i tak dalej. Użyłem tego ostatniego kilka razy i działa naprawdę dobrze. Fishpig jest jednak dobry ze względu na swoją moc, jeśli masz budżet na zakup dodatkowych funkcji.
Luke Barker
1
@McNab najlepsza rada, jaką kiedykolwiek otrzymałem na
stackexchange
1
@ s_h - najlepszy komentarz jaki kiedykolwiek otrzymałem na stackexchange! Na zdrowie :)
McNab,
1
@JamesKemp - dzięki za wtyczkę! Ułatwiło mi życie, jeśli chodzi o integrację dwóch systemów. Twoje zdrowie.
McNab,
5

Rozszerzenie integracji WordPress z Fishpig. Jest bezpłatny, działa dobrze, integruje motyw. Nie integruje wyszukiwania. Jest to jednak najlepsza znana nam metoda integracji.

Hosting MageMojo Magento
źródło
Ale czy to działa z wieloma językami? Wiele witryn ...
jnbdz
Możesz teraz zintegrować wyszukiwanie również: fishpig.co.uk/magento/wordpress-integration/integrated-search
Ben Tideswell