2012-01-22 23 views
5

Jestem nowy w Magento i potrzebuję jakiegoś konceptualnego przewodnika i/lub referencji. Potrzebuję utworzyć niestandardowy formularz, który będzie częścią strony product-info (na jego spodzie) i będzie zbierać dane wejściowe użytkownika (e-mail, rozmiar, kolor). Tylko niektóre produkty będą miały tę funkcję/formularz (tylko do administratora). Celem tego formularza będzie wysłanie e-maila do sklepu o produkcie, który jest dostępny w magazynie, ale nie ma pożądanego rozmiaru i/lub koloru. Czy powinienem dostosować istniejący formularz Contact us, czy też powinienem utworzyć nowy niestandardowy formularz w nowym module?
Formularz powinien przesłać dane do administratora przez e-mail wraz z nazwą produktu.Niestandardowy formularz magento na stronie produktu

+0

Jeśli akceptujesz, mogę zaoferować tylko opcję e-mail. Nie mam zbyt wiele czasu na pisanie kodu sekcji administratora, aby pokazać go wysłany przez klienta! –

+0

@ Oğuz Thx (Teşekkür ederim :)), które bardzo pomogłyby! – l0lander

+0

rica ederim :) (oznacza twoje powitanie) –

Odpowiedz

1

Ok, więc najpierw utworzyć plik .phtml pod app/projekt/frontend/[nazw]/[tematu] /template/catalog/product/send_request.phtml

następnie dodać ten .phtml odniesienie w pliku catalog.xml w /app/design/frontend/[namespace]/[theme]/layout/catalog.xml

<block type="core/template" name="customer_request" template="catalog/product/send_request.phtml"/>

poniżej: <label>Catalog Product View (Any)</label>

sekcja ale należy znaleźć do prawej sekcji wh Założyć (po kilku próbach)

Na koniec dodaj logikę php do pliku send_request.phtml. Formularz, który zaimplementowałeś w send_request.phtml będzie dostępny na stronie widoku produktu.

+0

W końcu sprawdziło się :) Właśnie użyłem domyślnego formularza kontaktu i skopiowałem go ze swoją ścieżką do mojej ścieżki układowej. Wystąpił jednak problem z podwójnymi cudzysłowami podczas aktualizacji katalogu układu. Zrobiłem debugowanie i dowiadywałem się, że poczta e-mail jest wysyłana tylko wtedy, gdy zamieniam podwójne na pojedyncze cudzysłowy. Możesz zaktualizować odpowiedź, jeśli dowiesz się, że jest to zwykły problem. – l0lander

1

Wygląda na to, że potrzebujesz niestandardowego formularza. Będziesz potrzebował nowej tabeli bazy danych do przechowywania danych, Modelu do reprezentowania danych oraz kontrolera do opublikowania formularza co najmniej. Prawdopodobnie będziesz chciał dodać atrybut do produktów, który jest tak/nie, czy wyświetlić formularz. Prawdopodobnie będziesz także chciał przeglądać dane, więc będziesz musiał tworzyć strony w witrynie administratora. Być może siatka wszystkich odpowiedzi i strona do przeglądania/edycji konkretnej odpowiedzi.

+0

Ohh, zapomniałem wspomnieć, że formularz powinien przesłać dane do administratora przez e-mail więc nie ma potrzeby db. Formularz powinien również być świadomy swojej nadrzędnej strony produktu, aby mógł przesłać nazwę tego produktu. Przepraszam za to. – l0lander

+0

To wszystko. W takim przypadku możesz zignorować części DB i sekcję Administrator.Nadal potrzebujesz adresu URL do publikowania i kodu, który zajmie wpis i przekształci dane w wysłany e-mail. Jeśli nie chcesz pisać tego kodu samodzielnie, możesz skorzystać z usługi takiej jak http://wufoo.com/ lub podobnej, ale jeśli chcesz to zrobić samodzielnie, będziesz musiał stworzyć prosty moduł. Gorąco polecam przeczytanie kilku pierwszych artykułów na stronie http://alanstorm.com/category/magento, w celu uzyskania dobrego samouczka na temat modułów budowlanych. – Max

+0

Dziękuję Max, przepraszam, nie mogłem zaakceptować obu odpowiedzi, Twój link pomógł mi w świetny sposób. To jest piekło tutoriala. Jesteś smutny, że nadal potrzebuję adresu URL do opublikowania postu i kodu, który zajmie wpis i przekształci dane w e-mail, ale czy to nie oznacza, że ​​po przesłaniu formularza przekierujemy się na inną stronę? Czy chcesz, żebym to sformułował w innym pytaniu i zaprosił? – l0lander

0

Dostępne jest bezpłatne rozszerzenie. Możesz użyć tego rozszerzenia i dostosować go do swoich potrzeb. Product Questions

+0

Link do magento connect znów nie działa. Możesz jednak odwołać się do repozytorium github (https://github.com/magebuzz/Magebuzz_ProductQuestion) rozszerzenia. – Earlee

Powiązane problemy