├── .github
└── no-response.yml
├── .travis.yml
├── CHANGELOG
├── Controller
└── Search
│ └── Result
│ └── Index.php
├── Helper
└── Data.php
├── LICENSE
├── Plugin
└── Controller
│ └── Category
│ └── View.php
├── README.md
├── USER-GUIDE.md
├── UserGuide.pdf
├── composer.json
├── etc
├── acl.xml
├── adminhtml
│ └── system.xml
├── config.xml
├── frontend
│ └── di.xml
└── module.xml
├── i18n
└── en_US.csv
├── registration.php
├── travis.yml
└── view
└── frontend
├── layout
├── catalog_category_view_type_layered.xml
├── catalogsearch_result_index.xml
├── hyva_catalog_category_view.xml
├── hyva_catalog_category_view_type_layered.xml
├── hyva_catalog_list_item.xml
└── hyva_catalogsearch_result_index.xml
├── requirejs-config.js
├── templates
├── hyva
│ ├── layer
│ │ ├── filter.phtml
│ │ ├── state.phtml
│ │ └── view.phtml
│ ├── product
│ │ └── list
│ │ │ ├── js
│ │ │ ├── compare.phtml
│ │ │ └── wishlist.phtml
│ │ │ └── toolbar.phtml
│ └── ui
│ │ └── loading.phtml
├── layer.phtml
├── layer
│ └── view.phtml
└── products.phtml
└── web
├── css
├── hyva
│ └── view.css
└── source
│ └── _module.less
└── js
├── action
└── submit-filter.js
├── model
└── loader.js
└── view
└── layer.js
/.github/no-response.yml:
--------------------------------------------------------------------------------
1 | # Configuration for probot-no-response - https://github.com/probot/no-response
2 |
3 | # Number of days of inactivity before an Issue is closed for lack of response
4 | daysUntilClose: 7
5 | # Label requiring a response
6 | responseRequiredLabel: waiting-customer-response
7 | # Comment to post when closing an Issue for lack of response. Set to `false` to disable
8 | closeComment: >
9 | This issue has been automatically closed because there has been no response
10 | to our request for more information from the original author. With only the
11 | information that is currently in the issue, we don't have enough information
12 | to take action. Please reach out if you have or find the answers we need so
13 | that we can investigate further.
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: php
2 | php:
3 | - 7.0
4 | - 7.1
5 | sudo: required
6 | dist: trusty
7 | env:
8 | global:
9 | - COMPOSER_BIN_DIR=~/bin
10 | - INTEGRATION_SETS=3
11 | - NODE_JS_VERSION=6
12 | - MAGENTO_HOST_NAME="magento2.travis"
13 | - COMPOSER_MODULE=mageplaza/module-ajax-layered-navigation
14 | matrix:
15 | - MAGENTO_VERSION=2.2.1 TEST_SUITE=integration INTEGRATION_INDEX=1
16 | - MAGENTO_VERSION=2.2.1 TEST_SUITE=integration INTEGRATION_INDEX=2
17 | - MAGENTO_VERSION=2.2.1 TEST_SUITE=integration INTEGRATION_INDEX=3
18 | - MAGENTO_VERSION=2.2.2 TEST_SUITE=static
19 | - MAGENTO_VERSION=2.2.2 TEST_SUITE=js GRUNT_COMMAND=static
20 | - MAGENTO_VERSION=2.2.2 TEST_SUITE=integration INTEGRATION_INDEX=1
21 | - MAGENTO_VERSION=2.2.2 TEST_SUITE=integration INTEGRATION_INDEX=2
22 | - MAGENTO_VERSION=2.2.2 TEST_SUITE=integration INTEGRATION_INDEX=3
23 | - MAGENTO_VERSION=2.2.5 TEST_SUITE=integration INTEGRATION_INDEX=1
24 | - MAGENTO_VERSION=2.2.5 TEST_SUITE=integration INTEGRATION_INDEX=2
25 | - MAGENTO_VERSION=2.2.5 TEST_SUITE=integration INTEGRATION_INDEX=3
26 | - MAGENTO_VERSION=2.2.6 TEST_SUITE=integration INTEGRATION_INDEX=1
27 | - MAGENTO_VERSION=2.2.6 TEST_SUITE=integration INTEGRATION_INDEX=2
28 | - MAGENTO_VERSION=2.2.6 TEST_SUITE=integration INTEGRATION_INDEX=3
29 |
30 | matrix:
31 | exclude:
32 | - php: 7.0
33 | env: MAGENTO_VERSION=2.2.2 TEST_SUITE=js GRUNT_COMMAND=static
34 | - php: 7.0
35 | env: MAGENTO_VERSION=2.2.2 TEST_SUITE=static
36 | cache:
37 | apt: true
38 | directories:
39 | - "$HOME/.composer/cache"
40 | - "$HOME/.nvm"
41 | addons:
42 | apt:
43 | packages:
44 | - mysql-server-5.6
45 | - mysql-client-core-5.6
46 | - mysql-client-5.6
47 | - postfix
48 | firefox: '46.0'
49 | hosts:
50 | - magento2.travis
51 | before_install:
52 | - git clone https://github.com/magento/magento2 --branch $MAGENTO_VERSION
53 | - cd magento2
54 | - bash ./dev/travis/before_install.sh
55 | install:
56 | - composer install --no-interaction --prefer-dist
57 | - composer require $COMPOSER_MODULE
58 | before_script:
59 | #- cp -f ${TRAVIS_BUILD_DIR}/dev/tests/integration/phpunit.xml.dist dev/tests/integration/
60 | - echo "vendor/$COMPOSER_MODULE" > dev/tests/static/testsuite/Magento/Test/Less/_files/whitelist/common.txt
61 | - echo "vendor/$COMPOSER_MODULE" > dev/tests/static/testsuite/Magento/Test/Php/_files/whitelist/common.txt
62 | - echo "vendor/$COMPOSER_MODULE/**/*.js" > dev/tests/static/testsuite/Magento/Test/Js/_files/whitelist/magento.txt
63 | - bash ./dev/travis/before_script.sh
64 | script:
65 | - test $TEST_SUITE = "static" && TEST_FILTER='--filter "Magento\\Test\\Php\\LiveCodeTest"' || true
66 | - test $TEST_SUITE = "functional" && TEST_FILTER='dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests.php' || true
67 |
68 |
69 |
--------------------------------------------------------------------------------
/CHANGELOG:
--------------------------------------------------------------------------------
1 | CHANGELOG: https://www.mageplaza.com/releases/ajax-layered-navigation
--------------------------------------------------------------------------------
/Controller/Search/Result/Index.php:
--------------------------------------------------------------------------------
1 | _storeManager = $storeManager;
106 | $this->_catalogSession = $catalogSession;
107 | $this->_queryFactory = $queryFactory;
108 | $this->layerResolver = $layerResolver;
109 | $this->_jsonHelper = $jsonHelper;
110 | $this->_moduleHelper = $moduleHelper;
111 | $this->_helper = $helper;
112 |
113 | parent::__construct($context);
114 | }
115 |
116 | /**
117 | * @return ResponseInterface|ResultInterface|void
118 | * @throws LocalizedException
119 | */
120 | public function execute()
121 | {
122 | $this->layerResolver->create(Resolver::CATALOG_LAYER_SEARCH);
123 | /* @var $query Query */
124 | $query = $this->_queryFactory->get();
125 |
126 | $query->setStoreId($this->_storeManager->getStore()->getId());
127 |
128 | if ($query->getQueryText() !== '') {
129 | if ($this->_helper->isMinQueryLength()) {
130 | $query->setId(0)->setIsActive(1)->setIsProcessed(1);
131 | } else {
132 | $query->saveIncrementalPopularity();
133 | if ($query->getRedirect()) {
134 | $this->getResponse()->setRedirect($query->getRedirect());
135 |
136 | return;
137 | }
138 | }
139 |
140 | $this->_helper->checkNotes();
141 | $this->_view->loadLayout();
142 |
143 | if ($this->_moduleHelper->ajaxEnabled() && $this->getRequest()->isAjax()) {
144 | $navigation = $this->_view->getLayout()->getBlock('catalogsearch.leftnav');
145 | $products = $this->_view->getLayout()->getBlock('search.result');
146 | $result = [
147 | 'products' => $products->toHtml(),
148 | 'navigation' => $navigation->toHtml()
149 | ];
150 | $this->getResponse()->representJson($this->_jsonHelper->jsonEncode($result));
151 | } else {
152 | $this->_view->renderLayout();
153 | }
154 | } else {
155 | $this->getResponse()->setRedirect($this->_redirect->getRedirectUrl());
156 | }
157 | }
158 | }
159 |
--------------------------------------------------------------------------------
/Helper/Data.php:
--------------------------------------------------------------------------------
1 | getConfigGeneral('ajax_enable', $storeId) && $this->isModuleOutputEnabled();
45 | }
46 |
47 | /**
48 | * @param $filters
49 | *
50 | * @return mixed
51 | */
52 | public function getLayerConfiguration($filters)
53 | {
54 | $params = $this->_getRequest()->getParams();
55 | $filterParams = [];
56 | foreach ($params as $key => $param) {
57 | if ($key === 'amp;dimbaar') {
58 | continue;
59 | }
60 | $filterParams[htmlentities($key)] = htmlentities($param);
61 | }
62 | $config = new DataObject([
63 | 'active' => array_keys($filterParams),
64 | 'params' => $filterParams,
65 | 'isCustomerLoggedIn' => $this->objectManager->create(Session::class)->isLoggedIn()
66 | ]);
67 |
68 | return self::jsonEncode($config->getData());
69 | }
70 | }
71 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright © 2016-present Mageplaza Co. Ltd.
2 |
3 | This License is entered by Mageplaza to govern the usage or redistribution of Mageplaza software. This is a legal agreement between you (either an individual or a single entity) and Mageplaza for Mageplaza software product(s) which may include extensions, templates and services.
4 |
5 | By purchasing, installing, or otherwise using Mageplaza products, you acknowledge that you have read this License and agree to be bound by the terms of this Agreement. If you do not agree to the terms of this License, do not install or use Mageplaza products.
6 |
7 | The Agreement becomes effective at the moment when you acquire software from our site or receive it through email or on data medium or by any other means. Mageplaza reserves the right to make reasonable changes to the terms of this license agreement and impose its clauses at any given time.
8 |
9 | 1. GRANT OF LICENSE: By purchasing a product of Mageplaza:
10 |
11 | 1. Customer will receive source code open 100%.
12 |
13 | 2. Customer will obtain a License Certificate which will remain valid until the Customer stops using the Product or until Mageplaza terminates this License because of Customer’s failure to comply with any of its Terms and Conditions. Each License Certificate includes a license serial which is valid for one live Magento installation only and unlimited test Magento installations.
14 |
15 | 3. You are allowed to customize our products to fit with your using purpose.
16 |
17 | 4. DESCRIPTION OF OTHER RIGHTS AND LIMITATIONS
18 |
19 | 5. Installation and Use
20 |
21 | 6. For each new Software installation, you are obliged to purchase a separate License. You are not permitted to use any part of the code in whole or part in any other software or product or website. You are legally bound to preserve the copyright information intact including the text/link at bottom.
22 |
23 | 2. Distribution: You are not allowed to distribute Mageplaza software to third parties. Any distribution without our permission, including non commercial distribution is considered as violation of this Agreement and entails liability, according to the current law. You may not place the Software onto a server that allows access to the Software via a public network or the Internet for distribution purposes.
24 |
25 | 3. Rental: You may not give, sell, sub-license, rent, lease or lend any portion of the Software to anyone.
26 |
27 | 4. Compliance with Applicable Laws: You must comply with all applicable laws regarding use of software products. Mageplaza software and a portion of it are protected by copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. Accordingly, customer is required to treat the software like any other copyrighted material. Any activity violating copyright law will be prosecuted according to the current law. We retain the right to revoke the license of any user holding an invalid license.
28 |
29 | 5. TERMINATION: Without prejudice to any other rights, Mageplaza may terminate this License at any time if you fail to comply with the terms and conditions of this License. In such event, it constitutes a breach of the agreement, and your license to use the program is revoked and you must destroy all copies of Mageplaza products in your possession. After being notified of termination of your license, if you continue to use Mageplaza software, you hereby agree to accept an injunction to prevent you from its further use and to pay all costs (including but not limited to reasonable attorney fees) to enforce our revocation of your license and any damages suffered by us because of your misuse of the Software. We are not bound to return you the amount spent for purchase of the Software for the termination of this License.
30 |
31 | 6. LIMITATION OF LIABILITY: In no event shall Mageplaza be liable for any damages (including, without limitation, lost profits, business interruption, or lost information) rising out of ‘Authorized Users’ use of or inability to use the Mageplaza products, even if Mageplaza has been advised of the possibility of such damages. In no event will Mageplaza be liable for prosecution arising from use of the Software against law or for any illegal use.
32 |
33 | The latest License: https://www.mageplaza.com/LICENSE.txt
--------------------------------------------------------------------------------
/Plugin/Controller/Category/View.php:
--------------------------------------------------------------------------------
1 | moduleManager = $moduleManager;
48 | $this->_moduleHelper = $moduleHelper;
49 | }
50 |
51 | /**
52 | * @param \Magento\Catalog\Controller\Category\View $action
53 | * @param $page
54 | *
55 | * @return mixed
56 | */
57 | public function afterExecute(\Magento\Catalog\Controller\Category\View $action, $page)
58 | {
59 | if ($this->_moduleHelper->ajaxEnabled() && $action->getRequest()->isAjax()) {
60 | $navigation = $page->getLayout()->getBlock('catalog.leftnav');
61 | $products = $page->getLayout()->getBlock('category.products');
62 | $result = ['products' => $products->toHtml(), 'navigation' => $navigation->toHtml()];
63 | if ($this->_moduleHelper->getConfigValue('mpquickview/general/enabled')) {
64 | $quickView = $page->getLayout()->getBlock('mpquickview.quickview');
65 | $result['quickview'] = $quickView->toHtml();
66 | }
67 | $action->getResponse()->representJson(LayerData::jsonEncode($result));
68 | } else {
69 | return $page;
70 | }
71 | }
72 | }
73 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # The #1 Magento 2 Ajax Layered Navigation FREE
2 |
3 | Product filtering is one of the most used features which every customer craves on your online store. To clarify, product filtering is an application that buyers select one or multiple product attributes to search for specific products which match their needs.
4 |
5 | On an online store which there is no existence of shopping assistants, customers need nothing but an effective product filtering/searching tool. It would seem strange if your Magento 2 store had no **Layered Navigation** because other e-commerce websites, today, are even trying to enhance their filtering systems to optimize UX on their platforms.
6 |
7 | To boost filtering experience for buyers, [Ajax Layered Navigation extension for Magento 2](https://www.mageplaza.com/magento-2-ajax-layered-navigation/) allows filtered products to appear immediately after every single filtering action. Hence, there is no seem-to-be-painfully-long waiting time between each filter, and customers will be more likely to enjoy their time shopping on your store.
8 |
9 |
10 | ## 1. Documentation
11 |
12 | - [Landing Page](https://github.com/mageplaza/magento-2-ajax-layered-navigation)
13 | - [Installation guide](https://www.mageplaza.com/install-magento-2-extension/)
14 | - [User Guide](https://docs.mageplaza.com/ajax-layered-navigation/index.html)
15 | - [Get Support](https://github.com/mageplaza/magento-2-ajax-layered-navigation/issues)
16 |
17 |
18 | ## 2. FAQs
19 |
20 | - **Q: I got an error: Mageplaza_Core has been already defined**
21 |
22 | - A: Read solution: https://github.com/mageplaza/module-core/issues/3
23 |
24 | - **Q: Is Mageplaza Ajax Layered Navigation extension compatible with Layered Navigation for Magento 2?**
25 |
26 | - A: Yes! Ajax Layered Navigation extension is fully compatible with all packages of [Magento 2 Layered Navigation Ultimate](https://www.mageplaza.com/magento-2-layered-navigation-extension/). This compatibility helps enhance UX for shoppers at the highest level.
27 |
28 |
29 | ## 3. How to install Ajax Layered Navigation extension for Magento 2
30 |
31 | ### Install via composer (recommend)
32 |
33 | Run the following command in Magento 2 root folder:
34 |
35 | With Marketing Automation (recommend):
36 | ```
37 | composer require mageplaza/module-ajax-layered-navigation mageplaza/module-smtp
38 | php bin/magento setup:upgrade
39 | php bin/magento setup:static-content:deploy
40 | ```
41 |
42 | Without Marketing Automation:
43 | ```
44 | composer require mageplaza/module-ajax-layered-navigation
45 | php bin/magento setup:upgrade
46 | php bin/magento setup:static-content:deploy
47 | ```
48 |
49 | ## 4. Ajax Layered Navigation highlight features
50 | ### Enhance UX by Ajax Technology
51 |
52 | Visually, Ajax plays an amazing role in your store UX improvement because of many advantages. Ajax, according to [Sequetech](https://www.seguetech.com/ajax-technology/), is a method which helps to exchange and update only one or several parts of a web page without reloading the whole site. As a result, the page loading speed is cut down optimally, and this allows your online shoppers to avoid unnecessary waiting time.
53 |
54 | **Ajax Layered Navigation** is also an answer to the question “How to keep your clients on your store when the internet connection sucks”. They will no longer need to wait for all the data to be loaded before performing any of other actions on the page.
55 |
56 | As **Ajax Layered Navigation** enables pages to prevent performing a full postback, filtering products are more responsive, faster and way more user-friendly. This is how shopping experience is boosted.
57 |
58 | ### Lightening-fast Ajax Navigation
59 |
60 | Filtered products are loaded and displayed nearly immediately after a single filtering performance without waiting for other parts of the page to be reloaded. This allows the important content, which includes products, product images, and other product info, to show up first, and to be ready for buyers to perform further actions.
61 |
62 | **Ajax Layered Navigation** saves a bunch of time for customers. Buyers do not even have to hit any button to start loading filtering results because they are automatically loaded after every single filtering act.
63 |
64 | ### Ajax Add to Wishlist
65 |
66 | **Magento 2 Ajax Layered Navigation extension** allows logged-in customers add products to their wishlist, yet still stay on the page without being redirected to the wishlist page.
67 |
68 | ### Compatible with Layered Navigation
69 |
70 | **Mageplaza Ajax Layered Navigation extension** is fully compatible with all packages of **Magento 2 Layered Navigation Ultimate**. This feature implemented to **Mageplaza Layered Navigation module** is a perfect solution to boost shopping experience to the highest level.
71 |
72 | Even when shopper performs multi-filtering, Ajax Layered still supports to display results nicely, smoothly and lightening-fast.
73 |
74 | ## 5. Ajax Layered Navigation User Guide
75 |
76 | **Ajax Layered Navigation** features are added to filters and page blocks, which assists users to select each attribute from filters and various categories without reloading the entire page. As a result, it will enhance the user experience, reduce response and server uploading time. This is the new feature of **Magento 2 Ajax Layered Navigation** which fully compatible with **Layered Navigation Ultimate**.
77 |
78 | The Ajax Layered Navigation tutorial of Mageplaza below will provide detailed instruction on how to use for user interface and how to configure on the admin backend.
79 |
80 |
81 | ### How to Config Magento 2 Ajax Layered Navigation
82 |
83 | From the admin panel, make your way to ``Mageplaza > Layered Navigation > Configuration``
84 |
85 | 
86 |
87 | 
88 |
89 | 
90 |
91 | Besides, Ajax Layered supports the functions of Add to wishlist by Ajax for logged-in customers.
92 | After clicking on Add to wishlist icon on Category Page, customers can continue viewing other products without being navigated to Wishlist Page.
93 |
94 | 
95 |
96 |
97 | **People Also Search:**
98 | - magento 2 layered navigation
99 | - magento 2 layered navigation free
100 | - magento 2 layered navigation extension
101 | - magento 2 layered navigation extension free
102 | - ajax layered navigation magento 2
103 | - magento 2 ajax filter
104 | - magento 2 navigation extension
105 | - magento 2 layer navigation
106 | - magento 2 horizontal layered navigation
107 | - magento 2 price slider layered navigation
108 | - magento 2 ajax loader
109 |
110 |
111 | **Other free extension on Github**
112 | - [Magento 2 Sitemap](https://github.com/mageplaza/magento-2-google-xml-sitemap)
113 | - [Magento 2 Twitter Widget](https://github.com/mageplaza/magento-2-twitter-widget)
114 | - [Magento 2 Reindex from backend](https://github.com/mageplaza/magento-2-backend-reindex)
115 | - [Magento 2 Social Share](https://github.com/mageplaza/magento-2-social-share)
116 | - [Magento 2 Multiple Flat Rates Shipping](https://github.com/mageplaza/magento-2-multi-flat-rates)
117 | - [Magento 2 Same Order Number](https://github.com/mageplaza/magento-2-same-order-number)
118 | - [Magento 2 Share Cart](https://github.com/mageplaza/magento-2-share-cart)
119 | - [Magento 2 GeoIP](https://github.com/mageplaza/magento-2-geoip)
120 |
121 |
122 | **Explore more [Magento 2 extensions on Marketplace](https://marketplace.magento.com/partner/Mageplaza):**
123 | - [Magento 2 Layered Navigation](https://marketplace.magento.com/mageplaza-layered-navigation-m2.html)
124 | - [Magento 2 One Step Checkout](https://marketplace.magento.com/mageplaza-magento-2-one-step-checkout-extension.html)
125 | - [Magento 2 PDF invoice](https://marketplace.magento.com/mageplaza-module-pdf-invoice.html)
126 | - [Magento 2 Automatic Related Products](https://marketplace.magento.com/mageplaza-module-automatic-related-products.html)
127 | - [Magento 2 All in one](https://marketplace.magento.com/mageplaza-magento-2-seo-extension.html)
128 | - [Magento 2 Gift Card](https://marketplace.magento.com/mageplaza-module-gift-card.html)
129 | - [Magento 2 Reward Points extension](https://marketplace.magento.com/mageplaza-module-reward-points.html)
130 | - [Magento 2 Affiliate Program](https://marketplace.magento.com/mageplaza-module-affiliate.html)
131 | - [Magento 2 Product Feed](https://marketplace.magento.com/mageplaza-module-product-feed.html)
132 | - [Magento 2 Mass Product Actions](https://marketplace.magento.com/mageplaza-module-mass-product-actions.html)
133 | - [Magento 2 Custom Stock Status](https://marketplace.magento.com/mageplaza-module-custom-stock-status.html)
134 |
135 |
136 |
137 |
138 |
--------------------------------------------------------------------------------
/USER-GUIDE.md:
--------------------------------------------------------------------------------
1 | ## Documentation
2 |
3 | - Installation guide: https://www.mageplaza.com/install-magento-2-extension/#solution-1-ready-to-paste
4 | - User Guide: https://docs.mageplaza.com/ajax-layered-navigation/index.html
5 | - Product page: https://www.mageplaza.com/magento-2-ajax-layered-navigation/
6 | - FAQs: https://www.mageplaza.com/faqs/
7 | - Get Support: https://www.mageplaza.com/contact.html or support@mageplaza.com
8 | - Changelog: https://www.mageplaza.com/releases/ajax-layered-navigation
9 | - License agreement: https://www.mageplaza.com/LICENSE.txt
10 |
11 | ## How to install
12 |
13 | ### Install ready-to-paste package (Recommended)
14 |
15 | - Installation guide: https://www.mageplaza.com/install-magento-2-extension/
16 |
17 | ## How to upgrade
18 |
19 | 1. Backup
20 |
21 | Backup your Magento code, database before upgrading.
22 |
23 | 2. Remove AjaxLayer folder
24 |
25 | In case of customization, you should backup the customized files and modify in newer version.
26 | Now you remove `app/code/Mageplaza/AjaxLayer` folder. In this step, you can copy override AjaxLayer folder but this may cause of compilation issue. That why you should remove it.
27 |
28 | 3. Upload new version
29 | Upload this package to Magento root directory
30 |
31 | 4. Run command line:
32 |
33 | ```
34 | php bin/magento setup:upgrade
35 | php bin/magento setup:static-content:deploy
36 | ```
37 |
38 |
39 | ## FAQs
40 |
41 |
42 | #### Q: I got error: `Mageplaza_Core has been already defined`
43 | A: Read solution: https://github.com/mageplaza/module-core/issues/3
44 |
45 |
46 | #### Q: My site is down
47 | A: Please follow this guide: https://www.mageplaza.com/blog/magento-site-down.html
48 |
49 |
50 | ## Support
51 |
52 | - FAQs: https://www.mageplaza.com/faqs/
53 | - https://mageplaza.freshdesk.com/
54 | - support@mageplaza.com
55 |
--------------------------------------------------------------------------------
/UserGuide.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mageplaza/magento-2-ajax-layered-navigation/37780e1df51c4ae3f48e21b584bbaca69d7400ff/UserGuide.pdf
--------------------------------------------------------------------------------
/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "mageplaza/module-ajax-layered-navigation",
3 | "description": "Magento 2 Ajax Layered Navigation Extension",
4 | "require": {
5 | "mageplaza/module-core": "^1.5.13"
6 | },
7 | "type": "magento2-module",
8 | "version": "4.1.4",
9 | "license": "proprietary",
10 | "authors": [
11 | {
12 | "name": "Mageplaza",
13 | "email": "support@mageplaza.com",
14 | "homepage": "https://www.mageplaza.com",
15 | "role": "Technical Support"
16 | }
17 | ],
18 | "autoload": {
19 | "files": [
20 | "registration.php"
21 | ],
22 | "psr-4": {
23 | "Mageplaza\\AjaxLayer\\": ""
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/etc/acl.xml:
--------------------------------------------------------------------------------
1 |
2 |
23 |