GSoC 2018 - Week - 10

Ankit Jain
Ankit Jain DevOps Engineer @Razorpay | CommunityBridge Mentee @Keptn | @Drupal GSoC Alum | #GitHubCampusExpert Alum | GCI & GSoC'19 Mentor @Drupal | Speaker | Writer

GSoC 2018 - Week - 10

Welcome to my Google Summer of Code 2018 week 10 summary update of Project Affiliates Connect. Learn more about my previous update in Week 9 and in my archive. GSoC (Google Summer of Code) is a global program focused on bringing more student developers into open source software development. Students work with an open source organization on a 3-month programming project during their break from school.


Some of the tasks accomplished in this week are -

  • The Affiliates Connect Ebay plugin is implemented and is under review. This plugin uses developer APIs of eBay to search products by two methods - findItemByKeyword and findItemByCategory. A user can search products by above two stated methods and can also import the selected items(products) to his own Drupal site database or he can also import all the products up to 100 pages (limitation of eBay APIs). Link to the issue - #2985626

  • eBay is an international e-commerce website similar to Amazon so it has multiple websites and programs according to the Locale. We have taken care of that too. You can select the locale under the configuration/settings tab and search or import products from a particular locale. Link to the issue - #2985626

  • Functional tests for the module is also added which is verifying the availability of routes and instantiating of the plugin. Also verifying the configuration form. Link to the issue - #2985702

  • Cloaking feature is also implemented and is under review. Cloaking allows the user to hide the Affiliate id/tag from the Affiliate URL. People generally use Cloaking to hide the affiliate id so that visitors won’t know that it’s an affiliate URL or to prevent themselves from the commision theft.

- Cloaking comes under the BLACK HAT SEO as it affects the SEO largely due to redirect URL to external sites. Crawlers and bots find the redirect URL so, to prevent crawlers and bots from this, we have added some features which is configured from the settings page.

  • Most of the crawlers and bots respect the robots.txt file and follow it So, I have provided the option to allows a user to add the cloaked links to the robots.txt.

  • Along with that, Adding the rel=”nofollow” tells the crawlers not to follow this URL or link.

  • Some of the crawlers and bots won’t follow the robots.txt file and nofollow rules, So I have used Javascript to implement Cloaking. All the redirect links are encoded using base64 so it won’t look like URL or links by the crawlers. When the link is clicked, a Javascript function is called, which decodes the base64 string and calls the cloaking URL from there user is redirected to the original URL. Link to the issue - #2985796

  • Implemented the hits analysis feature, A site admin gets to know about the valid hits to the cloaking URL which can actually help me in analyzing the type of products which gets more numbers of visitors so he can modify the products accordingly. He can reset the hits too. Link to the issue - #2985796

Week 10 - Goals

- Creating configuration page for affiliates_connect_searchpage which contains the configuration for using a search_api module for indexing and searching data in the Drupal database.

  • Implementation of the Affiliates Connect Browser widget to select the product from the site database for Advertising on the Drupal site.


It is required to use Search API for better performance of searching the products from a database as the database will have thousands of products. Browser widget will help the site admin to select the products for the advertisement. In this way, he can manage the products from different vendors and according to the demand of his site visitor through the analysis of hits.

comments powered by Disqus