<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Search widgets adds double language parameter to URL after first search in CMS Development</title>
    <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1224956#M44558</link>
    <description>&lt;DIV class=""&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/485100"&gt;@GvandenAkker&lt;/a&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;You're right that the duplicate language parameter is coming from JavaScript. When the WoodWing search module processes the URL, it's appending the language parameter without checking if it already exists.&lt;/P&gt;&lt;P&gt;To fix this, modify the JavaScript that handles the search parameter updates. Add a check to remove any existing language parameters before appending the new one:&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;let url = new URL(window.location);&lt;BR /&gt;url.searchParams.delete('lang');&lt;BR /&gt;url.searchParams.append('lang', currentLang);&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;Have you tried inspecting the WoodWing module's JavaScript to see where the duplication occurs?&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;HR /&gt;&lt;P&gt;&lt;STRONG&gt;Did my answer help? Please click "Mark as solution" — it helps others and means a lot to me!&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;I use my real experience, community knowledge, and expert tools (including AI when needed) to give the most accurate and human responses.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;TABLE width="100%" cellpadding="10"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD width="21.56479217603912%"&gt;&lt;SPAN class=""&gt;&lt;SPAN class=""&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="amjad_khatri.jpg" style="width: 239px;"&gt;&lt;img src="https://community.hubspot.com/t5/image/serverpage/image-id/161203i32A562F1EC39D091/image-dimensions/239x239?v=v2" width="239" height="239" role="button" title="amjad_khatri.jpg" alt="amjad_khatri.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD width="53.32518337408313%"&gt;&lt;P&gt;&lt;STRONG&gt;Muhammad Amjad&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Senior Consultant • HubSpot + Web Automation Expert&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;A href="https://www.upwork.com/freelancers/amjadkhatri" target="_blank" rel="noopener nofollow noreferrer"&gt;Need HubSpot Help? Send Me a DM&lt;BR /&gt;&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;SPAN class=""&gt;&lt;SPAN class=""&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="free-linkedin-icon-130-thumb" style="width: 23px;"&gt;&lt;img src="https://community.hubspot.com/t5/image/serverpage/image-id/161551i0AE654B00B3E1071/image-dimensions/23x23?v=v2" width="23" height="23" role="button" title="free-linkedin-icon-130-thumb" alt="free-linkedin-icon-130-thumb" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;A href="https://linkedin.com/in/amjadkhatri" target="_blank" rel="noopener nofollow noreferrer"&gt;Connect with me On LinkedIn&lt;/A&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;Specialties:&lt;/STRONG&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;HubSpot CRM Setup &amp;amp; Automation&lt;/LI&gt;&lt;LI&gt;Custom Workflows &amp;amp; Email Marketing&lt;/LI&gt;&lt;LI&gt;API Integrations &amp;amp; Webhooks&lt;/LI&gt;&lt;LI&gt;WordPress + Laravel Development&lt;/LI&gt;&lt;/UL&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;BR /&gt;Available for consulting, troubleshooting &amp;amp; custom HubSpot solutions.&lt;/P&gt;</description>
    <pubDate>Tue, 18 Nov 2025 07:25:39 GMT</pubDate>
    <dc:creator>amjadkhatri</dc:creator>
    <dc:date>2025-11-18T07:25:39Z</dc:date>
    <item>
      <title>Search widgets adds double language parameter to URL after first search</title>
      <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1222932#M44506</link>
      <description>&lt;P&gt;I'm not a developer but still hoping to fix this little bug on our bilangual site. Our search functions well the first time it's used, but after the search, the URL field is prepopulated with a querystring that contains two language parameters. As a result, any subsequent search yields zero results. Does anyknow know where this insertion of parameters is 'controlled'?&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;See: &lt;A href="https://www.woodwing.com/search" target="_blank"&gt;https://www.woodwing.com/search&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 12 Nov 2025 14:29:52 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1222932#M44506</guid>
      <dc:creator>GvandenAkker</dc:creator>
      <dc:date>2025-11-12T14:29:52Z</dc:date>
    </item>
    <item>
      <title>Re: Search widgets adds double language parameter to URL after first search</title>
      <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1222978#M44508</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/485100"&gt;@GvandenAkker&lt;/a&gt;&amp;nbsp;it's hard to assume what would be the problem in this scenario, it would be best if you can contact a developer that can verify the HubL and the JavaScript of the module. The insertion might be coming from the HubL implementation or the JavaScript implementation.&lt;/P&gt;</description>
      <pubDate>Wed, 12 Nov 2025 15:17:16 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1222978#M44508</guid>
      <dc:creator>felixmacaspac</dc:creator>
      <dc:date>2025-11-12T15:17:16Z</dc:date>
    </item>
    <item>
      <title>Re: Search widgets adds double language parameter to URL after first search</title>
      <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1223004#M44510</link>
      <description>&lt;P&gt;Hey &lt;SPAN style="background: var(--ck-color-mention-background); color: var(--ck-color-mention-text);"&gt;&lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/485100"&gt;@GvandenAkker&lt;/a&gt;&lt;/SPAN&gt; &lt;span class="lia-unicode-emoji" title=":waving_hand:"&gt;👋&lt;/span&gt; Thanks for your post. &lt;SPAN style="background: var(--ck-color-mention-background); color: var(--ck-color-mention-text);"&gt;&lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/489302"&gt;@felixmacaspac&lt;/a&gt;&lt;/SPAN&gt; is correct; without more details or access, it is challenging to give a definite answer to your question. — Jaycee&lt;/P&gt;</description>
      <pubDate>Wed, 12 Nov 2025 15:58:21 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1223004#M44510</guid>
      <dc:creator>Jaycee_Lewis</dc:creator>
      <dc:date>2025-11-12T15:58:21Z</dc:date>
    </item>
    <item>
      <title>Re: Search widgets adds double language parameter to URL after first search</title>
      <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1224451#M44540</link>
      <description>&lt;P&gt;The double lang parameter is most likely coming from the front-end, not WoodWing’s internal search engine.&lt;/P&gt;&lt;P&gt;You probably have a language-switcher or code that always appends lang=, even when the URL already has one.&lt;/P&gt;&lt;P&gt;The WoodWing server-side “Locale” config may be set correctly, but because of the duplicated parameter, the search request fails or is interpreted incorrectly.&lt;/P&gt;</description>
      <pubDate>Mon, 17 Nov 2025 06:57:09 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1224451#M44540</guid>
      <dc:creator>Sapna1</dc:creator>
      <dc:date>2025-11-17T06:57:09Z</dc:date>
    </item>
    <item>
      <title>Re: Search widgets adds double language parameter to URL after first search</title>
      <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1224469#M44541</link>
      <description>&lt;P&gt;Thanks all for your suggestions. I thought it might help if I paste the code here?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Search result Module&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="javascript"&gt;{{ require_css(get_asset_url("/woodwing/web/modules/search/style/search-results.css"), { async: true} ) }}
{{ require_js(get_asset_url("/woodwing/web/modules/search/scripts/search-results.js"), { position: "footer" } ) }}

&amp;lt;!-- {% from '/woodwing/web/macros/web-components.html' import add_component %}
{{ add_component('@websites/chip', '/woodwing/web/vendor/components-library/chip/index.esm.js') }}
{{ add_component('@websites/ww-button', '/woodwing/web/vendor/components-library/ww-button/index.esm.js') }}
{{ add_component('@websites/ww-icon', '/woodwing/web/vendor/components-library/ww-icon/index.esm.js') }} --&amp;gt;

{% set module_classes = module.module_settings.top_padding %}
{% set module_classes = module.module_settings.bottom_padding ~ ' ' ~ module_classes %}

&amp;lt;section class="m-search-results smaller-search-results{{ module_classes }}"&amp;gt;
&amp;lt;div class="container"&amp;gt;
&amp;lt;div class="row row--justify-center"&amp;gt;
&amp;lt;div class="col-12 col-sm-8 col-md-6"&amp;gt;
&amp;lt;div class="hs-search-results" data-portal-id="{{ hub_id }}"
data-no-results-message='{{ module.no_results_text|escape|safe }}'
data-translations="{{ module.translations|tojson|escape|safe }}"
data-results-text="{{ module.translations.total_results_text|escape|safe }}"&amp;gt;
&amp;lt;template class="hs-search-results__template"&amp;gt;
&amp;lt;li&amp;gt;
&amp;lt;a class="hs-search-results__url" href=""&amp;gt;
&amp;lt;wcl-chip slot="category" background-color="#F2F4F7"&amp;gt;
&amp;lt;p slot="text" class="hs-search-results__type"&amp;gt;&amp;lt;/p&amp;gt;
&amp;lt;/wcl-chip&amp;gt;
&amp;lt;h5 class="hs-search-results__title"&amp;gt;Content Title&amp;lt;/h5&amp;gt;
&amp;lt;p class="text_size-md text_color-gray-100 hs-search-results__description"&amp;gt;Description&amp;lt;/p&amp;gt;
&amp;lt;wcl-ww-button variant="tertiary" spacing="none" icon-position="right"&amp;gt;
&amp;lt;span class="text_size-md hs-search-results__discover-more"&amp;gt;View this page&amp;lt;/span&amp;gt;
&amp;lt;wcl-ww-icon slot="icon" icon="arrow-right" color="#008697" size="20"&amp;gt;&amp;lt;/wcl-ww-icon&amp;gt;
&amp;lt;wcl-ww-icon slot="icon-hover" icon="arrow-right" color="#008697" size="20"&amp;gt;&amp;lt;/wcl-ww-icon&amp;gt;
&amp;lt;/wcl-ww-button&amp;gt;
&amp;lt;/a&amp;gt;
&amp;lt;/li&amp;gt;
&amp;lt;/template&amp;gt;

&amp;lt;ul id="hsresults" class="hs-search-results__listing"&amp;gt;&amp;lt;/ul&amp;gt;

&amp;lt;div class="hs-search-results__pagination" data-search-path="{{ content.absolute_url }}"&amp;gt;
&amp;lt;ul class="hs-search-results__pages"&amp;gt;&amp;lt;/ul&amp;gt;
&amp;lt;/div&amp;gt;
&amp;lt;/div&amp;gt;
&amp;lt;/div&amp;gt;
&amp;lt;/div&amp;gt;

&amp;lt;/div&amp;gt;
&amp;lt;/section&amp;gt;&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Search result .js code&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="javascript"&gt;let results = (function () {
    const searchResults = function () {
        let hsResultsPage = function (_resultsClass) {
            let params = new URLSearchParams(window.location.search.slice(1));

            function buildResultsPage(_instance) {
                let resultTemplate = _instance.querySelector('.hs-search-results__template'),
                    resultsSection = _instance.querySelector('.hs-search-results__listing'),
                    searchPath = _instance.querySelector('.hs-search-results__pagination').getAttribute('data-search-path'),
                    pagesContainer = _instance.querySelector('.hs-search-results__pages'),
                    paginationWrapper = _instance.querySelector('.hs-search-results__pagination'),
                    translations = _instance.dataset.translations ? JSON.parse(_instance.dataset.translations) : {};

                function getTerm() {
                    return params.get('term') || "";
                }
                function getOffset() {
                    return parseInt(params.get('offset')) || 0;
                }
                function getLimit() {
                    return parseInt(params.get('limit'));
                }
                function addResult(type, title, url, description) {
                    let newResult = document.importNode(resultTemplate.content, true);
                    let truncatedDescription = description;
                    let truncatedCharacterCount = 250;
                    if (description.length &amp;gt;= truncatedCharacterCount) {
                        truncatedDescription = description.substring(0, truncatedCharacterCount) + ' ...';
                    }
                    let button_text = translations.page_read_more;
                    let tag = translations.page_tag
                    if (type === "BLOG_POST" || type === "LISTING_PAGE" ) {
                        button_text = translations.blog_read_more;
                        tag = translations.blog_tag
                    }
  
                    newResult.querySelector('.hs-search-results__title').innerHTML = title;
                    newResult.querySelector('.hs-search-results__url').href = url;
                    newResult.querySelector('.hs-search-results__description').innerHTML = truncatedDescription;
                    newResult.querySelector('.hs-search-results__type').innerHTML = tag;
                    newResult.querySelector('.hs-search-results__discover-more').innerHTML = button_text;
                    resultsSection.appendChild(newResult);
                }
                function showResultCount(data) {
                    let resultsText = _instance.dataset.resultsText;
                    let text = `${data.total} ${resultsText}`;
                    let resultsCountElement = document.createElement('p');

                    resultsCountElement.classList.add('no-margin');
                    resultsCountElement.setAttribute('aria-label', text);
                    resultsCountElement.setAttribute('tabindex', 0);
                    resultsCountElement.innerText = text;

                    _instance.insertBefore(resultsCountElement, resultsSection);
                }
                function fillResults(results) {
                    results.results.forEach(function (result, i) {
                        addResult(result.type, result.title, result.url, result.description);
                    });
                }
                // function emptyPagination() {
                //     prevLink.innerHTML = "";
                //     nextLink.innerHTML = "";
                // }
                function emptyResults(searchedTerm) {
                    let message = _instance.dataset.noResultsMessage.replace('[...]', searchedTerm)
                    resultsSection.innerHTML = message;
                }
                function setSearchBarDefault(searchedTerm) {
                    let searchBars = document.querySelectorAll('.hs-search-field__input');
                    Array.prototype.forEach.call(searchBars, function (el) {
                        el.value = decodeURIComponent(searchedTerm);
                    });
                }
                function httpRequest(term, offset) {
                    let SEARCH_URL = "/_hcms/search?",
                        requestUrl = SEARCH_URL + params,
                        request = new XMLHttpRequest();

                        console.log(requestUrl);

                    request.open('GET', requestUrl, true);
                    request.onload = function () {
                        if (request.status &amp;gt;= 200 &amp;amp;&amp;amp; request.status &amp;lt; 400) {
                            console.log(requestUrl);
                            
                            let data = JSON.parse(request.responseText);
                            setSearchBarDefault(data.searchTerm);
                            if (data.total &amp;gt; 0) {
                                showResultCount(data);
                                fillResults(data);
                                paginate(data);
                            }
                            else {
                                emptyResults(data.searchTerm);
                                // emptyPagination();
                            }
                        }
                        else {
                            console.error('Server reached, error retrieving results.');
                        }
                    };
                    request.onerror = function () {
                        console.error('Could not reach the server.');
                    };
                    request.send();
                }
                function addPagination(totalItems, currentPage, pageSize, maxPages) {
                    // calculate total pages
                    let totalPages = Math.ceil(totalItems / pageSize);

                    // ensure current page isn't out of range
                    if (currentPage &amp;lt; 1) {
                        currentPage = 1;
                    } else if (currentPage &amp;gt; totalPages) {
                        currentPage = totalPages;
                    }

                    let startPage, endPage;
                    if (totalPages &amp;lt;= maxPages) {
                        // total pages less than max so show all pages
                        startPage = 1;
                        endPage = totalPages;
                    } else {
                        // total pages more than max so calculate start and end pages
                        let maxPagesBeforeCurrentPage = Math.floor(maxPages / 2);
                        let maxPagesAfterCurrentPage = Math.ceil(maxPages / 2) - 1;
                        if (currentPage &amp;lt;= maxPagesBeforeCurrentPage) {
                            // current page near the start
                            startPage = 1;
                            endPage = maxPages;
                        } else if (currentPage + maxPagesAfterCurrentPage &amp;gt;= totalPages) {
                            // current page near the end
                            startPage = totalPages - maxPages + 1;
                            endPage = totalPages;
                        } else {
                            // current page somewhere in the middle
                            startPage = currentPage - maxPagesBeforeCurrentPage;
                            endPage = currentPage + maxPagesAfterCurrentPage;
                        }
                    }

                    // calculate start and end item indexes
                    let startIndex = (currentPage - 1) * pageSize;
                    let endIndex = Math.min(startIndex + pageSize - 1, totalItems - 1);

                    // create an array of pages to ng-repeat in the pager control
                    let pages = Array.from(Array((endPage + 1) - startPage).keys()).map(i =&amp;gt; startPage + i);

                    // return object with all pager properties required by the view
                    return {
                        totalItems: totalItems,
                        currentPage: currentPage,
                        pageSize: pageSize,
                        totalPages: totalPages,
                        startPage: startPage,
                        endPage: endPage,
                        startIndex: startIndex,
                        endIndex: endIndex,
                        pages: pages
                    };
                }

                function paginate(results) {
                    let updatedLimit = getLimit() || results.limit;

                    let pagesCount = Math.ceil(results.total / updatedLimit);

                    if (pagesCount &amp;gt; 1) {
                        paginationWrapper.classList.add('pagination');
                    }

                    function hasPreviousPage() {
                        return results.page &amp;gt; 0;
                    }

                    function hasNextPage() {
                        return results.offset &amp;lt; (results.total - updatedLimit);
                    }

                    if (pagesContainer &amp;amp;&amp;amp; pagesCount &amp;gt; 1) {
                        // Prev page button
                        if (hasPreviousPage()) {
                            let prevParams = new URLSearchParams(params.toString());
                            prevParams.set('offset', (results.page * updatedLimit) - parseInt(updatedLimit));
                            
                            let pageNumberWrapper = document.createElement('li');
                            let pageNumber = document.createElement('a');
                            pageNumber.href = searchPath + "?" + prevParams;
                            pageNumber.classList.add('arrow');
                            pageNumber.innerHTML = '&amp;lt;img src="https://26222027.fs1.hubspotusercontent-eu1.net/hubfs/26222027/woodwing-theme-assets/icons/button%20icons/black/arrow-left.svg" alt="←" loading="lazy" width="20" height="20"&amp;gt;';
                            pageNumberWrapper.appendChild(pageNumber);
                            pagesContainer.appendChild(pageNumberWrapper);
                        }
                        
                        let pagination = addPagination(results.total, results.page + 1, updatedLimit, 4);

                        for (let i = pagination.startPage - 1; i &amp;lt; pagination.endPage; i++) {
                            let pageNumberParams = new URLSearchParams(params.toString());
                            pageNumberParams.set('offset', (i * updatedLimit));
                            let pageNumberWrapper = document.createElement('li');

                            if (pagination.currentPage === (i + 1)) {
                                pageNumberWrapper.classList.add('active');
                            }

                            let pageNumber = document.createElement('a');
                            pageNumber.innerHTML = i + 1;
                            pageNumber.href = searchPath + "?" + pageNumberParams;
                            pageNumberWrapper.appendChild(pageNumber);
                            pagesContainer.appendChild(pageNumberWrapper);
                        }

                        // Next page button
                        if (hasNextPage()) {
                            let nextParams = new URLSearchParams(params.toString());
                            nextParams.set('offset', (results.page * updatedLimit) + parseInt(updatedLimit));

                            let pageNumberWrapper = document.createElement('li');
                            let pageNumber = document.createElement('a');
                            pageNumber.href = searchPath + "?" + nextParams;
                            pageNumber.classList.add('arrow');
                            pageNumber.innerHTML = '&amp;lt;img src="https://26222027.fs1.hubspotusercontent-eu1.net/hubfs/26222027/woodwing-theme-assets/icons/button%20icons/black/arrow-right.svg" alt="→" loading="lazy" width="20" height="20"&amp;gt;';
                            pageNumberWrapper.appendChild(pageNumber);
                            pagesContainer.appendChild(pageNumberWrapper);
                        }
                    }
                }
                let getResults = (function () {
                    if (getTerm()) {
                        httpRequest(getTerm(), getOffset());
                    }
                    else {
                        // emptyPagination();
                    }
                })();
            }
            (function () {
                let searchResults = document.querySelectorAll(_resultsClass);
                Array.prototype.forEach.call(searchResults, function (el) {
                    buildResultsPage(el);
                });
            })();
        }

        if (document.attachEvent ? document.readyState === "complete" : document.readyState !== "loading") {
            let resultsPages = hsResultsPage('.hs-search-results');
        }
        else {
            document.addEventListener('DOMContentLoaded', function () {
                let resultsPages = hsResultsPage('.hs-search-results');
            });
        }
    };

    return searchResults;

})();
new results();&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 17 Nov 2025 07:58:03 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1224469#M44541</guid>
      <dc:creator>GvandenAkker</dc:creator>
      <dc:date>2025-11-17T07:58:03Z</dc:date>
    </item>
    <item>
      <title>Re: Search widgets adds double language parameter to URL after first search</title>
      <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1224956#M44558</link>
      <description>&lt;DIV class=""&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/485100"&gt;@GvandenAkker&lt;/a&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;You're right that the duplicate language parameter is coming from JavaScript. When the WoodWing search module processes the URL, it's appending the language parameter without checking if it already exists.&lt;/P&gt;&lt;P&gt;To fix this, modify the JavaScript that handles the search parameter updates. Add a check to remove any existing language parameters before appending the new one:&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;let url = new URL(window.location);&lt;BR /&gt;url.searchParams.delete('lang');&lt;BR /&gt;url.searchParams.append('lang', currentLang);&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;Have you tried inspecting the WoodWing module's JavaScript to see where the duplication occurs?&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;HR /&gt;&lt;P&gt;&lt;STRONG&gt;Did my answer help? Please click "Mark as solution" — it helps others and means a lot to me!&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;I use my real experience, community knowledge, and expert tools (including AI when needed) to give the most accurate and human responses.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;TABLE width="100%" cellpadding="10"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD width="21.56479217603912%"&gt;&lt;SPAN class=""&gt;&lt;SPAN class=""&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="amjad_khatri.jpg" style="width: 239px;"&gt;&lt;img src="https://community.hubspot.com/t5/image/serverpage/image-id/161203i32A562F1EC39D091/image-dimensions/239x239?v=v2" width="239" height="239" role="button" title="amjad_khatri.jpg" alt="amjad_khatri.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD width="53.32518337408313%"&gt;&lt;P&gt;&lt;STRONG&gt;Muhammad Amjad&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Senior Consultant • HubSpot + Web Automation Expert&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;A href="https://www.upwork.com/freelancers/amjadkhatri" target="_blank" rel="noopener nofollow noreferrer"&gt;Need HubSpot Help? Send Me a DM&lt;BR /&gt;&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;SPAN class=""&gt;&lt;SPAN class=""&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="free-linkedin-icon-130-thumb" style="width: 23px;"&gt;&lt;img src="https://community.hubspot.com/t5/image/serverpage/image-id/161551i0AE654B00B3E1071/image-dimensions/23x23?v=v2" width="23" height="23" role="button" title="free-linkedin-icon-130-thumb" alt="free-linkedin-icon-130-thumb" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;A href="https://linkedin.com/in/amjadkhatri" target="_blank" rel="noopener nofollow noreferrer"&gt;Connect with me On LinkedIn&lt;/A&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;Specialties:&lt;/STRONG&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;HubSpot CRM Setup &amp;amp; Automation&lt;/LI&gt;&lt;LI&gt;Custom Workflows &amp;amp; Email Marketing&lt;/LI&gt;&lt;LI&gt;API Integrations &amp;amp; Webhooks&lt;/LI&gt;&lt;LI&gt;WordPress + Laravel Development&lt;/LI&gt;&lt;/UL&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;BR /&gt;Available for consulting, troubleshooting &amp;amp; custom HubSpot solutions.&lt;/P&gt;</description>
      <pubDate>Tue, 18 Nov 2025 07:25:39 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1224956#M44558</guid>
      <dc:creator>amjadkhatri</dc:creator>
      <dc:date>2025-11-18T07:25:39Z</dc:date>
    </item>
    <item>
      <title>Re: Search widgets adds double language parameter to URL after first search</title>
      <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1225137#M44564</link>
      <description>&lt;P&gt;hi &lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/1012617"&gt;@amjadkhatri&lt;/a&gt;, thanks for your explanation. Would you mind taking a look at the javascript I copied in this post and tell me where to insert this check? I'm not a developer and I'm therefore not sure if this check can be inserted as is, and where exactly. Thank you very much!&lt;/P&gt;</description>
      <pubDate>Tue, 18 Nov 2025 15:18:18 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1225137#M44564</guid>
      <dc:creator>GvandenAkker</dc:creator>
      <dc:date>2025-11-18T15:18:18Z</dc:date>
    </item>
    <item>
      <title>Re: Search widgets adds double language parameter to URL after first search</title>
      <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1225545#M44569</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="MuhammadAmjad_0-1763539520227.png" style="width: 400px;"&gt;&lt;img src="https://community.hubspot.com/t5/image/serverpage/image-id/161730iF156F5C50DAC9D08/image-size/medium?v=v2&amp;amp;px=400" role="button" title="MuhammadAmjad_0-1763539520227.png" alt="MuhammadAmjad_0-1763539520227.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Under Setting &amp;gt; Advanced ( Click on Advanced&amp;nbsp; )&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="MuhammadAmjad_1-1763539593079.png" style="width: 400px;"&gt;&lt;img src="https://community.hubspot.com/t5/image/serverpage/image-id/161731i62B586E68929037E/image-size/medium?v=v2&amp;amp;px=400" role="button" title="MuhammadAmjad_1-1763539593079.png" alt="MuhammadAmjad_1-1763539593079.png" /&gt;&lt;/span&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;You will see an option Additonal code snippets, paste the javascript here and save.&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;script&amp;gt;&lt;/P&gt;&lt;P&gt;let url = new URL(window.location);&lt;BR /&gt;url.searchParams.delete('lang');&lt;BR /&gt;url.searchParams.append('lang', currentLang);&lt;/P&gt;&lt;P&gt;&amp;lt;/script&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 19 Nov 2025 08:08:46 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1225545#M44569</guid>
      <dc:creator>amjadkhatri</dc:creator>
      <dc:date>2025-11-19T08:08:46Z</dc:date>
    </item>
    <item>
      <title>Re: Search widgets adds double language parameter to URL after first search</title>
      <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1225649#M44570</link>
      <description>&lt;P&gt;sorry, but that doesn't work. After the first search the page is not reloaded or anything, so the parameters in the URL are also not updated or removed.&lt;/P&gt;</description>
      <pubDate>Wed, 19 Nov 2025 12:26:50 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1225649#M44570</guid>
      <dc:creator>GvandenAkker</dc:creator>
      <dc:date>2025-11-19T12:26:50Z</dc:date>
    </item>
    <item>
      <title>Re: Search widgets adds double language parameter to URL after first search</title>
      <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1228454#M44604</link>
      <description>&lt;P&gt;Thanks for the additional details &lt;SPAN style="background: var(--ck-color-mention-background); color: var(--ck-color-mention-text);"&gt;&lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/485100"&gt;@GvandenAkker&lt;/a&gt;&lt;/SPAN&gt;. Hey &lt;SPAN style="background: var(--ck-color-mention-background); color: var(--ck-color-mention-text);"&gt;&lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/489302"&gt;@felixmacaspac&lt;/a&gt;&lt;/SPAN&gt; do you have any additional feedback? — Jaycee&lt;/P&gt;</description>
      <pubDate>Tue, 25 Nov 2025 22:01:14 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1228454#M44604</guid>
      <dc:creator>Jaycee_Lewis</dc:creator>
      <dc:date>2025-11-25T22:01:14Z</dc:date>
    </item>
    <item>
      <title>Re: Search widgets adds double language parameter to URL after first search</title>
      <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1228527#M44607</link>
      <description>&lt;P&gt;Solution: 1&lt;BR /&gt;&lt;BR /&gt;&amp;lt;script&amp;gt;&lt;BR /&gt;document.body.onload = () =&amp;gt; {&lt;BR /&gt;&lt;SPAN&gt;let url = new URL(window.location);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;url.searchParams.delete('lang');&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;url.searchParams.append('lang', currentLang);&lt;/SPAN&gt;&lt;BR /&gt;};&lt;BR /&gt;&amp;lt;/script&amp;gt;&lt;BR /&gt;&lt;BR /&gt;Solutuon 2:&lt;BR /&gt;&lt;BR /&gt;&amp;lt;script&amp;gt;&lt;BR /&gt;setTimeout( function(){&lt;BR /&gt;&lt;SPAN&gt;let url = new URL(window.location);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;url.searchParams.delete('lang');&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;url.searchParams.append('lang', currentLang);&lt;/SPAN&gt;&lt;BR /&gt;}, 1500)&lt;BR /&gt;&lt;BR /&gt;&amp;lt;/script&amp;gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 26 Nov 2025 06:00:59 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1228527#M44607</guid>
      <dc:creator>amjadkhatri</dc:creator>
      <dc:date>2025-11-26T06:00:59Z</dc:date>
    </item>
    <item>
      <title>Re: Search widgets adds double language parameter to URL after first search</title>
      <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1231376#M44675</link>
      <description>&lt;P&gt;Hi &lt;SPAN style="background: var(--ck-color-mention-background); color: var(--ck-color-mention-text);"&gt;&lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/485100"&gt;@GvandenAkker&lt;/a&gt;&lt;/SPAN&gt; and thanks for getting back to us!&lt;BR /&gt;&lt;BR /&gt;Based on your code, the issue is likely in how you're building pagination URLs. When constructing the pageNumberParams in your JavaScript, you're using new URLSearchParams(params.toString()) which preserves all existing URL parameters, including any language parameters.&lt;BR /&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This may be because:&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;- Your pagination links are built by cloning the current URL parameters&lt;BR /&gt;&lt;BR /&gt;- If a language parameter already exists in the URL, it gets preserved&lt;BR /&gt;&lt;BR /&gt;- When the link is clicked, the language parameter may be added again&lt;BR /&gt;&lt;BR /&gt;Could you please try the following: Before setting the offset parameter, ensure you're not duplicating language parameters. In your pagination function around line 200-250, modify how you create the pagination URLs:&lt;BR /&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;let pageNumberParams = new URLSearchParams(params.toString());&lt;BR /&gt;pageNumberParams.set('offset', (i * updatedLimit));&lt;BR /&gt;// Remove any duplicate language parameters if they exist&lt;BR /&gt;pageNumberParams.delete('lang'); // or whatever your language param is called&lt;BR /&gt;&lt;BR /&gt;Alternatively, check if HubSpot's automatic language URL rewriting is interfering. You can disable this for specific elements by adding the class hs-skip-lang-url-rewrite to your pagination links.&lt;BR /&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I hope this helps!&lt;BR /&gt;&lt;BR /&gt;Have a great day!&lt;BR /&gt;Bérangère&lt;BR /&gt;&lt;BR /&gt;&lt;I&gt;This post was created with the assistance of AI tools.&lt;/I&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 05 Dec 2025 08:13:02 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1231376#M44675</guid>
      <dc:creator>BérangèreL</dc:creator>
      <dc:date>2025-12-05T08:13:02Z</dc:date>
    </item>
    <item>
      <title>Re: Search widgets adds double language parameter to URL after first search</title>
      <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1232015#M44696</link>
      <description>Thanks for the suggested additional code. However, the result is still identical: 2 language parameters.&lt;BR /&gt;Where would I have to add the class exactly? Is that also in the same piece of code share previously? Which line? Can you perhaps provide the sample code?&lt;BR /&gt;&lt;BR /&gt;Again, I’m not a programmer &lt;span class="lia-unicode-emoji" title=":winking_face:"&gt;😉&lt;/span&gt;&lt;BR /&gt;&lt;BR /&gt;Thanks a lot in advance!&lt;BR /&gt;</description>
      <pubDate>Mon, 08 Dec 2025 16:48:16 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1232015#M44696</guid>
      <dc:creator>GvandenAkker</dc:creator>
      <dc:date>2025-12-08T16:48:16Z</dc:date>
    </item>
    <item>
      <title>Re: Search widgets adds double language parameter to URL after first search</title>
      <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1232259#M44706</link>
      <description>&lt;P&gt;Hi &lt;SPAN style="background: var(--ck-color-mention-background); color: var(--ck-color-mention-text);"&gt;&lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/485100"&gt;@GvandenAkker&lt;/a&gt;&lt;/SPAN&gt; and thanks for getting back to us! No worries at all, I’m not a programmer either, so you’re in good company! &lt;span class="lia-unicode-emoji" title=":winking_face:"&gt;😉&lt;/span&gt;&lt;BR /&gt;&lt;BR /&gt;The hs get-started command is a streamlined CLI command that helps you quickly initialize and deploy a boilerplate project on HubSpot's developer platform.&lt;BR /&gt;&lt;BR /&gt;It guides you through creating a project, configuring an app, uploading it to your account, and setting up local development.&lt;BR /&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;According to the quickstart guide, after running hs get-started, you'll be prompted to select a project type (like App), name your project, set a local directory, and upload it to HubSpot.&lt;BR /&gt;&lt;BR /&gt;The command handles dependency installation and initial deployment automatically.&lt;BR /&gt;&lt;BR /&gt;Here are some resources that might help you:&lt;BR /&gt;&lt;BR /&gt;- &lt;A href="https://developers.hubspot.com/docs/getting-started/quickstart" target="_blank"&gt;Quickstart&lt;/A&gt;&lt;BR /&gt;- &lt;A href="https://developers.hubspot.com/docs/apps/developer-platform/build-apps/create-an-app" target="_blank"&gt;Create a new app using the CLI&lt;/A&gt;&lt;BR /&gt;- &lt;A href="https://developers.hubspot.com/docs/developer-tooling/local-development/hubspot-cli/reference" target="_blank"&gt;HubSpot CLI commands (v7.10.0)&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;Now, let's consult our Top Experts: Hi &lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/17186"&gt;@Anton&lt;/a&gt;, &lt;SPAN style="background: var(--ck-color-mention-background); color: var(--ck-color-mention-text);"&gt;&lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/63499"&gt;@SteveHTM&lt;/a&gt;&lt;/SPAN&gt; and &lt;SPAN style="background: var(--ck-color-mention-background); color: var(--ck-color-mention-text);"&gt;&lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/601366"&gt;@sylvain_tirreau&lt;/a&gt;&lt;/SPAN&gt; do you have suggestions to help &lt;SPAN style="background: var(--ck-color-mention-background); color: var(--ck-color-mention-text);"&gt;&lt;a href="https://community.hubspot.com/t5/user/viewprofilepage/user-id/485100"&gt;@GvandenAkker&lt;/a&gt;&lt;/SPAN&gt;, please?&lt;BR /&gt;&lt;BR /&gt;Thanks so much and have a fantastic day!&lt;BR /&gt;Bérangère&lt;BR /&gt;&lt;BR /&gt;&lt;I&gt;This post was created with the assistance of AI tools.&lt;/I&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 09 Dec 2025 10:30:57 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1232259#M44706</guid>
      <dc:creator>BérangèreL</dc:creator>
      <dc:date>2025-12-09T10:30:57Z</dc:date>
    </item>
    <item>
      <title>Re: Search widgets adds double language parameter to URL after first search</title>
      <link>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1237745#M44821</link>
      <description>&lt;P&gt;I got an experienced programmer take a look at the entire thing. The problem was in the Search Input module.&lt;BR /&gt;Thanks everyone for your support and attempts, much appreciated!&lt;BR /&gt;&lt;BR /&gt;FYI: he made me change this to this:&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;{% if key != 'term' and key != 'limit' %}
&amp;gt;
{% if key != 'term' and key != 'limit' and key != 'language' %}

Full module code:

{{ require_css(get_asset_url("/woodwing/web/modules/search/style/search-input.css"), { async: true} ) }}
{{ require_js(get_asset_url("/woodwing/web/modules/search/scripts/search-input.js"), { position: "footer" } ) }}

{% from '/woodwing/web/macros/web-components.html' import add_component %}

{% set search_path_prefix = widget_data.search_input_path_prefix ? widget_data.search_input_path_prefix.value : module.path_prefix %}

  &amp;lt;section class="m-search-input smaller-search-input" style="background: {{ module.module_settings.background.css }}" data-search-form&amp;gt;
    
      &amp;lt;div class="container"&amp;gt;
        &amp;lt;div class="row row--justify-center"&amp;gt;
          &amp;lt;div class="col-12 col-sm-10 col-md-8"&amp;gt;
            {% if module.intro_label %}
              &amp;lt;p class="keep-default intro-label text_size-md {{ 'text_color-white' if module.module_settings.text_color == 'white' else 'text_color-gray-600' }}"&amp;gt;{{ module.intro_label }}&amp;lt;/p&amp;gt;
            {% endif %}
            
            &amp;lt;h1 class="keep-default title {{ 'text_color-white' if module.module_settings.text_color == 'white' }}"&amp;gt;{{module.title}}&amp;lt;/h1&amp;gt;
            &amp;lt;div class="rich-text-container rich-text-container--color-gray-100"&amp;gt;{{ module.description }}&amp;lt;/div&amp;gt;
            &amp;lt;div class="hs-search-field" data-portal-id="{{ hub_id }}"&amp;gt; 
              &amp;lt;div class="hs-search-field__bar"&amp;gt;
      
                &amp;lt;form action="{{ content.absolute_url }}" tabindex="0"&amp;gt;
                  &amp;lt;input type="text" class="hs-search-field__input" name="term" autocomplete="off" aria-label="{{ module.search_label }}" placeholder="{{ module.placeholder }}" autofocus&amp;gt;
                  &amp;lt;button aria-label="{{ module.search_label }}"&amp;gt;{{ module.search_label }}&amp;lt;/button&amp;gt;

                  {% for key, value in request.query_dict.items() %}
                       {% if key != 'term' and key != 'limit' and key != 'language' %}
                      &amp;lt;input type="hidden" name="{{ key }}" value="{{ value }}"&amp;gt;
                    {% endif %}
                  {% endfor %}
      
                  &amp;lt;input type="hidden" name="limit" value="{{ module.limit }}"&amp;gt;
                  &amp;lt;input type="hidden" name="language" value="{{ locale | default('en') }}" id="language-input"&amp;gt;
      
                  {% if search_path_prefix %}
                    &amp;lt;input type="hidden" name="pathPrefix" value="{{ search_path_prefix }}"&amp;gt;
                  {% endif %}
      
                  {% if module.content_types.website_pages %}
                    &amp;lt;input type="hidden" name="type" value="SITE_PAGE"&amp;gt;
                  {% endif %}
                  {% if module.content_types.landing_pages %}
                    &amp;lt;input type="hidden" name="type" value="LANDING_PAGE"&amp;gt;
                  {% endif %}
                  {% if module.content_types.blog_posts %}
                    &amp;lt;input type="hidden" name="type" value="BLOG_POST"&amp;gt;
                    &amp;lt;input type="hidden" name="type" value="LISTING_PAGE"&amp;gt;
                  {% endif %}
                  {% if module.content_types.knowledge_articles %}
                    &amp;lt;input type="hidden" name="type" value="KNOWLEDGE_ARTICLE"&amp;gt;
                  {% endif %}
                  
                  {% if request.query_dict.hs_preview %}
                    &amp;lt;input type="hidden" name="hs_preview" value="{{ request.query_dict.hs_preview }}"&amp;gt;
                  {% endif %}
                &amp;lt;/form&amp;gt;
              &amp;lt;/div&amp;gt;
              &amp;lt;ul class="hs-search-field__suggestions"&amp;gt;&amp;lt;/ul&amp;gt; 
            &amp;lt;/div&amp;gt;
          &amp;lt;/div&amp;gt;
        
        &amp;lt;/div&amp;gt;
      &amp;lt;/div&amp;gt;
  &amp;lt;/section&amp;gt;
&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 31 Dec 2025 09:42:54 GMT</pubDate>
      <guid>https://community.hubspot.com/t5/CMS-Development/Search-widgets-adds-double-language-parameter-to-URL-after-first/m-p/1237745#M44821</guid>
      <dc:creator>GvandenAkker</dc:creator>
      <dc:date>2025-12-31T09:42:54Z</dc:date>
    </item>
  </channel>
</rss>

