This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
public:apps:preorder:manual_installation [09.10.18 в 13:21] Артем Куц |
public:apps:preorder:manual_installation [17.03.22 в 04:29] (current) Дария Тяжлова |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Manual installation ====== | ====== Manual installation ====== | ||
- | 1. Add a snippet "simple-preorder-bootstrap.liquid" with code: | + | 1. Add a snippet //"simple-preorder-bootstrap.liquid"// with next code: |
<code> | <code> | ||
+ | <style id="simple_preorder_style"></style> | ||
<script> | <script> | ||
// Bootstrap for Simple Preorder app | // Bootstrap for Simple Preorder app | ||
Line 30: | Line 32: | ||
"inventory_quantity": '{{item.variant.inventory_quantity}}', | "inventory_quantity": '{{item.variant.inventory_quantity}}', | ||
"inventory_management": '{{item.variant.inventory_management}}', | "inventory_management": '{{item.variant.inventory_management}}', | ||
- | "inventory_policy": '{{item.variant.inventory_policy}}' | + | "inventory_policy": '{{item.variant.inventory_policy}}', |
+ | "properties": {{ item.properties | json }} | ||
}, | }, | ||
{% endfor %} | {% endfor %} | ||
] | ] | ||
}, | }, | ||
- | "debug": true, | + | // "startupDelay": 100, |
+ | // "productFormSelector": '/cart/add', | ||
+ | // "productSelector": 'form[action="/cart/add"] [type="submit"]', | ||
+ | // "variantsSelector": 'form[action="/cart/add"] .variants-selector', | ||
+ | // "nativeVariantsSelector": 'form[action="/cart"] [name^="id"]', | ||
+ | // "checkoutSelector": 'form[action="/cart"] [type="submit"][name="checkout"]', | ||
+ | // "updateSelector": 'form[action="/cart"] [type="submit"][name="update"]', | ||
+ | // "updateInputsSelector": 'form[action="/cart"] [name^="updates["]', | ||
+ | // "preorderBadgeContainerSelector": '.product-item__image-wrapper', | ||
+ | // "updateInputsSelector": 'input[name="quantity"]', | ||
+ | // "debug": true, | ||
}; | }; | ||
+ | </script> | ||
+ | |||
+ | <script id="kad-preorder-config-loader"> | ||
+ | (() => { | ||
+ | try { | ||
+ | function loadPersonalConfig() { | ||
+ | let personalConfig = localStorage.getItem('SimplePreorderBootstrap') | ||
+ | if (typeof personalConfig === 'string') { | ||
+ | return JSON.parse(personalConfig) | ||
+ | } | ||
+ | } | ||
+ | |||
+ | function savePersonalConfig(config) { | ||
+ | localStorage.setItem('SimplePreorderBootstrap', JSON.stringify(config, null, 2)) | ||
+ | } | ||
+ | |||
+ | function isDevParamSpecified() { | ||
+ | return new URLSearchParams(window.location.search).get('kad-dev') !== null | ||
+ | } | ||
+ | |||
+ | let personalConfig = loadPersonalConfig() | ||
+ | |||
+ | if (isDevParamSpecified()) { | ||
+ | personalConfig = personalConfig || {} | ||
+ | personalConfig.dev = true | ||
+ | } | ||
+ | |||
+ | if (personalConfig) { | ||
+ | Object.assign(SimplePreorderBootstrap, personalConfig) | ||
+ | savePersonalConfig(personalConfig) | ||
+ | } | ||
+ | } catch (err) {} | ||
+ | })() | ||
+ | </script> | ||
+ | |||
+ | <script id="kad-preorder-injector"> | ||
+ | (() => { | ||
+ | let lastScript = document.getElementById('kad-preorder-injector') | ||
+ | |||
+ | function injectScript(url, type) { | ||
+ | const script = document.createElement('script') | ||
+ | script.src = url | ||
+ | script.type = type || '' | ||
+ | script.async = false | ||
+ | script.defer = true | ||
+ | lastScript = lastScript.parentNode.insertBefore(script, lastScript.nextSibling) | ||
+ | } | ||
+ | |||
+ | if (SimplePreorderBootstrap.dev && SimplePreorderBootstrap.devScriptUrl) { | ||
+ | injectScript(SimplePreorderBootstrap.devScriptUrl, SimplePreorderBootstrap.devScriptType) | ||
+ | } | ||
+ | |||
+ | if (SimplePreorderBootstrap.dataScriptUrl) { | ||
+ | injectScript(SimplePreorderBootstrap.dataScriptUrl, SimplePreorderBootstrap.dataScriptType) | ||
+ | } | ||
+ | |||
+ | if (SimplePreorderBootstrap.settingsScriptUrl) { | ||
+ | injectScript(SimplePreorderBootstrap.settingsScriptUrl, SimplePreorderBootstrap.settingsScriptType) | ||
+ | } | ||
+ | |||
+ | if (SimplePreorderBootstrap.appScriptUrl) { | ||
+ | injectScript(SimplePreorderBootstrap.appScriptUrl, SimplePreorderBootstrap.appScriptType) | ||
+ | } | ||
+ | })() | ||
</script> | </script> | ||
</code> | </code> | ||
- | 2. In the product template "product.liquid" add the code to connect the snippet: | + | |
- | <code> | + | > **Important:** At the very bottom of the snippet in the last line, replace the text "NAME-OF-YOUR-SHOP" with the address of your store from the address bar of the browser when you are in the admin area of the store (like "//**simple-pre-order-demo-shop**//.myshopify.com", and not, for example, "<del>spo-demo.shop</del>"). |
- | <!-- Snippet for Simple Preorder app --> | + | |
- | {% include 'simple-preorder-bootstrap' %} | + | 2. In the theme template //"theme.liquid"// right before the closing tag "</head>" add the code to connect the snippet: |
- | </code> | + | |
- | 3. In the cart template "cart.liquid" add the code to connect the snippet: | + | |
<code> | <code> | ||
<!-- Snippet for Simple Preorder app --> | <!-- Snippet for Simple Preorder app --> | ||
{% include 'simple-preorder-bootstrap' %} | {% include 'simple-preorder-bootstrap' %} | ||
</code> | </code> | ||
- | 4. (Not mandatory) In the snippet adjust the selectors for following buttons: | + | 3. (Not mandatory) In the snippet adjust the selectors for following buttons: |
* productSelector — add to cart button | * productSelector — add to cart button | ||
+ | * variantsSelector — list of variants | ||
* checkoutSelector — checkout button in cart | * checkoutSelector — checkout button in cart | ||
* updateSelector — update cart button | * updateSelector — update cart button | ||
- | If this does not work, please write to support@kad.systems | + | If this does not work, please write to [[support@kad.systems]] |