diff --git a/Rakefile b/Rakefile index a7eb1c57c9b..e0ebd32e8aa 100644 --- a/Rakefile +++ b/Rakefile @@ -14,6 +14,7 @@ require 'colorator' # Load ruby files with helper methods from the 'rakelib/' directory require_relative 'rakelib/link-checker.rb' require_relative 'rakelib/converter.rb' +require_relative 'rakelib/double-slash-check.rb' desc "Same as 'rake', 'rake preview'" task default: %w[preview] diff --git a/_data/whats-new.yml b/_data/whats-new.yml index 30984281297..11b4ef0f3d2 100644 --- a/_data/whats-new.yml +++ b/_data/whats-new.yml @@ -2302,7 +2302,7 @@ entries: versions: 2.x type: Updated date: Mar 24 2017 -- description: '[Tutorial: Order processing](https://devdocs.magento.com/guides/v2.1//rest/tutorials/orders/order-intro.html)' +- description: '[Tutorial: Order processing](https://devdocs.magento.com/guides/v2.1/rest/tutorials/orders/order-intro.html)' versions: 2.1.x type: New date: Mar 23 2017 diff --git a/_plugins/html-check-hook.rb b/_plugins/html-check-hook.rb index a39dae67d01..cdc63262a36 100644 --- a/_plugins/html-check-hook.rb +++ b/_plugins/html-check-hook.rb @@ -6,6 +6,7 @@ # require 'html-proofer' require 'yaml' +require_relative '../rakelib/double-slash-check.rb' Jekyll::Hooks.register :site, :post_write do |site| # Do nothing unless serving mode is enabled diff --git a/guides/v2.0/extension-dev-guide/code-generation.md b/guides/v2.0/extension-dev-guide/code-generation.md index 6ae463a38c4..a39a2219621 100644 --- a/guides/v2.0/extension-dev-guide/code-generation.md +++ b/guides/v2.0/extension-dev-guide/code-generation.md @@ -8,7 +8,7 @@ menu_order: 8 ## Overview of code generation {#codegen-over} -The Magento application generates code to create non-existent classes. As an example, look at the [\\Magento\\Customer\\Model\\Resource\\AddressRepository]({{ site.mage2000url }}/app/code/Magento/Customer/Model/ResourceModel/AddressRepository.php){: target="_blank"} constructor. A snippet follows: +The Magento application generates code to create non-existent classes. As an example, look at the [\\Magento\\Customer\\Model\\Resource\\AddressRepository]({{ site.mage2000url }}app/code/Magento/Customer/Model/ResourceModel/AddressRepository.php){: target="_blank"} constructor. A snippet follows: ... public function __construct( diff --git a/guides/v2.0/frontend-dev-guide/responsive-web-design/rwd_css.md b/guides/v2.0/frontend-dev-guide/responsive-web-design/rwd_css.md index f4f38b05104..afe5f5befae 100644 --- a/guides/v2.0/frontend-dev-guide/responsive-web-design/rwd_css.md +++ b/guides/v2.0/frontend-dev-guide/responsive-web-design/rwd_css.md @@ -14,7 +14,7 @@ Stylesheets are the main tool in responsive web design (RWD) implementation. Thi ## Media queries in Magento default themes {#lib_rwd} -The Blank and Luma theme styles are based on the Magento UI library. The library uses CSS3 media queries, an {% glossarytooltip 55774db9-bf9d-40f3-83db-b10cc5ae3b68 %}extension{% endglossarytooltip %} of the @media rule, to adapt the {% glossarytooltip 73ab5daa-5857-4039-97df-11269b626134 %}layout{% endglossarytooltip %} to the screen width. +The Blank and Luma theme styles are based on the Magento UI library. The library uses CSS3 media queries, an {% glossarytooltip 55774db9-bf9d-40f3-83db-b10cc5ae3b68 %}extension{% endglossarytooltip %} of the @media rule, to adapt the {% glossarytooltip 73ab5daa-5857-4039-97df-11269b626134 %}layout{% endglossarytooltip %} to the screen width. According to the approach implemented in the library, the .media-width() {% glossarytooltip 1a305bdb-9be8-44aa-adad-98758821d6a7 %}mixin{% endglossarytooltip %} can be used in any .less file in your theme, as many times as you need, but it is invoked only once, in lib/web/css/source/lib/_responsive.less. The resulting styles.css has only one call of each media query with all the rules there, instead of multiple calls for the same query. diff --git a/guides/v2.0/frontend-dev-guide/responsive-web-design/rwd_js.md b/guides/v2.0/frontend-dev-guide/responsive-web-design/rwd_js.md index 0d66358ae64..db0a4ff20fb 100644 --- a/guides/v2.0/frontend-dev-guide/responsive-web-design/rwd_js.md +++ b/guides/v2.0/frontend-dev-guide/responsive-web-design/rwd_js.md @@ -18,7 +18,7 @@ The Blank and Luma themes use the following scripts to responsively relocate pag diff --git a/guides/v2.0/frontend-dev-guide/themes/theme-create.md b/guides/v2.0/frontend-dev-guide/themes/theme-create.md index d8140d7d4f6..82ac1c4f0ab 100644 --- a/guides/v2.0/frontend-dev-guide/themes/theme-create.md +++ b/guides/v2.0/frontend-dev-guide/themes/theme-create.md @@ -259,4 +259,4 @@ For information on how to apply the theme for the storefront, see the [Apply and ## See also - * [Uninstall a theme]({{ site.gdeurl }}/install-gde/install/cli/install-cli-theme-uninstall.html) + * [Uninstall a theme]({{ site.gdeurl }}install-gde/install/cli/install-cli-theme-uninstall.html) diff --git a/guides/v2.1/config-guide/config/config-php.md b/guides/v2.1/config-guide/config/config-php.md index db0094b814c..ce6e09f74c6 100644 --- a/guides/v2.1/config-guide/config/config-php.md +++ b/guides/v2.1/config-guide/config/config-php.md @@ -41,7 +41,7 @@ Unlike other [module configuration files]({{ page.baseurl }}/config-guide/config On the top level of this array are *configuration segments*. A segment has arbitrary content (a scalar value or a nested array) distinguished by an arbitrary key—where both the key and its value are defined by the Magento framework. -[Magento\Framework\App\DeploymentConfig]({{ site.mage2000url }}/lib/internal/Magento/Framework/App/DeploymentConfig.php) merely provides access to these sections but does not allow you to extend them. +[Magento\Framework\App\DeploymentConfig]({{ site.mage2000url }}lib/internal/Magento/Framework/App/DeploymentConfig.php) merely provides access to these sections but does not allow you to extend them. On the next hierarchy level, items in each segment are ordered according to the {% glossarytooltip c1e4242b-1f1a-44c3-9d72-1d5b1435e142 %}module{% endglossarytooltip %} sequence definition, which is obtained by merging all modules' configuration files, with the {% glossarytooltip 53da11f1-d0b8-4a7e-b078-1e099462b409 %}exception{% endglossarytooltip %} of disabled modules. diff --git a/guides/v2.1/extension-dev-guide/code-generation.md b/guides/v2.1/extension-dev-guide/code-generation.md index 7a3f5d9ea2d..df9687cebce 100644 --- a/guides/v2.1/extension-dev-guide/code-generation.md +++ b/guides/v2.1/extension-dev-guide/code-generation.md @@ -54,7 +54,7 @@ When code changes as discussed in the preceding section, the Object Manager comp The code compiler compiler creates `var/di/global.ser`, which is a PHP serialized map of all constructor definitions mixed with object linking configuration defined in di.xml. `di.xml` is the dependency injection configuration. There is a global `app/etc/di.xml` and there can one defined for every {% glossarytooltip c1e4242b-1f1a-44c3-9d72-1d5b1435e142 %}module{% endglossarytooltip %}. -[Magento/Customer/Model/Resource/AddressRepository]: {{ site.mage2000url }}/app/code/Magento/Customer/Model/ResourceModel/AddressRepository.php +[Magento/Customer/Model/Resource/AddressRepository]: {{ site.mage2000url }}app/code/Magento/Customer/Model/ResourceModel/AddressRepository.php {:target="_blank"} [production mode]: {{ page.baseurl }}/config-guide/bootstrap/magento-modes.html#production-mode [Instantiating objects with factories]: {{ page.baseurl }}/extension-dev-guide/factories.html diff --git a/guides/v2.1/frontend-dev-guide/css-topics/css_debug.md b/guides/v2.1/frontend-dev-guide/css-topics/css_debug.md index f5178fde750..d651e88d68d 100644 --- a/guides/v2.1/frontend-dev-guide/css-topics/css_debug.md +++ b/guides/v2.1/frontend-dev-guide/css-topics/css_debug.md @@ -64,8 +64,8 @@ The following table describes the grunt commands you can use performing differen Grunt task | Action ---------- | ------- grunt clean | Removes the theme related static files in the `pub/static` and `var` directories. -grunt exec | Republishes symlinks to the source files to the `pub/static/frontend///` directory. -grunt less | Compiles `.css` files using the symlinks published in the `pub/static/frontend///` directory. +grunt exec | Republishes symlinks to the source files to the `pub/static/frontend/` directory. +grunt less | Compiles `.css` files using the symlinks published in the `pub/static/frontend/` directory. grunt watch | Tracks the changes in the source files, recompiles `.css` files, and reloads the page in the browser. {:style="table-layout:auto"} diff --git a/guides/v2.1/frontend-dev-guide/css-topics/theme-ui-lib.md b/guides/v2.1/frontend-dev-guide/css-topics/theme-ui-lib.md index 406177b0050..f86ebce0292 100644 --- a/guides/v2.1/frontend-dev-guide/css-topics/theme-ui-lib.md +++ b/guides/v2.1/frontend-dev-guide/css-topics/theme-ui-lib.md @@ -145,15 +145,15 @@ The documentation is available in a convenient {% glossarytooltip a2aff425-07dd- -[`lib/web/css/docs/source/README.md`]: {{ site.mage2100url }}/lib/web/css/docs/source/README.md +[`lib/web/css/docs/source/README.md`]: {{ site.mage2100url }}lib/web/css/docs/source/README.md -[`lib/web/css/docs`]: {{ site.mage2100url }}/lib/web/css/docs +[`lib/web/css/docs`]: {{ site.mage2100url }}lib/web/css/docs -[`lib/web/css/source/lib/variables/_breadcrumbs.less`]: {{ site.mage2100url }}/lib/web/css/source/lib/variables/_breadcrumbs.less +[`lib/web/css/source/lib/variables/_breadcrumbs.less`]: {{ site.mage2100url }}lib/web/css/source/lib/variables/_breadcrumbs.less -[`lib/web/css/source/lib/variables`]: {{ site.mage2100url }}/lib/web/css/source/lib/variables +[`lib/web/css/source/lib/variables`]: {{ site.mage2100url }}lib/web/css/source/lib/variables -[`lib/web/css`]: {{ site.mage2100url }}/lib/web/css +[`lib/web/css`]: {{ site.mage2100url }}lib/web/css [embedded documentation]: #docs [inherits]: {{ page.baseurl }}/frontend-dev-guide/themes/theme-inherit.html diff --git a/guides/v2.1/frontend-dev-guide/responsive-web-design/rwd_css.md b/guides/v2.1/frontend-dev-guide/responsive-web-design/rwd_css.md index ea9c30ea10f..515855fcbd5 100644 --- a/guides/v2.1/frontend-dev-guide/responsive-web-design/rwd_css.md +++ b/guides/v2.1/frontend-dev-guide/responsive-web-design/rwd_css.md @@ -34,7 +34,7 @@ You can change these breakpoints and add new ones in your custom theme. For inst ## Media queries in Magento default themes {#lib_rwd} -The Blank and Luma theme styles are based on the [Magento UI library]({{ page.baseurl }}/frontend-dev-guide//css-topics/theme-ui-lib.html). The library uses [CSS3 media queries](http://en.wikipedia.org/wiki/Media_queries), an extension of the `@media` rule, to adapt the layout to the screen width. +The Blank and Luma theme styles are based on the [Magento UI library]. The library uses [CSS3 media queries](http://en.wikipedia.org/wiki/Media_queries), an extension of the `@media` rule, to adapt the layout to the screen width. The approach implemented in the Magento UI library, uses `@media-common` style group separation and `.media-width()` mixins which can be used in any `.less` file in a theme, as many times as needed, but it is invoked only once, in `lib/web/css/source/lib/_responsive.less`. The resulting `styles-m.css` and `styles-l.css` both have only one call of each media query with all the rules there, instead of multiple calls for the same query. diff --git a/guides/v2.1/frontend-dev-guide/themes/theme-create.md b/guides/v2.1/frontend-dev-guide/themes/theme-create.md index 8e9afce570a..7cdb7e07b85 100644 --- a/guides/v2.1/frontend-dev-guide/themes/theme-create.md +++ b/guides/v2.1/frontend-dev-guide/themes/theme-create.md @@ -262,4 +262,4 @@ For information on how to apply the theme for the storefront, see the [Apply and ## See also - * [Uninstall a theme]({{ site.gdeurl }}/install-gde/install/cli/install-cli-theme-uninstall.html) + * [Uninstall a theme]({{ site.gdeurl }}install-gde/install/cli/install-cli-theme-uninstall.html) diff --git a/guides/v2.1/javascript-dev-guide/javascript/js_debug.md b/guides/v2.1/javascript-dev-guide/javascript/js_debug.md index 72cb1905ef5..2918630b6f4 100644 --- a/guides/v2.1/javascript-dev-guide/javascript/js_debug.md +++ b/guides/v2.1/javascript-dev-guide/javascript/js_debug.md @@ -64,6 +64,6 @@ There is no `mage/menu.js` in the current theme or parent theme JS files, so the [Using the Inspect Element define the id]: {{site.baseurl}}/common/images/fdg_js_debug1.png [Search the page source for the store.menu string]: {{site.baseurl}}/common/images/fdg_js_debug2.png [assets fallback rules]: {{page.baseurl}}/frontend-dev-guide/themes/theme-inherit.html#theme-inherit-static -[`lib/web/mage/menu.js`]: {{site.mage2100url}}/lib/web/mage/menu.js +[`lib/web/mage/menu.js`]: {{site.mage2100url}}lib/web/mage/menu.js [JavaScript initialization]: {{site.baseurl}}/videos/fundamentals/add-a-javascript-module/ [assets fallback]: {{page.baseurl}}/frontend-dev-guide/themes/theme-inherit.html#theme-inherit-static \ No newline at end of file diff --git a/guides/v2.1/payments-integrations/vault/payment-token.md b/guides/v2.1/payments-integrations/vault/payment-token.md index 7ec00db3bd9..9a54b4919e7 100644 --- a/guides/v2.1/payments-integrations/vault/payment-token.md +++ b/guides/v2.1/payments-integrations/vault/payment-token.md @@ -12,7 +12,7 @@ Magento does not store any private credit card details. It only stores the data This information is stored in Payment Token. -The basic interface for Payment Token is [PaymentTokenInterface]({{ site.mage2100url }}/app/code/Magento/Vault/Api/Data/PaymentTokenInterface.php). +The basic interface for Payment Token is [PaymentTokenInterface]({{ site.mage2100url }}app/code/Magento/Vault/Api/Data/PaymentTokenInterface.php). To retrieve and store token details, you need to implement a [response handler]({{ page.baseurl }}/payments-integrations/payment-gateway/response-handler.html). In the response handler a Payment Token {% glossarytooltip a9027f5d-efab-4662-96aa-c2999b5ab259 %}entity{% endglossarytooltip %} is created and stored in the payment {% glossarytooltip 55774db9-bf9d-40f3-83db-b10cc5ae3b68 %}extension{% endglossarytooltip %} attributes. diff --git a/guides/v2.1/ui_comp_guide/concepts/ui_comp_linking_concept.md b/guides/v2.1/ui_comp_guide/concepts/ui_comp_linking_concept.md index 78333f65cc6..61eb4187d9d 100644 --- a/guides/v2.1/ui_comp_guide/concepts/ui_comp_linking_concept.md +++ b/guides/v2.1/ui_comp_guide/concepts/ui_comp_linking_concept.md @@ -50,7 +50,7 @@ Example of setting `exports` in a component's configuration `.xml` file: ``` -For an example of `exports` usage in Magento code see [`product_form.xml`, line 81]({{ site.mage2100url }}/app/code/Magento/CatalogInventory/view/adminhtml/ui_component/product_form.xml#L81) +For an example of `exports` usage in Magento code see [`product_form.xml`, line 81]({{ site.mage2100url }}app/code/Magento/CatalogInventory/view/adminhtml/ui_component/product_form.xml#L81) ### `imports` @@ -83,7 +83,7 @@ Example of using `imports` in a component's configuration `.xml` file: ``` -For an example of `imports` usage in Magento code see [`product_form.xml`, line 103]({{ site.mage2100url }}/app/code/Magento/CatalogInventory/view/adminhtml/ui_component/product_form.xml#L103) +For an example of `imports` usage in Magento code see [`product_form.xml`, line 103]({{ site.mage2100url }}app/code/Magento/CatalogInventory/view/adminhtml/ui_component/product_form.xml#L103) ### `links` diff --git a/guides/v2.1/ui_comp_guide/concepts/ui_comp_modifier_concept.md b/guides/v2.1/ui_comp_guide/concepts/ui_comp_modifier_concept.md index 08cfa7c0873..7fa50b3cd06 100644 --- a/guides/v2.1/ui_comp_guide/concepts/ui_comp_modifier_concept.md +++ b/guides/v2.1/ui_comp_guide/concepts/ui_comp_modifier_concept.md @@ -5,7 +5,7 @@ title: About PHP modifiers in UI components ## What's in this topic -This topic describes how to use {% glossarytooltip bf703ab1-ca4b-48f9-b2b7-16a81fd46e02 %}PHP{% endglossarytooltip %} modifiers that are the server-side part of [UI components configuration]({{ page.baseurl }}/ui_comp_guide/concepts//ui_comp_config_flow_concept.html). Using modifiers is optional and might be necessary when [static declaration in XML configuration files]({{ page.baseurl }}/ui_comp_guide/concepts/ui_comp_xmldeclaration_concept.html) is not suitable for the tasks. For example, in cases when additional data should be loaded from database. Or the other specific example is the [default product creation form]({{ page.baseurl }}/howdoi/customize_product.html), for which the modifier is a place where validations are added to display only certain fields for certain {% glossarytooltip 6e836354-0067-48ac-84ce-a4ab7c0c492e %}product types{% endglossarytooltip %}. +This topic describes how to use {% glossarytooltip bf703ab1-ca4b-48f9-b2b7-16a81fd46e02 %}PHP{% endglossarytooltip %} modifiers that are the server-side part of [UI components configuration]({{ page.baseurl }}/ui_comp_guide/concepts/ui_comp_config_flow_concept.html). Using modifiers is optional and might be necessary when [static declaration in XML configuration files]({{ page.baseurl }}/ui_comp_guide/concepts/ui_comp_xmldeclaration_concept.html) is not suitable for the tasks. For example, in cases when additional data should be loaded from database. Or the other specific example is the [default product creation form]({{ page.baseurl }}/howdoi/customize_product.html), for which the modifier is a place where validations are added to display only certain fields for certain {% glossarytooltip 6e836354-0067-48ac-84ce-a4ab7c0c492e %}product types{% endglossarytooltip %}. ## General implementation overview diff --git a/guides/v2.2/cloud/release-notes/CloudReleaseNotes2.2.md b/guides/v2.2/cloud/release-notes/CloudReleaseNotes2.2.md index 7ca6248500f..0619abb6304 100644 --- a/guides/v2.2/cloud/release-notes/CloudReleaseNotes2.2.md +++ b/guides/v2.2/cloud/release-notes/CloudReleaseNotes2.2.md @@ -94,7 +94,7 @@ When upgrading to {{site.data.var.ece}} 2.2, consider the following changes in d * The command for generating `config.php` changed in 2.2 from `php bin/magento magento-cloud:scd-dump` to `php vendor/bin/m2-ece-scd-dump`. -* `.magento.app.yaml` has new build and deploy hooks. As part of your upgrade, you should update the `.magento.app.yaml` file with new build and deploy hooks and a set of environment variables. All actions completed by build and deploy are completed by these hooks. For instructions, see [Update .magento.app.yaml]({{ site.baseurl }}/guides/v2.2/cloud/project//project-upgrade.html#update-the-magentoappyaml-file). For additional technical information, we have removed pre-deployment tasks, refined build and deploy tasks, and modified build and deploy variables. +* `.magento.app.yaml` has new build and deploy hooks. As part of your upgrade, you should update the `.magento.app.yaml` file with new build and deploy hooks and a set of environment variables. All actions completed by build and deploy are completed by these hooks. For instructions, see [Update .magento.app.yaml]({{ site.baseurl }}/guides/v2.2/cloud/project/project-upgrade.html#update-the-magentoappyaml-file). For additional technical information, we have removed pre-deployment tasks, refined build and deploy tasks, and modified build and deploy variables. * The deploy variable `GENERATED_CODE_SYMLINK` has been removed. The generated folders `var/generation` and `var/di` have been moved to a `generated/` read-only directory. The folder `var/generation` is now `generated/code` and `var/di` is now `generated/metapackage`. diff --git a/guides/v2.2/extension-dev-guide/code-generation.md b/guides/v2.2/extension-dev-guide/code-generation.md index d2492e75576..c923e07ce6f 100644 --- a/guides/v2.2/extension-dev-guide/code-generation.md +++ b/guides/v2.2/extension-dev-guide/code-generation.md @@ -53,7 +53,7 @@ When code changes as discussed in the preceding section, the Object Manager comp The code compiler creates `generated/metadata/global.php`, which is a PHP serialized map of all constructor definitions mixed with object linking configuration defined in di.xml. `di.xml` is the dependency injection configuration. There is a global `app/etc/di.xml` and there can one defined for every {% glossarytooltip c1e4242b-1f1a-44c3-9d72-1d5b1435e142 %}module{% endglossarytooltip %}. -[Magento/Customer/Model/Resource/AddressRepository]: {{ site.mage2000url }}/app/code/Magento/Customer/Model/ResourceModel/AddressRepository.php +[Magento/Customer/Model/Resource/AddressRepository]: {{ site.mage2000url }}app/code/Magento/Customer/Model/ResourceModel/AddressRepository.php {:target="_blank"} [production mode]: {{ page.baseurl }}/config-guide/bootstrap/magento-modes.html#production-mode [Instantiating objects with factories]: {{ page.baseurl }}/extension-dev-guide/factories.html diff --git a/guides/v2.2/extension-dev-guide/searching-with-repositories.md b/guides/v2.2/extension-dev-guide/searching-with-repositories.md index c3d8fc61d53..11cfc0d8587 100644 --- a/guides/v2.2/extension-dev-guide/searching-with-repositories.md +++ b/guides/v2.2/extension-dev-guide/searching-with-repositories.md @@ -20,7 +20,7 @@ This means that every method call should not rely on previous calls nor should i Any field contained in the repository class must also be stateless. If your repository needs to provide functionality that requires state, such as for caching, use the registry pattern. -A good example that uses this pattern is the [`CustomerRepository`]({{ site.mage2100url }}/app/code/Magento/Customer/Model/ResourceModel/CustomerRepository.php){:target="_blank"} class. +A good example that uses this pattern is the [`CustomerRepository`]({{ site.mage2100url }}app/code/Magento/Customer/Model/ResourceModel/CustomerRepository.php){:target="_blank"} class. ### Search Criteria {#m2devgde-search-criteria} diff --git a/guides/v2.2/frontend-dev-guide/css-topics/css_debug.md b/guides/v2.2/frontend-dev-guide/css-topics/css_debug.md index 4eaa00eac0e..88b35e06c8e 100644 --- a/guides/v2.2/frontend-dev-guide/css-topics/css_debug.md +++ b/guides/v2.2/frontend-dev-guide/css-topics/css_debug.md @@ -63,8 +63,8 @@ The following table describes the grunt commands you can use to perform differen Grunt task | Action ---------- | ------- grunt clean | Removes the theme related static files in the `pub/static` and `var` directories. -grunt exec | Republishes symlinks to the source files to the `pub/static/frontend///` directory. -grunt less | Compiles `.css` files using the symlinks published in the `pub/static/frontend///` directory. +grunt exec | Republishes symlinks to the source files to the `pub/static/frontend/` directory. +grunt less | Compiles `.css` files using the symlinks published in the `pub/static/frontend/` directory. grunt watch | Tracks the changes in the source files, recompiles `.css` files, and reloads the page in the browser. {:style="table-layout:auto"} diff --git a/guides/v2.2/frontend-dev-guide/themes/theme-create.md b/guides/v2.2/frontend-dev-guide/themes/theme-create.md index 9f690235f13..147010f31c5 100644 --- a/guides/v2.2/frontend-dev-guide/themes/theme-create.md +++ b/guides/v2.2/frontend-dev-guide/themes/theme-create.md @@ -262,4 +262,4 @@ For information on how to apply the theme for the storefront, see the [Apply and ## See also - * [Uninstall a theme]({{ site.gdeurl }}/install-gde/install/cli/install-cli-theme-uninstall.html) + * [Uninstall a theme]({{ site.gdeurl }}install-gde/install/cli/install-cli-theme-uninstall.html) diff --git a/guides/v2.2/payments-integrations/vault/payment-token.md b/guides/v2.2/payments-integrations/vault/payment-token.md index c4aea8dc8e6..211a2a6713d 100644 --- a/guides/v2.2/payments-integrations/vault/payment-token.md +++ b/guides/v2.2/payments-integrations/vault/payment-token.md @@ -9,7 +9,7 @@ Magento does not store any private credit card details. It only stores the data This information is stored in Payment Token. -The basic interface for Payment Token is [PaymentTokenInterface]({{ site.mage2100url }}/app/code/Magento/Vault/Api/Data/PaymentTokenInterface.php). +The basic interface for Payment Token is [PaymentTokenInterface]({{ site.mage2100url }}app/code/Magento/Vault/Api/Data/PaymentTokenInterface.php). To retrieve and store token details, you need to implement a [response handler]({{ page.baseurl }}/payments-integrations/payment-gateway/response-handler.html). In the response handler a Payment Token {% glossarytooltip a9027f5d-efab-4662-96aa-c2999b5ab259 %}entity{% endglossarytooltip %} is created and stored in the payment {% glossarytooltip 55774db9-bf9d-40f3-83db-b10cc5ae3b68 %}extension{% endglossarytooltip %} attributes. diff --git a/guides/v2.2/release-notes/ReleaseNotes2.2.6CE.md b/guides/v2.2/release-notes/ReleaseNotes2.2.6CE.md index b20c60de36f..57a329b9410 100644 --- a/guides/v2.2/release-notes/ReleaseNotes2.2.6CE.md +++ b/guides/v2.2/release-notes/ReleaseNotes2.2.6CE.md @@ -1136,7 +1136,7 @@ Our community contributors have made many helpful, minor corrections to spelling * `app/code/Magento/Sales/view/adminhtml/templates/order/totals.phtml`. *Fix submitted by [Pratik Oza](https://github.com/mage2pratik) in pull request [16891](https://github.com/magento/magento2/pull/16891)*. -* Improved product gallery block helper code (`app/code//Catalog/Block/Adminhtml/Product/Helper/Form/Gallery.php`). *Fix submitted by [Valerij Ivashchenko](https://github.com/likemusic) in pull request [16889](https://github.com/magento/magento2/pull/16889)*. +* Improved product gallery block helper code (`app/code/Catalog/Block/Adminhtml/Product/Helper/Form/Gallery.php`). *Fix submitted by [Valerij Ivashchenko](https://github.com/likemusic) in pull request [16889](https://github.com/magento/magento2/pull/16889)*. * Removed duplicated string from `app/code/Magento/ProductVideo/i18n/en_US.csv`. *Fix submitted by [Valerij Ivashchenko](https://github.com/likemusic) in pull request [16882](https://github.com/magento/magento2/pull/16882)*. diff --git a/guides/v2.2/release-notes/ReleaseNotes2.2.6EE.md b/guides/v2.2/release-notes/ReleaseNotes2.2.6EE.md index 07e83025c57..9329d77c363 100644 --- a/guides/v2.2/release-notes/ReleaseNotes2.2.6EE.md +++ b/guides/v2.2/release-notes/ReleaseNotes2.2.6EE.md @@ -1168,7 +1168,7 @@ Our community contributors have made many helpful, minor corrections to spelling * `app/code/Magento/Sales/view/adminhtml/templates/order/totals.phtml`. *Fix submitted by [Pratik Oza](https://github.com/mage2pratik) in pull request [16891](https://github.com/magento/magento2/pull/16891)*. -* Improved product gallery block helper code (`app/code//Catalog/Block/Adminhtml/Product/Helper/Form/Gallery.php`). *Fix submitted by [Valerij Ivashchenko](https://github.com/likemusic) in pull request [16889](https://github.com/magento/magento2/pull/16889)*. +* Improved product gallery block helper code (`app/code/Catalog/Block/Adminhtml/Product/Helper/Form/Gallery.php`). *Fix submitted by [Valerij Ivashchenko](https://github.com/likemusic) in pull request [16889](https://github.com/magento/magento2/pull/16889)*. * Removed duplicated string from `app/code/Magento/ProductVideo/i18n/en_US.csv`. *Fix submitted by [Valerij Ivashchenko](https://github.com/likemusic) in pull request [16882](https://github.com/magento/magento2/pull/16882)*. diff --git a/guides/v2.2/ui_comp_guide/concepts/ui_comp_linking_concept.md b/guides/v2.2/ui_comp_guide/concepts/ui_comp_linking_concept.md index 8b76a737d47..a3f1b7395b3 100644 --- a/guides/v2.2/ui_comp_guide/concepts/ui_comp_linking_concept.md +++ b/guides/v2.2/ui_comp_guide/concepts/ui_comp_linking_concept.md @@ -48,7 +48,7 @@ Example of setting `exports` in a component's configuration `.xml` file: ``` -For an example of `exports` usage in Magento code see [`product_form.xml`, line 81]({{ site.mage2100url }}/app/code/Magento/CatalogInventory/view/adminhtml/ui_component/product_form.xml#L81) +For an example of `exports` usage in Magento code see [`product_form.xml`, line 81]({{ site.mage2100url }}app/code/Magento/CatalogInventory/view/adminhtml/ui_component/product_form.xml#L81) ## `imports` property The `imports` property is used for tracking changes of an external entity property. `imports`'s value is an object, composed of the following: @@ -80,7 +80,7 @@ Example of using `imports` in a component's configuration `.xml` file: ``` -For an example of `imports` usage in Magento code see [`product_form.xml`, line 103]({{ site.mage2100url }}/app/code/Magento/CatalogInventory/view/adminhtml/ui_component/product_form.xml#L103) +For an example of `imports` usage in Magento code see [`product_form.xml`, line 103]({{ site.mage2100url }}app/code/Magento/CatalogInventory/view/adminhtml/ui_component/product_form.xml#L103) ## `links` property diff --git a/guides/v2.3/extension-dev-guide/searching-with-repositories.md b/guides/v2.3/extension-dev-guide/searching-with-repositories.md index 0bc325fcdeb..6f56ea0ac33 100644 --- a/guides/v2.3/extension-dev-guide/searching-with-repositories.md +++ b/guides/v2.3/extension-dev-guide/searching-with-repositories.md @@ -17,7 +17,7 @@ This means that every method call should not rely on previous calls nor should i Any field contained in the repository class must also be stateless. If your repository needs to provide functionality that requires state, such as for caching, use the registry pattern. -A good example that uses this pattern is the [`CustomerRepository`]({{ site.mage2100url }}/app/code/Magento/Customer/Model/ResourceModel/CustomerRepository.php) class. +A good example that uses this pattern is the [`CustomerRepository`]({{ site.mage2100url }}app/code/Magento/Customer/Model/ResourceModel/CustomerRepository.php) class. ### Search Criteria {#m2devgde-search-criteria} diff --git a/guides/v2.3/frontend-dev-guide/themes/theme-create.md b/guides/v2.3/frontend-dev-guide/themes/theme-create.md index a24b672180d..0fbf221f69e 100644 --- a/guides/v2.3/frontend-dev-guide/themes/theme-create.md +++ b/guides/v2.3/frontend-dev-guide/themes/theme-create.md @@ -264,4 +264,4 @@ For information on how to apply the theme for the storefront, see the [Apply and ## See also - * [Uninstall a theme]({{ site.gdeurl }}/install-gde/install/cli/install-cli-theme-uninstall.html) + * [Uninstall a theme]({{ site.gdeurl }}install-gde/install/cli/install-cli-theme-uninstall.html) diff --git a/mftf/2.3/getting-started.md b/mftf/2.3/getting-started.md index f9febdb7871..3d63195f95e 100644 --- a/mftf/2.3/getting-started.md +++ b/mftf/2.3/getting-started.md @@ -300,7 +300,7 @@ allure serve dev/tests/_output/allure-results/ [install Allure]: https://github.com/allure-framework/allure2#download [java]: http://www.oracle.com/technetwork/java/javase/downloads/index.html [mftf tests]: introduction.html#mftf-tests -[php]: {{ site.gdeurl23 }}/install-gde/system-requirements-tech.html#php +[php]: {{ site.gdeurl23 }}install-gde/system-requirements-tech.html#php [PhpStorm]: https://www.jetbrains.com/phpstorm/ [selenium server]: https://www.seleniumhq.org/download/ [Set up a standalone MFTF]: #set-up-a-standalone-mftf diff --git a/rakelib/converter.rb b/rakelib/converter.rb index 818d1936979..8cc771a7fa0 100644 --- a/rakelib/converter.rb +++ b/rakelib/converter.rb @@ -52,14 +52,15 @@ def self.open_in_browser(path) # Locate the output directory, and convert the latest markdown file to HTML. def self.to_html - last_md = FileList["#{LinkChecker::DIR}/*.md"].last + latest_md = + FileList["#{LinkChecker::DIR}/*.md"].max_by { |file| File.mtime file } - print "Reading the #{last_md} ... ".magenta + print "Reading the #{latest_md} ... ".magenta # Change a file extension to .html - html_file = last_md.ext('html') + html_file = latest_md.ext('html') File.open(html_file, 'w') do |file| print 'converting to HTML ... '.magenta - file.write kramdown(content(last_md)) + file.write kramdown(content(latest_md)) file.write CSS end diff --git a/rakelib/double-slash-check.rb b/rakelib/double-slash-check.rb new file mode 100644 index 00000000000..beccb0580b7 --- /dev/null +++ b/rakelib/double-slash-check.rb @@ -0,0 +1,20 @@ +# Custom check for html-proofer to find double forward slashes in URLs. +module LinkChecker + class DoubleSlashCheck < ::HTMLProofer::Check + def slash? + return false if @link.href.nil? + @link.href.match %r{\w//} + end + + def run + @html.css('a').each do |node| + @link = create_element(node) + line = node.line + + if slash? + return add_issue("Remove double forward slashes from URLs", line: line) + end + end + end + end +end