---
# System prepended metadata

title: Investigate on Estore
tags: [note, estore]

---

# Investigate on Estore
> last update: {{date: m-d}} :calendar:
###### tags: `estore`、`note`
> **ref:**
> :spiral_note_pad: [Eber Trail class](https://mirage-pancake-b50.notion.site/Trail-class-Magento-2-Learning-Step-8192c818af79429e90f41e938731e4fc) 
> :video_camera:  [CMS series turtorial](https://www.youtube.com/playlist?list=PLju9v8YUzEuw-GiKO2OhTSIp0sxe2Dp5K)
> :a: [Adobe Developer](https://developer.adobe.com/commerce/php/tutorials/) 
> :notebook: [Alan Storm note](https://alanstorm.com/category/magento-2/)
>> :spiral_note_pad: [Building-a-complete-module](https://www.toptal.com/magento/magento-2-tutorial-building-a-complete-module)


:::spoiler My Develope Training Plan
- [Hello World Module](https://alanstorm.com/magento_2_mvvm_mvc/) ==12/1==
- [Serving Frontend Files](https://alanstorm.com/magento-2-frontend-files-serving/) and [add to Module](https://alanstorm.com/magento_2_adding_frontend_files_to_your_module/) ==12/2==
- [Provide CRUD Module for Database Access](https://www.thecoachsmb.com/how-to-perform-crud-operations-in-the-module-magento2/) ==12/5==
- [Create a custom REST API](https://developer.adobe.com/commerce/php/tutorials/backend/create-custom-rest-api/) ==12/6==
- [Understanding Object Repositories](https://alanstorm.com/magento_2_understanding_object_repositories/) ==12/7==
- [Understanding Access Control List Rules](https://developer.adobe.com/commerce/php/tutorials/backend/create-access-control-list-rule/) ==12/7==
- [Create Admin Menu Items](https://developer.adobe.com/commerce/php/tutorials/admin/create-admin-page/) ==12/8==
- [Advanced Routing](https://alanstorm.com/magento_2_advanced_routing/) ==12/9==

:::

### Scrum note
- Hi Team/ This's Vito
- today Im working US paypal partical capture/refund is testing now 
- otherwise since the chagne about IPN status is stable sofar I would migrate the code to EU site
<!-- //- stipe report on EU Processing engine -->
- thats all by my side


### Development
::: spoiler cheatcode of Magento2
- php bin/magento module:status
    - to check the status of Modules
- php bin/magento setup:upgrade
    - to refresh the megento's setup
- php bin/magento setup:di:compile
    - re-run Magento compile 
- php bin/magento indexer:reindex
    - reindex all 
:::

- My first Module
    - Magento2 it’s closer to a Model, View, ViewModel (MVVM) system
        - Page → Container
            - Conponent → ==Block==
        - ==Block== is render by '.phtml'
        - phtml ←→ ViewModel
    - Cacahe Clean
        - bin/magento cache:clean
        - (GUI) System -> Cache Management
        - (deleting the server cache files) PATH `var/cache/`
            - (in production) may have to delete `var/generate`
        > rm -rf /path/to/magento/var/generation/*
        > rm -rf /path/to/magento/var/cache/*
    - folder sturcture
        ``` 
        - app
         └- code
          └- ModuleNamespaceA
           |└- ModuleA
           | └- etc
           | |└- model.xml
           | └- registration.php
           └-- ModuleB
            └-- etc
             |└- model.xml
             └- registration.php
        
    - to enable your module
        - with code
            - *etc/config.php*
        ```
        ModuleNamespaceA_ModuleA => 1,
        ModuleNamespaceA_ModuleB => 1
        ```
        - with CMS
            - `Stores -> Configuration -> Advanced -> Advanced -> Disable Modules Output`
    - Adding route to the controller
        - turn off the page cache
            - System -> Cache Management, Page Cache → “Disable”
            - `rm -rf var/page_cache`
        - set `routes.xml`
            ```
            <?xml version="1.0"?>
            <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/App/etc/routes.xsd">
                <router id="standard">
                    <route id="same_as_route_path_in_REST_url" frontName="route_path_in_REST_url">
                        <module name="module_name" />
                    </route>
                </router>
            </config>
        -  `<router id="standard">`
            - `standard` - for frontent route
            - `admin` - for admin route
        - `frontName="route_path_in_REST_url">` - the specific uri are using
            - http://magento.example.com/hello_mvvm/*
        - `id="same_as_route_path_in_REST_url"` for magento identify modules, pls be same as frontName for convention

:::danger
12/01 status

TreviPay\TreviPayMagento\Gateway\Http\Client\AbstractTransaction" not found#0 /var/www/html/vendor/composer/ClassLoader.php(571): include()

:::
    
## Service 
- Notification (Email sending)
    - setting:
        - STRORES > Configuration > ADVANCED > System > Mail Sending Settings > Disable Email Communications
             - ==Yes== to Disable
             - ==No== to Enable
             - ![](https://i.imgur.com/bF9hlwh.png)


- reCAPTCHA ([google recaptcha](https://www.google.com/recaptcha/admin/create))
	- is that mamange by [mageplaza](https://www.mageplaza.com/blog/how-to-add-google-recaptcha-into-magento-2.html)?
	- should it register by my account or there is fromal testing one
	- disable login recaptcha in dev env
	    - {Stores/ Configuration/ Security/ Storefront}
	    - disable for Customer Login: No
    - if want to open it follow [link](https://fog-wildflower-eac.notion.site/6237e4885be14b1bada1675285fcd383)

- SSO login
    - disable login recaptcha in dev env
        - {Stores/ Configuration/ SMC/ SSO Setting}
        - Enable SSO ?: No

- Stripe 
    - its a third-perty payment 
        - [test payment info](https://stripe.com/docs/testing#cards)
    - webhook not been conifg([doc](https://stripe.com/docs/webhooks/go-live))
	    - seems be use for notify estore as payment charged
	- should it register by my account or there is fromal testing one?
- Merchandising
    - query production
    - catagory porduction
    - build production landing page


## CMS
- catelog
    - product
    - Category
        - display in
            - static
            - product lidt
            - both
        - anchor
            - filtere with product
- 更改order status 流程
    - credit memo
        - Sales/ Order
            - invoice
            - credit memo
        > eStore- order for credit memo 筆記

    
## Tool
- using git svn to do version control, [ref doc](https://ithelp.ithome.com.tw/articles/10185625)
    - note
        - ==git svn pull {SVN SERVER RUL}==
        - git checkout -b {BRANCH NAME}
            - name style: {git/svn}-{branch name}-{brach from}
            - i.e. svn-oAuth-master、git-fixTypo-newfeature
        - git commit -a -m "{COMMENT}"
        - git checkout svn-master
        - git merge {BRANCH NAME}
        - ==git svn rebase==
        - ==git svn commit==
    - except the fist and last two command, feel free to enjoy the feature of git
