- [Case Studies](https://www.mergado.com/category/case-studies)
- [eCommerce tips](https://www.mergado.com/category/ecommerce-tips)
- [Online Store Solutions and Platforms](https://www.mergado.com/category/online-store-solutions-and-platforms)
- [Mergado Pack](https://www.mergado.com/category/mergado-pack)
- [Mergado tips](https://www.mergado.com/category/mergado-tips)
- [Mergado News](https://www.mergado.com/category/mergado-news)
- [eCommerce News](https://www.mergado.com/category/ecommerce-news)
- [How to use Mergado](https://www.mergado.com/category/how-to-use-mergado)
- [Interviews with e‑commerce gurus](https://www.mergado.com/category/interviews-e-commerce-gurus)
- [Extensions](https://www.mergado.com/category/apps-bidding-image-marketing-and-more)
- [Expansion with Mergado](https://www.mergado.com/category/expansion-with-mergado)
- [Mergado Lifestyle](https://www.mergado.com/category/mergado-lifestyle)
 



 

 1. [  Home  ](https://www.mergado.com/)
2. [     Mergado Blog  ](https://www.mergado.com/blog)
3. [     Extensions  ](https://www.mergado.com/category/apps-bidding-image-marketing-and-more)
4. <a class="flex items-center gap-2 hover:underline" href="" itemid="" itemprop="item" itemscope="" itemtype="https://schema.org/Thing">    **Do you need to edit problematic feeds? It’s easy with the Blending Bull app** </a>
 
  

 

#  **Do you need to edit problematic feeds? It’s easy with the Blending Bull app** 

 

 

 [    ![](https://www.mergado.com/sites/default/files/perm/user-avatar/23021961102131189073595481259913287n.jpg)   Lukáš Horák  ](https://www.mergado.com/blog/lukas-horak) [Extensions](https://www.mergado.com/category/apps-bidding-image-marketing-and-more) 

9. 12. 2021

2 minutes read

 

 

 

 

 

  ![Do you need to edit problematic feeds? It's easy with the Blending Bull app](https://www.mergado.com/sites/default/files/field/image/bull-en.png)  

Do you struggle with **unusual data file formats** when advertising? Or do you make **simple edits** and don’t want to buy an expensive editor? Take advantage of the new version of the [Blending Bull](https://store.mergado.com/detail/blendingbull/#about) app, which has been enriched with functions for **editing XML and CSV feeds**.



 

 

 
                function tableOfContents() {
                  return {
                    headings_menu: [],
                    heading_active: '', // Added to track the active section
                    shouldBeSticky: false,

                    generateToC() {
                      const headings = document.querySelectorAll('.js-article-full-headings h2, .js-article-full-headings h3');
                      let headingMap = {};

                      headings.forEach((heading) => { // Use an arrow function to maintain `this` context
                        // Normalize heading text to remove diacritics, then replace non-alphanumeric characters with dashes
                        var normalizedText = heading.textContent.normalize("NFD").replace(/[\u0300-\u036f]/g, ""); // Remove diacritics
                        var id = heading.id ? heading.id : normalizedText.trim().toLowerCase()
                          .split(' ').join('-').replace(/[^a-z0-9\-]/ig, ''); // Updated regex to replace non-alphanumeric characters
                        headingMap[id] = headingMap[id] !== undefined ? ++headingMap[id] : 0;

                        // Use the updated `id` with diacritics removed for the heading id and the TOC
                        const finalId = headingMap[id] ? `${id}-${headingMap[id]}` : id;
                        this.headings_menu.push({
                          id: finalId,
                          title: heading.textContent,
                          level: heading.tagName.toLowerCase(), // Track heading level
                          active: false, // Initially set active to false
                        });
                        heading.id = finalId;
                      });
                    },

                    checkStickyNeeded() {
                      const ul = this.$el.querySelector('ul');
                      if (ul) {
                        this.shouldBeSticky = ul.scrollHeight < window.innerHeight;
                      }
                    },

                    setActiveHeading() {
                      // disabled not working with active state on click
                      // add @scroll.window="setActiveHeading()" to the parent div

                      // const headings = document.querySelectorAll('.js-article-full-headings h2');
                      // let activeHeading = '';
                      // let closestHeadingDistance = Infinity;

                      // headings.forEach((heading) => {
                      //   const rect = heading.getBoundingClientRect();
                      //   const offset = rect.top - window.innerHeight / 2; // Consider heading in the middle of the screen as active

                      //   if (offset < 0 && Math.abs(offset) < closestHeadingDistance) {
                      //     activeHeading = heading.id;
                      //     closestHeadingDistance = Math.abs(offset);
                      //   }
                      // });

                      // // Update the active state in headings_menu
                      // if (activeHeading !== this.heading_active) {
                      //   this.headings_menu = this.headings_menu.map(item => ({
                      //     ...item,
                      //     active: item.id === activeHeading,
                      //   }));
                      //   this.heading_active = activeHeading;

                      // }
                    },

                    setActiveItem(clickedId) {
                      this.headings_menu.forEach(item => {
                        item.active = (item.id === clickedId);
                      });
                      this.heading_active = clickedId; // Optionally update the heading_active property if used
                    },
                  };
                }
               1. <a :class="{ 'border-r-[3px] border-secondary': item.active, 'text-sm': item.level === 'h3' }" :href="'#' + item.id" class="inline-block text-balance hover:underline p-0.5 pr-3">  — </a>
  



 

Do you struggle with **unusual data file formats** when advertising? Or do you make **simple edits** and don’t want to buy an expensive editor? Take advantage of the new version of the [Blending Bull](https://store.mergado.com/detail/blendingbull/#about) app, which has been enriched with functions for **editing XML and CSV feeds**.

## What is Blending Bull

- An app that helps marketing specialists or online store staff to **edit data feeds in XML, CSV**, or other text formats.
- In practice, users use it to [merge data feeds into one output file](https://www.mergado.com/blog/blending-bull-merges-feeds). It is can be processed by other apps. At the same time, Bull can **unify the format of elements** if XML files in different formats are combined.
- Now it can also **edit data feeds**. These are usually simple needs where a smarter tool is overly robust or special requirements that it does not support.
- You can also use it, for example, to **process data XML into CSV**, which are then uploaded to Mergado by a data import rule.
- More experienced users from the ranks of marketing specialists or agencies will appreciate its **versatility**. Users with less experience will certainly solve their needs either **intuitively or with the help of instructions**.



 

 [  ![](https://www.mergado.com/sites/default/files/perm/paragraph-image/bull-banner-en.png)  ](https://www.mergado.com/sites/default/files/perm/paragraph-image/bull-banner-en.png) 

### What features Blending Bull has to offer

- **Rules for data editing**, which allow you to edit element values, create new elements, delete elements, convert XML to CSV, or vice versa.
- **Adding text to the beginning or end of the data feed** is useful for defining your closing elements in XML, or for example for adding a header to the CSV.
- **Merging multiple data sources into one output file**. For data sources, you can delete the beginnings and ends of file contents, such as when processing XML feeds.
- **Processing of one data source**. It allows you to use powerful functions for editing its content.
- Fast data processing.
- File Creation Wizard.
- Regular data updates.



 

Edit feeds intuitively. **Get the Blending Bull app** — it will be a powerful assistant for merging feeds and editing problematic files.

[![](/sites/default/files/users/activate300-75-max_1.png)](http://store.mergado.com/detail/blendingbull/#about)

### **Read more**



 

 [    ![](https://www.mergado.com/sites/default/files/perm/image/ai_boost-1.jpg)  

### What should a proper client context look like for performance specialists?

 

 ](https://www.mergado.com/blog/master-prompt-eshopy-b2c) 

 [    ![](https://www.mergado.com/sites/default/files/perm/image/uawc_cs_en.jpg)  

### How Feed Optimization Unlocked Meta Ads Performance without Increasing Ad Spend

 

 ](https://www.mergado.com/blog/feed-optimization-for-meta-ads) 

 [    ![](https://www.mergado.com/sites/default/files/perm/image/how_to_sell_successfully_on_idealo.jpg)  

### How to Sell Successfully on idealo

 

 ](https://www.mergado.com/blog/successful-sale-on-idealo) 

 

 

 [    ![](https://www.mergado.com/sites/default/files/perm/user-avatar/23021961102131189073595481259913287n.jpg)  ](https://www.mergado.com/blog/lukas-horak)###  [ Lukáš Horák ](https://www.mergado.com/blog/lukas-horak) 

Lukáš takes care of most of the Czech and English communication in Mergado. Through blogs, e‑mail, and social networks, he regularly supplies readers with e‑commerce news and news and tips from Mergado. In his time off, he enjoys simple things like badminton, digging the hidden gems of the 80’s, and seafood served with red wine.

 

 

 

 

 

 

 

 

 

## What you *might be interested in next*

 

 [    ![gpsr kaufland allegro](https://www.mergado.com/sites/default/files/perm/image/gpsr_allegro_kaufland.png)  

### GPSR on Allegro and Kaufland

 

 ](https://www.mergado.com/blog/gpsr-allegro-kaufland) 

 [    ![alternative products feed image editor](https://www.mergado.com/sites/default/files/perm/image/new-nahladovka-na-blog-1200-x-628-px-25_1.png)  

### Show the most suitable alternative products. More customers will buy from you

 

 ](https://www.mergado.com/blog/alternative-products) 

 [    ![](https://www.mergado.com/sites/default/files/perm/image/optimise_product_images_.png)  

### How to optimise product images

 

 ](https://www.mergado.com/blog/how-optimise-product-images) 

 

 

 

## Don’t miss *anything*

 Sign up for our newsletter 

   

       

   By logging in, you agree that we will process your data by the [terms of personal data protection](https://www.mergado.com/cookies). 

  Thank you, you have successfully joined our subscriber's list. 

 

 

 
      function ml_webform_success_5807248() {
        var r = ml_jQuery || jQuery
        r('.ml-subscribe-form-5807248 .row-success').show(), r('.ml-subscribe-form-5807248 .row-form').hide()
      }