Категория «Разработка»

Разработка - это процесс создания веб-сайта или веб-приложения. Основными этапами процесса являются веб-дизайн, вёрстка страниц, программирование для веб на стороне клиента и сервера, а также конфигурирование веб-сервера. Существуют несколько этапов разработки веб-сайта: проектирование сайта или веб-приложения; разработка креативной концепции сайта; создание дизайн-концепции сайта; создание макетов страниц; создание мультимедиа; вёрстка страниц и шаблонов; программирование или интеграция в систему управления содержимым; оптимизация и размещение материалов сайта; тестирование и внесение корректировок; открытие проекта на публичной площадке; обслуживание работающего сайта или его программной основы.

What layouts are there in Magento 2 Enterprise Edition? Совсем не праздный вопрос для тех кто занимается разработкой интернет магазинов на основе Magento 2. Скажу сразу: всего уникальных layouts в движке Мадженто "из коробки" целых 211 штук. Всегда удобно иметь перед глазами все возможные варианты, поэтому надеюсь, что созданный мной список поможет вам быстрее сориентироваться в поиске и оценке нужного макета.

Для поиска всех макетов использовалась команда

find vendor/magento -wholename "*/view/frontend/layout/*.xml"

Результат этой команды был записан в текстовый файл, из которого, затем, были удалены дубли. Сами макеты были отсортированы в алфавитном порядке.

Итак, список всех макетов (layouts) в Magento 2 EE:

    1. authorizenet_directpost_payment_backendresponse.xml
    2. authorizenet_directpost_payment_redirect.xml
    3. authorizenet_directpost_payment_response.xml
    4. braintree_paypal_review.xml
    5. catalog_category_view_type_default_without_children.xml
    6. catalog_category_view_type_default.xml
    7. catalog_category_view_type_layered_without_children.xml
    8. catalog_category_view_type_layered.xml
    9. catalog_category_view.xml
    10. catalog_product_compare_index.xml
    11. catalog_product_gallery.xml
    12. catalog_product_opengraph.xml
    13. catalog_product_prices.xml
    14. catalog_product_rss_feed_renderer_list.xml
    15. catalog_product_view_type_bundle.xml
    16. catalog_product_view_type_configurable.xml
    17. catalog_product_view_type_downloadable.xml
    18. catalog_product_view_type_giftcard.xml
    19. catalog_product_view_type_grouped.xml
    20. catalog_product_view_type_simple.xml
    21. catalog_product_view_type_virtual.xml
    22. catalog_product_view.xml
    23. CATALOGPERMISSIONS_DISABLED_CATALOG_SEARCH.xml
    24. catalogsearch_advanced_index.xml
    25. catalogsearch_advanced_result.xml
    26. catalogsearch_result_index.xml
    27. checkout_cart_configure_type_bundle.xml
    28. checkout_cart_configure_type_configurable.xml
    29. checkout_cart_configure_type_downloadable.xml
    30. checkout_cart_configure_type_giftcard.xml
    31. checkout_cart_configure_type_simple.xml
    32. checkout_cart_configure.xml
    33. checkout_cart_configurefailed_type_bundle.xml
    34. checkout_cart_configurefailed.xml
    35. checkout_cart_index.xml
    36. checkout_cart_item_renderers.xml
    37. checkout_cart_sidebar_item_price_renderers.xml
    38. checkout_cart_sidebar_item_renderers.xml
    39. checkout_cart_sidebar_total_renderers.xml
    40. checkout_index_index.xml
    41. checkout_item_price_renderers.xml
    42. checkout_onepage_failure.xml
    43. checkout_onepage_paymentmethod.xml
    44. checkout_onepage_review_item_renderers.xml
    45. checkout_onepage_review.xml
    46. checkout_onepage_success.xml
    47. cms_index_defaultindex.xml
    48. cms_index_defaultnoroute.xml
    49. cms_index_index.xml
    50. cms_index_nocookies.xml
    51. cms_index_noroute.xml
    52. cms_page_view.xml
    53. contact_index_index.xml
    54. contact_index_index.xml
    55. customer_account_confirmation.xml
    56. customer_account_create.xml
    57. customer_account_createpassword.xml
    58. customer_account_edit.xml
    59. customer_account_forgotpassword.xml
    60. customer_account_index.xml
    61. customer_account_logoutsuccess.xml
    62. customer_account.xml
    63. customer_address_form.xml
    64. customer_address_index.xml
    65. customer_form_template_handle.xml
    66. cybersource_silentorder_tokenresponse_adminhtml.xml
    67. cybersource_silentorder_tokenresponse.xml
    68. default_head_blocks.xml
    69. default.xml
    70. downloadable_customer_products.xml
    71. magento_advancedcheckout_sku_index.xml
    72. magento_customerbalance_info_index.xml
    73. magento_giftcardaccount_cart_check.xml
    74. magento_giftcardaccount_cart_quickcheck.xml
    75. magento_giftcardaccount_customer_index.xml
    76. magento_giftregistry_email_entity_items.xml
    77. magento_giftregistry_index_addselect.xml
    78. magento_giftregistry_index_edit.xml
    79. magento_giftregistry_index_index.xml
    80. magento_giftregistry_index_items.xml
    81. magento_giftregistry_index_share.xml
    82. magento_giftregistry_search_advanced.xml
    83. magento_giftregistry_search_index.xml
    84. magento_giftregistry_search_results.xml
    85. magento_giftregistry_view_index.xml
    86. magento_invitation_customer_account_create.xml
    87. magento_invitation_index_index.xml
    88. magento_invitation_index_send.xml
    89. magento_reward_customer_info.xml
    90. magento_rma_email_rma_items.xml
    91. magento_rma_guest_addlabel.xml
    92. magento_rma_guest_create.xml
    93. magento_rma_guest_dellabel.xml
    94. magento_rma_guest_returns.xml
    95. magento_rma_guest_view.xml
    96. magento_rma_returns_addlabel.xml
    97. magento_rma_returns_create_handle.xml
    98. magento_rma_returns_create.xml
    99. magento_rma_returns_dellabel.xml
    100. magento_rma_returns_history.xml
    101. magento_rma_returns_returns.xml
    102. magento_rma_returns_view_handle.xml
    103. magento_rma_returns_view.xml
    104. magento_rma_tracking_package.xml
    105. magento_rma_tracking_packageprint.xml
    106. magento_rma_tracking_popup.xml
    107. magento_rma_tracking_printlabel.xml
    108. magento_versionscms_hierarchy_menu_content.xml
    109. magento_versionscms_hierarchy_menu_left_column.xml
    110. magento_versionscms_hierarchy_menu_right_column.xml
    111. msrp_popup.xml
    112. multishipping_checkout_address_editaddress.xml
    113. multishipping_checkout_address_newbilling.xml
    114. multishipping_checkout_address_newshipping.xml
    115. multishipping_checkout_address_select.xml
    116. multishipping_checkout_address_selectbilling.xml
    117. multishipping_checkout_addresses.xml
    118. multishipping_checkout_billing.xml
    119. multishipping_checkout_customer_address.xml
    120. multishipping_checkout_login.xml
    121. multishipping_checkout_overview.xml
    122. multishipping_checkout_register.xml
    123. multishipping_checkout_shipping.xml
    124. multishipping_checkout_success.xml
    125. multishipping_checkout.xml
    126. newsletter_manage_index.xml
    127. page_calendar.xml
    128. paypal_billing_agreement_index.xml
    129. paypal_billing_agreement_view.xml
    130. paypal_express_review_details.xml
    131. paypal_express_review.xml
    132. paypal_payflow_cancelpayment.xml
    133. paypal_payflow_form.xml
    134. paypal_payflow_returnurl.xml
    135. paypal_payflowadvanced_cancelpayment.xml
    136. paypal_payflowadvanced_form.xml
    137. paypal_payflowadvanced_returnurl.xml
    138. paypal_payflowexpress_review.xml
    139. print.xml
    140. response_failure.xml
    141. response_success.xml
    142. restriction_index_stub.xml
    143. review_customer_index.xml
    144. review_customer_view.xml
    145. review_product_form_component.xml
    146. review_product_list.xml
    147. review_product_listajax.xml
    148. review_product_view.xml
    149. rss_index_index.xml
    150. sales_email_item_price.xml
    151. sales_email_order_creditmemo_items.xml
    152. sales_email_order_creditmemo_renderers.xml
    153. sales_email_order_invoice_items.xml
    154. sales_email_order_invoice_renderers.xml
    155. sales_email_order_items.xml
    156. sales_email_order_renderers.xml
    157. sales_email_order_shipment_items.xml
    158. sales_email_order_shipment_renderers.xml
    159. sales_guest_creditmemo.xml
    160. sales_guest_form.xml
    161. sales_guest_invoice.xml
    162. sales_guest_print.xml
    163. sales_guest_printcreditmemo.xml
    164. sales_guest_printinvoice.xml
    165. sales_guest_printshipment.xml
    166. sales_guest_reorder.xml
    167. sales_guest_shipment.xml
    168. sales_guest_view.xml
    169. sales_order_creditmemo_renderers.xml
    170. sales_order_creditmemo.xml
    171. sales_order_guest_info_links.xml
    172. sales_order_history.xml
    173. sales_order_info_links.xml
    174. sales_order_info_rma_links_guest.xml
    175. sales_order_info_rma_links.xml
    176. sales_order_invoice_renderers.xml
    177. sales_order_invoice.xml
    178. sales_order_item_price.xml
    179. sales_order_item_renderers.xml
    180. sales_order_print_creditmemo_renderers.xml
    181. sales_order_print_invoice_renderers.xml
    182. sales_order_print_renderers.xml
    183. sales_order_print_shipment_renderers.xml
    184. sales_order_print.xml
    185. sales_order_printcreditmemo.xml
    186. sales_order_printinvoice.xml
    187. sales_order_printshipment.xml
    188. sales_order_reorder.xml
    189. sales_order_shipment_renderers.xml
    190. sales_order_shipment.xml
    191. sales_order_view.xml
    192. search_term_popular.xml
    193. sendfriend_product_send.xml
    194. shipping_tracking_popup.xml
    195. swagger_index_index.xml
    196. transparent_payment_response.xml
    197. vault_cards_listaction.xml
    198. wishlist_email_items.xml
    199. wishlist_email_rss.xml
    200. wishlist_index_configure_type_bundle.xml
    201. wishlist_index_configure_type_configurable.xml
    202. wishlist_index_configure_type_giftcard.xml
    203. wishlist_index_configure_type_grouped.xml
    204. wishlist_index_configure_type_simple.xml
    205. wishlist_index_configure.xml
    206. wishlist_index_index.xml
    207. wishlist_index_share.xml
    208. wishlist_search_index.xml
    209. wishlist_search_results.xml
    210. wishlist_search_view.xml
    211. wishlist_shared_index.xml

Отладка php на удаленном сервере актуальное для web разработчика умение, так как без него практически невозможно корректно и быстро находить проблемные места в коде php-скриптов. И если с дибаггингом php кода на "удаленном сервере" работающем на локальной машине в рамках VirtualBox или OpenServer все прозрачно и понятно, то что делать с сайтами расположенными не на компьютере девелопера? Например, в облаке (cloud/клауде)? Давайте рассмотрим этот вопрос более подробно с использованием PhpStorm.

Итак, мы имеем веб сервер LAMP развернутый с помощью панели VestCP и расположенный не на компьютере web программиста, а где-то "далеко-далеко", то есть это: не Docker, не Vagrant, не VirtualBox и не OpenServer.

Чтобы все "взлетело", нам необходимы следующие условия:

  • на сервере установлен Xdebug
  • у нас есть доступ по ssh
  • xdebug подключен в php.ini

Остановимся и уточним: xdebug должен быть подключен в php.ini для Apache! В рамках VestaCP файл php.ini может быть, как минимум, в трех местах:

  • /etc/php/7.2/cli/php.ini
  • /etc/php/7.2/apache2/php.ini
  • /etc/php/7.2/cgi/php.ini

Нам нужно прописать условия использования xdebug конкретно в файле /etc/php/7.2/apache2/php.ini

Само подключение в конце php.ini файла крайне простое, незамысловатое и содержит всего 4 строки:

[xdebug]
zend_extension="/usr/lib/php/20170718/xdebug.so"
xdebug.remote_enable = 1
xdebug.remote_port = 9000
xdebug.remote_host = "127.0.0.1"

В работе с отладкой php кода на не локальном сервере есть одна тонкость: на этот сервер необходимо пробросить ssh-тонель, для определенного пользователя и на определенные порты. Без этого тоннеля у вас ничего не получится! Хотя на том же OpenServer вам ssh-тоннель не нужен.

Пробрасывать тоннель не очень сложно, хотя для работающих на Windows позамороченнее: им придется использовать putty. Ну а для линуксоидов проброс тоннеля между удаленным сервером и локальной машиной выглядит вот так:

ssh -R 9000:localhost:9000 USER@SERVER-IP

Итак, xdebug на сервере установлен, в php.ini условия его использования прописаны, тоннель на удаленный сервер с машины разработчика проброшен. Осталось только настроить PhpStorm и шагов будет всего два:

  1. Подключение удаленного интерпретатора php
  2. Создание конфигурации PHP Remote Debug

Настройка удаленного php интерпретатора в PhpStorm

Создание PHP Remote Debug в PhpStorm

На этом все. Включаете в вашем браузере зеленую жукабру Xdebug helper, устанавливаете точки останова breakpoint и можете отлаживать свой сайт.

У начинающих разработчиков, при создании новой темы для Magento 2 может возникнуть непонятная ситуация: тема унаследована от какой-либо родительской (blank или luma), но на главной странице интернет-магазина пропали товары. В родительской теме они видны, а в новой, собственной разработки их нет. Как так? Ведь новая тема содержит всего 3 файла: composer.json, registration.php и theme.xml.

Работа с кодом интернет-магазина – это очень ответственный процес, так как любые проблемы в его последующей работе грозит его владельцам финансовыми или имиджевыми потерями. В связи с чем, работа «на живом», боевом сайте без отладки на тестовом сервере – это всегда высокий риск. Практика проверки или анализа работоспособности php-скриптов с помощью отладчика Xdebug – важнейший этап в жизненном цикле любого ресурса электронной коммерции.

Оформление писем отсылаемых клиентам интернет-магазина в соответствии с общим дизайном сайта — это неотъемлемая часть по формированию имиджа торговой системы. Работа эта достаточно кропотливая и требующая знания определенных тонкостей. Давайте попробуем разобраться с этим вопросом пошагово и с использованием скриншотов.

всего статей: 22