OpenStore - free assembly of an online store based on Drupal and Ubercart

    image
    I present my project - a free script of the OpenStore online store based on Drupal and the Ubercart module

    Project site
    Download
    Bagtrekker

    We all know and love Drupal, but, nevertheless, a few words about it:
    Drupal is a CMS with a large bias in a full-fledged CMF (Content Framework System), with open and free code, a powerful API, a modular structure, unsurpassed security and, most importantly, with a large community of professionals, which was created over 10 years of continuous development of this system.
    Drupal is included in the “holy trinity” of systems for building and managing sites: WordPress (blogs), Joomla (portals), Drupal (anything).

    Currently, there is a solution that allows creating a rather functional online store based on Drupal - the Ubercart module. Official statistics show more than 32,000 installations (namely installations, downloads are an order of magnitude larger), which is evidence of the popularity of this module.

    Everything would be fine if it weren’t for one BUT:
    you won’t get a ready-made online store right after installing the Ubercart module.
    To a novice who is not familiar with programming, CSS, HTML and, especially, does not speak English, Drupal in general, and Ubercart in particular, may seem an extremely complex and confusing system. It also requires the installation of numerous additional modules, some of which are not directly related to the online store.

    All this raises numerous questions, leads to loss of time and, as a result, to general disappointment. In the OpenStore assembly, I tried to take into account all these “bottlenecks” and now, I dare to say, it looks like a complete and complete online store.

    The assembly consists of more than 130 modules, the heart of Drupal 6.x and Ubercart 2.x.
    There are also two other key modules on which the assembly is based:
    • OpenStore Installation Profile (profiles / openstore)
    • General module (sites / all / modules / general)

    The installation profile, in addition to the initial installation of the system, is also involved in the installation of other necessary modules, as well as performs the general configuration of the online store by direct entries in the database or updating existing values.

    Examples of settings: creating basic roles (groups), assigning access rights to them, creating user profiles for store personnel, creating dictionaries for categories, creating and configuring “queues” for pages, exporting customized output styles (pages and blocks), downloading files transfers from the project server (openstore.org.ua) with their subsequent import into the database, inclusion and distribution of blocks by page regions, as well as many other settings.

    The General module is a collection of various functions that mainly relate to the theming of the output of various store elements. This module also defines and overrides numerous variables that can be used in page templates to display various elements.

    For example, display the "Add to Cart" button.
    <?php print $show_button; ?>
    Thus, we can easily manipulate the display of various elements on the product page, in the form of adding / editing pages, in the user profile.

    In assembly 2 themes:
    1. Frontend is a basic theme that is shown to customers.
    2. Administrator is a great admin theme

    Now about the main features of the assembly "OpenStore". I must say right away that, since the Ubercart module is based on the Drupal API , it automatically uses all the features that the Drupal kernel provides. In addition, Ubercart itself has a pretty powerful API . You can easily expand the functionality of your store using the API of both Drupal and Ubercart

    Basket

    A lot of basket settings are provided, for example: the date the content was stored for authorized and anonymous users, a redirect, the number of added products, etc.
    • A basket in the form of a simple folding block
    • A basket in the form of a fully customizable block with various fields
    • Cart References. Ability to generate links with predefined actions. Links can be placed on other sites.

    Rules of action

    A separate module allows you to set the rules by which various actions will be performed. In this case, the simplest logic “AND”, “OR”, etc. is used.
    • Calculation of shipping costs depending on the amount of the order
    • Calculation of margins (including negative, for discounts) depending on the amount of the order
    • Sending notifications (and SMS) at least somewhere based on certain actions
    • Many other actions and conditions.

    Users, user interaction

    Drupal was originally created to build communities and sites with elements of a social network, therefore it has a flexible system of access rights and user administration and provides ample opportunities for interacting with users in the style of Web 2.0
    • User registration and authorization through Vkontakte, Twitter, Facebook, OpenId
    • Product Reviews
    • The system for sending reminder letters, for example, with an incomplete order.
    • Product Ratings
    • Bidding Form (“I saw this item cheaper”)
    • Product Question Form
    • Social Bookmarking
    • Wish List (WishList)
    • User score system with convenient API. Points can be used as discounts.
    • Subscription / unsubscription system from the store newsletter
    • Polls
    • Automatic cross-posting of publications on Twitter, LiveJournal, Facebook (for example, hot offers from the store)
    • Different RSS feeds: general feed, new arrivals, reviews for a specific product, etc.

    Payment Methods

    • Webmoney
    • Paypal
    • LiqPay
    • Interkassa
    • Onpay
    • Bank receipt. Receipt Templates for Ukraine and Russia
    • Moneybooker
    • 2checkout
    • Authorize.net
    • Cyber ​​source
    • Google checkout
    • Z-payment
    • Western Union

    Delivery Methods

    • Any number of delivery types that you define
    • Flat Shipping Rates
    • Rates for delivery by dimensions and weight of the goods

    Catalog

    • Sorting products by price and name, descending or ascending
    • User choice of presentation type: list or grid
    • Full control over the displayed catalog items: preview size, tags, title, etc.
    • Images for catalog categories
    • Filter products by price, manufacturer, name
    • Ajax - auto-search products
    • Generation of prices in .xls and .doc format with total setting of everything.

    Images

    • Actions on images: scaling, cropping (crop), resizing, rotation, reflection, switching “landscape-portrait” and vice versa, watermark, overlay on another image, rounding corners, brightness, contrast
    • 2 styles of "magnifying glass" for viewing a large original image of the product
    • 2 pop-up styles for viewing product images - FancyBox and SlimBox

    Product Features

    • 3 types of default prices: product price, recommended price, selling price
    • Unlimited product image quantity
    • vendor code
    • Attributes
    • Availability by attributes
    • Product properties (related downloads, roles, etc.)
    • On order / in stock
    • Product in the form of a file. Selling files
    • Any product fields (file, text, number, etc.). You can add as many fields as you like.

    Preset Blocks

    • You can add any of your blocks manually or by a module.
    • Store News
    • Featured Products
    • Recent Orders
    • Latest arrivals
    • Top rated products
    • Most popular products (by views)
    • The biggest discounts
    • Hot deals
    • Accented Carousel (in Jquery)
    • “They also bought with this product”
    • Subscribe / unsubscribe from newsletters
    • Poll
    • Related Products
    • Discounts for products with the same category
    • Contextual SEO text
    • Contextual Articles
    • Download price
    • Store contacts

    SEO

    There are many ready-made modules on the site drupal.org, which can improve the position in the issuance for your site. They can be installed optionally.
    • CNC (Human-readable URLs) with total settings for punctuation, transliteration, templates for generating categories and pages.
    • Keywords and meta tags for each category or any selected page.
    • Keyword and description generation automatically by templates
    • Taxonomy. End-to-end site page categorization system.
    • Tag clouds
    • XML sitemap

    Administration

    • Easy change in the appearance and arrangement of elements of the form for adding goods
    • Automatic article generation mode
    • Mass work with site pages: changing, deleting, changing categories, etc.
    • Queues of goods. Easy add / remove via “quick links” to jquery and drag & drop interface
    • Best Ckeditor Visual Editor
    • Full-featured file browser with directories and operations access profiles
    • Nice admin panel with the main information panel on the blocks
    • Advanced Settings Dropdown
    • Sales reports with links to individual reports
    • Income reports
    • Bulk update pricing and availability

    Discounts

    • Points discounts
    • Cumulative discounts
    • Discounts on user roles (groups)
    • Coupons
    • Product Sets

    Embedded Developer Tools

    • View the site under any user
    • Theme development mode. Visual viewing of form arrays, variable templates, etc. ... Similar to Firebug, only for PHP and system API
    • Built-in Krumo (a convenient alternative to print_r)
    • Generation of any number of users, pages, pictures, orders to simulate filling the site
    • Statistics on the quality, quantity and duration of database queries
    • Memory Usage Statistics

    System statistics

    • System event log in which all events in the system are recorded (including php errors) Messages are divided by severity level
    • Top Users
    • Top pages viewed
    • Top keywords that came to the site
    • Online Users
    • Statistics on published / unpublished pages, messages in the system log, message importance, user roles, activity on the site, Google Analytics statistics in the form of custom charts (5 types!)
    • Integration module with Google Analytics, including conversion tracking

    Data backup

    • Scheduled database backup with saving a copy to a local directory
    • Scheduled database backup with a copy sent by e-mail
    • Scheduled database backup with uploading a copy to FTP
    • Manual Reservation
    • Restore from backup
    • Many different settings, for example, the number of copies to be saved at the same time, backup frequency (up to 1 second), tables to be included / excluded

    Affiliate network

    • Multi-domain. You can install several stores with different designs and on different domains, but it will all be managed from one place.
    • Affiliate tiered program

    Performance

    • Compression about css union
    • Compress and merge java script
    • Gzip pages on the fly
    • 2 cache modes

    Full control over withdrawal

    • Full control over what, where and in what form to output. You can define your blocks and even entire pages.
    • Output styles: grid, unformatted list, normal list, list with numbers, list of annotations, list of whole pages, RSS feed, Jquery carousels in more than 20 scroll styles.

    Some notes

    1. The first version of the script lacks multicurrency. She will be in the second branch, which will be based on the latest 7th version of Drupal.
    2. Multilingualism is possible, but the mechanism of its implementation in Drupal so far imposes certain restrictions and complicates the support of such multilingual sites.

    I invite you to download and try the assembly.

    Please post your suggestions, wishes, found errors in the bug tracker of the project - there it will be more convenient for me to track them.

    Thanks for attention.

    Also popular now: