12 Getting Started with JIRA: How To Manage Issues

This article is a part of Astral Web’s Comprehensive Guide to JIRA!

Previously: 11 Getting Started with JIRA: Issue Management with Basic Agile Workflow

How To Manage JIRA Issues

Editing and assigning issues are good features, but now it’s time to understand best practices on how to manage all of your issues in JIRA.

In general, we will look at two types of users who will be using issues: Managers (those who are responsible of assigning tasks) and General Users (those who are responsible for doing the tasks).

Managers need to schedule, customize, and inter-relate all existing issues to successfully achieve project goals. Sometimes, they will need to bulk change multiple counts of issues and maybe even change security permissions on individual issues if non-employee users need access.

General Users will need features such as attaching files and images (such as screenshots), commenting, logging work progress, and get notifications on issues they need to follow.

Below we showcase all the options that are available on each JIRA issue.

Useful Features For Managers

Here are useful features for manager level users on JIRA. Make sure your permissions (described in other sections of our series) are set if or if you don’t want managers to have access to these features.

Scheduling an Issue

The default method to add a schedule to an issue is using the “Due date” field. This field uses a date field so, you’ll easily be able to save dates. You will be able to use this date field to show on dashboard widgets or export to calendar data.

However, Astral Web uses external gantt charts (GanttPro) so we configure custom fields called “Start Date (GanttPro Start Date)” and “End Date (GanttPro End Date)”. We then disable the default “Due date” field so all of our staff use the same fields to schedule tasks (whether they sync to the external GanttPro tool or not).

In this way, all members can track their issues by due date on their dashboard calendar, while managers can continue to use GanttPro using same end/due dates.

Adding a field to an issue

By default, some fields may not be showing on the screen you want to fill details. The available fields vary by different screens: Create Issue screen, Edit Issue Screen (both sidebar and full screen), and others. On the Create issue screen, you can select “Configure fields” to see which fields are active and others that can be added. You will need to have management permission to access this feature, but most manager and general user level should be able to see. If it is not visible, talk to your administrator.

Creating issues using the CSV importer

While creating issues directly on JIRA is convenient, sometimes you may have a whole WBS (work breakdown structure) document that you want to import. You will need to organize your template to make sure that all attribute headers and values match your project settings, but once this has been done, it’ll be so much easier when you want to add dozens or hundreds of tasks at once.

In our case, we know we have custom fields that we sync with external tools, so we make sure those fields are covered in our template. We even have a master projects template that holds about 150 tasks that helps kick-start our managers to make progress on their projects.

To bulk import your tasks, make sure your document is converted into a .csv file. (In Google Docs, you can export using File > Download as > Comma-separated values.) Then, you have to options to access the import page.

One is the “Import issues” button from the “Create issue” screen.

Or, from Admin > System > Import and Export > External System Import.

Then, you will be at the import csv page where you can select your .csv source file.

If you import often, then creating a configuration file that helps you assign issues to projects and map all data values to the right headers. You can get this at the end of the import, if you would like.

Select “Next” button.

Select your project that you have created under “Import to Project” dropdown.

Select “Next” button.

All fields should automatically be assigned. If there is no issue select “Next” button.

To make sure your data is good, press “Validate” button. This process may take a few minutes.

If you have more than one error, please fix your CSV file.

If you only get one error “Fatal error during import: Parent Issue cannot be null” you are ok. This is because the validator does not know that Sub-Tasks cannot have a unique ID.

You can proceed to select “Begin Import”.

Confirm that the count of issues are the same as what you have prepared in your CSV, and your import is all set.

Creating a Sub-Task

Sub-tasks are useful when a large issue needs to be split into smaller tasks, such as when you need to assign different people or multiple deadlines are required.

If you are on a full-page issue, then you will click on the “Create subtask” icon.

You will be able to quickly add sub-tasks that are under the current parent issue.

After you add a sub-task, you will be able to edit and manage the sub-task like any other issue. In the breadcrumbs, you will easily notice that a task is under another parent issue. This feature of of many that is helpful for managers to organize different levels of tasks. You may also find other features such as Epics, Versions, and Components useful when creating task relationships. (Details in our topics!)

Linking Issues

Using sub-tasks is limited 2 levels, so you will not be able to assign many issues under another. Instead, you can use issue linking. Linking issues are useful or tasks such as bugs, so you know that a bug is related to a specific issue.

On the full-screen issue page, you can select the “Link issue” button to show the Linked issues block. You will be able to easily search issues to link. You can also define the type of relationship such as “is blocked by”, “blocks”, “has to be done after”, “related to”, and more. These are not only labels, but actually function as they are read. So, if you define an issue to be done before or after another specific issue and you try to close an issue wrongly, JIRA will notify you that something goes wrong.

Modifying Multiple (Bulk) Issues

As a manager, modifying multiple issues at once is a life saver. Even something simple as closing issues at once, or re-assigning a bulk of issues to another person or project, these can be done quite easily.

In your project, go to your Issues and filters tab.

You can use the simple search, or click “Advanced search” for better results.

For example, I want to re-assign everything assigned to a specific person to another person. I will use JIRA Query language to filter down the issues to the project and assignee. (Please search JQL for more details on how to query.)

Next, select the “…” menu on the top right.

Because the query creates a specific list, you are able to use this list to make bulk changes. So, next, select “Bulk change all ** issues(s)”.

You will be able to further refine your list, or select the top check box to select all. Select “Next” on the bottom of the page.

You will be able to edit issues (field values in issues), move issues (from one project to another), transition issues (change status), delete issues (permanently remove from JIRA), watch issues (assign who gets notifications to the issues), or stop watching issues.

Select Edit issues to make issue changes.

You will be able to change multiple values at once, but here we will re-assign all the issues to someone else. Make sure you select the checkbox and choose the new assignee.

Select “Next” at the bottom of the page to confirm. (You can also choose to get an email log of the operation by selecting the checkbox .)

Once you press confirm, your editing will complete.

Useful Features For General Users

General Users features are the most commonly used features that all team members will need to use, unless you are a guest user that can only view issues.

Attaching a File

You can attach files by dragging in documents or files directly into the issue description or into comments. They will automatically be listed in the “Attachments” section of the issue.

To delete an attachment, selec the “X” icon on a file under the Attachments section.

Attaching a Screenshot

Attaching a screenshot is also easy. This applies to any copied image. After you copy an image or take a screenshot capture, select Ctrl+V to paste the image into the issue description or comment. Your image will be saved automatically as an attachment.

Cloning an Issue

In a case you want to duplicate or clone an issue, you can go to the “…” menu on the top right and select clone. JIRA will create the same issue on a new issue ID number for you.

Commenting on an Issue

Any user with the permission can comment on an issue. Go to the bottom Activity section on an issue to add a comment.

Editing Rich-Text Fields

Comments are one example, but you will be able to style your content in Rich-Text Fields.

You can bold and italicize text, add bullets, images, and even block text in quote or code format.

Watching and Voting on an Issue

If you are a reporter or assignee, you will be a watcher and get notifications as how you have set in your admin settings. However, in case you want to watch or have other members to follow an issue, go to the top of the issue and select the “Watch options” icon. You will be able to add users to watch and get notifications.

Logging Work on an Issue

Work log is useful for tracking how much time has been spent on a specific issue. In the Activity section, switch the view to Work log to view all work that has been logged to the issue.

To add a new work log, go to the top of the issue and under “…” menu select “Log Time”.

In the popup you can log the amount of time and the description of the work that has been done. The feature relates to the “Estimate Time” of the task a manager has assigned, so members do not under or over report work done on tasks.

We hope that gives you greater insight on what JIRA issues are capable of! Stay tuned for more in our upcoming articles.

Next: Coming Soon

Create In-Page (Anchor) Links in WordPress

The newest versions of WordPress with the Gutenberg editor make inserting anchor links a very straightforward task.

Step 1: Add Link to Section Headers:

The new WordPress interface has a field specifically for adding anchor links to blocks that are using a header tag (H1, H2, H3). Simply click on your header block, open the Advanced dropdown, and give your header a unique link (no spaces or characters).

If you view the html you’ll see that this field inserts an <id> tag to your header that had to be manually added in the classic editor:

<h2 id="first-section-header"><strong>What is Lorem Ipsum</strong></h2>

Step 2: Link Table of Contents to Section Header

For this step, simply use the hyperlink tool to add the unique link you’ve created preceded by a “#” (hash or pound).

Step 3: Repeat As Needed

If you are working with the classic WordPress editor, the only difference is that you’ll need to create the anchor links for each heading directly in the HTML or using an extension.

Cyber Security Practice for Individuals and SMBs

Cyber Security Best Practices Article Banner

The most secure methods for protecting personal and sensitive information are constantly evolving as industry practices and bad actors continue to push each other to the next level.

However, there are several best practices to follow that minimize your risks and, by extension, the risk of any organizations that you belong to. Below we outline a few starting points which protect both individuals and businesses.

  1. Basic Best Practices
    1. Track Breaches and Leaks
    2. Password Security
    3. 2FA Authentication
  2. Browsing and Usage Habits
    1. Confirm SSL Connections
    2. Caution with Email Links and Requests
    3. Up-to-date Operating Systems
  3. Organizational / Company Security
    1. Structured Access
    2. Access Sharing
    3. Employee Changes
    4. Clean Desk Policy
    5. Document and Educate
    6. Alligator Moats
 

Basic Best Practices:


 

Find out whether your data has already leaked:

If you’ve been active online for a while, there’s a good chance that you’ve already been involved in some sort of data leak. A cool website built by Troy Hunt, https://haveibeenpwned.com, scrapes a variety of public sources to provide a database of compromised emails and accounts associated with breaches.

You can subscribe for notification if your email is discovered in any future breaches, hopefully giving you a better chance of mitigating any fallout.

If nothing else, check out this site to get a sense of how common data breaches are and get inspired to put in a little extra effort.  

Passwords:

The best place to start in securing yourself and your organization is your passwords. For the points steps below, a password manager such as Last Pass is a great option that allows you to quickly create, update and manage your passwords.

If you’re an organization for which security has to be absolutely airtight, you may want to manage your passwords internally. However, in most cases, the security gained from a dedicated third party manager is greater than the risks of having all your passwords in one location.

Password Makeup: The obvious starting point for security is to ensure that your passwords are making use of as many characters as possible.

If you’ve tried to use your old go-to password from 2005 (e.g. myDogsName) you’ll notice that most sites won’t accept a simple string of letters anymore. However, simply substituting a 0 for an o and adding a “!” isn’t much of an upgrade. Massive databases of common substitutions and punctuation placements makes the password myD0gsName! only marginally more secure than the original.

Modern browser versions as well as password managers will auto generate and store complex passwords for you. When using an application like this, there’s no reason not to make your passwords as long as possible, making them exponentially more difficult to crack.

When storage of an auto-generated password isn’t an option (e.g. your password for your password manager), a good method is to create a “passphrase.” For example, YouknowmybirthdayisonJuly2(woohoo)butyoustillwon’tcrackthis!

Password Diversity: Making use of unique passwords for different accounts means that, when a breach occurs on one account, the remainder of your accounts don’t immediately become available to whoever gives it a shot.

Password Frequency: Similar to above, changing your passwords at regular intervals reduces the chances of being affected even if your account information has been compromised. If you’re working with software like we do, you can often set passwords to expire at set intervals.

Two Factor Authentication (2FA)

Wherever possible, use 2 factor authentication. Despite hackers finding sophisticated ways around 2FA, it’s still an extremely important component of online security

Nearly all major companies now support some form of two factor authentication through apps such as Google Authenticator and Authy or direct SMS.

If you can’t be bothered to use 2FA for all of your accounts, be sure to have it in place for the most crucial ones such as your email and your password manager (any accounts that share access and information with other websites and services).

If you manage an organization or network, we’d suggest making 2 factor authentication mandatory for all users.

 

Browsing and Usage Habits (Operational Security)


 

Confirm SSL Certificates

There’s really no excuse for websites that store any personal information (not to mention accept payments) to be without an SSL certificate. Up-to-date browsers are increasingly forceful about alerting you to being on websites that have insecure elements but you can ensure the connection with a browser extension such as HTTPS Everywhere by the EFF.

The most common way for your accounts to be hacked is not through a superspy remotely hijacking your computer but rather through simple emails that trick you into forking over the keys to the kingdom.


When you receive an email with any request for you to login or provide information, take an extra moment to verify the domain of the sender and the domain of the link provided. Not seeing a green HTTPS padlock on any login page is a significant red flag.

Any company that takes security seriously will not ask you to provide your password via email or phone call.

In the event of any suspicion, look up publicly listed information and contact them directly.

Furthermore, look out for unusual requests from contacts within your organization or contacts list. Maybe you have a great password, but your friend doesn’t – use another channel to confirm that the request really came from your friend or coworker.

Keep Operating Systems and Applications Up-to-Date

Easily skipped over inconvenient interruptions, the updates to your browsers, software and operating system often include crucial security patches.

 

Organization Security


 

For most smaller organizations and businesses, the best first step is to enforce the points outlined above at at an organizational level: have minimum password requirements, use an organization-wide password manager and require 2FA for any accounts connected with your business. Wherever possible, enforce enforce enforce! It’s easy for all of us to get complacent so, wherever it’s an option, enforce these measures through software or platform settings (microsoft, G Suite).

Again, these tips are a supplement rather than a substitute for a comprehensive internet/information security plan.

Structured Access

Larger businesses should have systems in place for a hierarchical information access. However, it’s important to implement for smaller businesses as well, even if it’s not an explicit policy – the basic concept is to segment access so that individuals (and networks) are only interacting with the information that’s necessary for their work.

At smaller businesses and startups where one individual can wear a lot of hats, it’s rarely so black and white. However, it’s still important to take basic steps to audit access at scheduled intervals.

Don’t Share Access

This may sound obvious, but, particularly in smaller organizations, it’s very easy to make “exceptions” in the interest of expediency, particularly when clients are involved as they our in our daily workflow. In those situations, it’s helpful to be able to fall back on “I’m sorry, we’re unable to do that due to an internal policy,” as it draws a line on the conversation, even if someone thinks they have a compelling argument for sharing.

Employee Changes

When an employee moves on, it’s an absolute must to change their passwords and review access immediately. Make sure that someone is responsible for a full audit of their access to primary and related company accounts. The more organized your password and SOPs for access management, the easier this is.

Clean Desk Policy:

For offices with access to sensitive information, communicate an explicit policy against any written passwords or credentials being left on desks where passers-by can see them.

Document and Educate

The fact is that we’re all busy and security can easily become an abstract concept that takes a back seat to the immediate task at hand. The more that your security measures are documented and communicated, the less likely they are to be considered “suggestions” by employees and coworkers.

Implementing a regular audit of password security, 2FA and access and communicating best practices for operational security in writing makes security more tangible. Making it clear that these steps are for each individual’s security can be more effective than a dry document about company assets.

Alligator Moats

The modern business needs to be alert to more than just cyber threats; ninja’s are out there and you need to take actions to defend against them.

After you’ve dug your moat, we’d recommend investing in robot alligators – regular alligators just eat bad ninjas, cyborg alligators laser them and eat them simultaneously. Any serious security professional will tell you that this is just good sense.

Ok, just kidding… get regular alligators

Configure Zabbix Alert Scripts

zabbix alert scripts banner

Steps:

 

  • Create Jabber Script
  • Test from terminal
  • Configure Zabbix to use Jabber script
  • Create Email Script
  • Test from terminal
  • Configure Zabbix to use phpmailer script
  • Tell Zabbix to notify
  • Flap a server to verify operation

jabber.sh is a replacement for the built-in Jabber/XMPP functionality within Zabbix.  You may need to install ‘sendxmpp’ prior to installation.  This is functional in an Ubuntu Xenial server installation, but the path may vary for CentOS/RHEL deployments.

Contents of /usr/lib/zabbix/alertscripts/jabber.sh:


#!/bin/bash
to=$1
body=$2


cat < $2
EOF

 

Adjust ‘user’, ‘server’ and ‘password’ accordingly for your particular setup.  The script should be owned by the zabbix user and have execute permissions set:

-rwxr-xr-x 1 zabbix root 288 Jun 16 05:11 jabber.sh

To test, simply execute the script like any other. Note the arguments passed into it:

# /usr/lib/zabbix/alertscripts/jabber.sh recipient@server message

If unable to send, try using sendxmpp outside the script and make sure it can send that way, then debug the script as required.

Your Zabbix should look like this:

 

zabbix setup 1

zabbix alert scripts screenshot 2

Note that the ‘Type’ of the media for the user corresponds to the name of the script we added earlier.

Email follows a similar procedure. Just make sure to have the necessary PHP modules installed. Below is the setup to use a gmail account:

Contents of /usr/lib/zabbix/alertscripts/phpmailer.php:


#!/usr/bin/php
require_once "Mail.php";


$from = "ZABBIX <user@domain>";
$to = $argv[1];
$subject = $argv[2];
$body = $argv[3];


$host = "ssl://smtp.gmail.com";
$port = "465";
$username = "username";
$password = "password";


$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));


$mail = $smtp->send($to, $headers, $body);


?>

Adjust ‘user’, ‘server’ and ‘password’ accordingly for your particular setup. The script should be owned by the zabbix user and have execute permissions set:

-rwxr-xr-x 1 zabbix root 572 Jun 16 12:26 phpmailer.php

To test, simply execute the script like any other. Note the arguments passed into it:

# /usr/lib/zabbix/alertscripts/phpmailer.php user@domain.tld subject body

Make Zabbix look like this:

zabbix-4

 

Note that the ‘Type’ of the media for the user corresponds to the name of the script we added earlier.

zabbix screenshot 5

Most important step!  This tells zabbix to actually use everything we just set up.  Once this is enabled, flap a server to give zabbix something to tell you about.  Check Pidgin and your email to see if it worked! 🙂

 

 

 

Magento: Importing CSVs

magento csv import article banner image

Importing products into Magento with a .csv file can be an incredibly time consuming and sometimes frustrating experience. One can be faced with one hundred columns of product attributes, only some of which seem to match up with the product information that you have on hand. However, uploading via .csv is the best option for uploading multiple products in one batch, and can be made a little easier by following a process and having a little understanding of how to match the cryptic information seen on a magento excel sheet with what you’re seeing or want to see on the front end of your website.

Mandatory Attributes:
When you’re uploading products to Magento, not every variable that is listed in your exported template is necessary to fill out (or include at all). However, in order to successfully upload a .csv, you’ll need to include the mandatory attributes. These include attributes that are, by default, mandatory for any Magento product, as well as attributes that are mandatory to your site exclusively, according to its design and specific needs. If you are only uploading the minimum mandatory fields for products that don’t yet exist, you will need to upload further further information before the products are live.

Magento’s mandatory attributes are:
sku
_attribute_set
_type
price
name
status
visibility
description
tax_class_id
short_description
weight

These attributes are listed in their “attribute code” form as they will appear on a spreadsheet for Magento. Even if some of these field have been altered by site developers, the majority will be mandatory on any Magento site:

sku – your products’ unique alphanumeric identifier.

_attribute_set – refers to a default attribute set that each type of product has. for example “shoes” _attribute_set would likely include a single number representing shoe size and color attribute, whereas “pants” _attribute_set would automatically include a number for both waist and inseam as well as color. _attribute_set defines the attributes that apply to categories of products.
Attribute sets will be defined by the sites developers, so they will vary from site to site, and it’s best to speak with the person who set them up in order to get a good grasp of what they are on your site.

_type – refers to whether your product is simple or configurable. In other words whether it is a stand alone product, a variation, or the parent of variations
price – Self explanatory, the price of the products

name – The title of your product

status – whether or not the product is active on the website. Shown in the back end product page as “Enabled” or “Disabled,” and represented in a .csv by a 1 (enabled) or 2 (disabled)

visibility – Refers to visibility of product on site: Search and Catalog. Most simple products that belong to a parent configurable will not be visible individually. Represented numerically in a .csv.

description – Self explanatory, this is a text field for you to enter a product description. Where this appears on the front end of your site depends on its design.
Note- this field can be changed to non-mandatory by site developers

tax_class_id – Refers to what, if any, taxes will be applied to your products. Found in a dropdown menu under “Price” on the Manage Product page and represented numerically in a .csv. Refer to below tip to find out numerical values associated with dropdown menues

short_description – Similar to description, this text field will display in different ways depending on your site’s design. Also, like description, short_description can me made not mandatory by site developers.

weight – self explanatory. Like other fields, if it has no bearing on your site’s business you can enter a dummy number in order to successfully upload files.
TIP – For variables with numerical values, there’s a relatively simple way to “cheat” and find out what number is associated with each option. Using Chrome, Firebug, or any other application that allows you to view the page source:

  • Find the field in the magento product page
  • Select the variable field (dropdown or text) and inspect the source code – the values and their associated options will be displayed

magento attribute code source code inspection

 

Best practice for uploading products via CSV:

1) Export a representative of each Type of product to use as a template.

If you do not already have products uploaded to your site, manually add a product of each type and make sure that they are all displaying correctly on the front end.

The most important part of exporting a .csv that will be useful to you as a template is that you export one representative of type of product that will be carried on your site. The most important variations will be type–simple or configurable–and _attribute_set–defined by your site developers.

It’s important to briefly define Simple and Configurable products as understanding their relationship and different characteristics has an impact on the necessary fields in an import:

Configurable Products: Configurable products represent the “face” of a product that exists in different variations. On ecommerce sites these variations will most often be “size,” “color,” or other such variations. The configurable product is what will show on a website’s front end, allowing consumers to add simple products that have been associated with the configurable product to their cart. Examples of fields that may be required of configurable but not simple products are: associated products, multiple images, product descriptions, and much more.

Simple Products: A simple product will be created for each variation of a configurable product. For example, if you are selling a shirt that comes in three different sizes, you will upload three individual simple products in addition to the configurable product. Fields such as weight, price, and others that are dependent on which variation a consumer chooses may be required of simple products where they are left blank on a configurable.

Due to these differences, it’s very important that you find a representative of each type of product so that later you can see the differences on a magento .csv.

Once you have found the products that represent everything in your catalog, you’ll export your .csv which will give you all the information under attribute code column titles (for identifying attribute codes see below).

This is done through System > Import/Export > Export.

magento csv export navigation

 

Select Products:

export magento csv screenshot

Note – the simplest way to pull out your sample products for a template is simply to download all existing products and copy and paste your selected samples onto a new template page. However, if you have identified the products that you want for your template, you can limit your export to only the products you want by checkboxing them ( search by sku, name, etc.).

See example:

select attributes for export magento screenshot

 

To export click Continue at the bottom-right of the page and open the .csv file in Excel or Google Sheets.

2) Create your template:

When you are faced with the full range of data that is exported by Magento for each product it can be incredibly difficult to view easily. In this case using the Hide Columns feature for attributes that are non mandatory and are not necessary for the information you’re uploading is a massive help.

If the spreadsheet is being filled out by a client for you to upload, providing them with a clear template such as this will simplify the upload process for both parties.

If you are only updating a small number of attributes for many products, you can actually delete all but the mandatory columns, leaving you with a much cleaner spreadsheet.

3) Enter one product from each category into your spreadsheet for a trial upload:

One thing that you want to avoid is spending hours on entering your entire catalog into an excel sheet only to find that you’ve made a mistake and need to go through the entire thing and modify every product. For this reason it’s worth your time to experiment with an upload.

At this point you should have a list of several products, with the unnecessary columns either hidden or deleted for simplicity. When adding to an excel sheet for upload pay close attention to detail:

  • fill out fields in the exact format that your example has shown.
  • pay attention that you do not include any spaces in your entries – it’s particularly easy to accidentally add a space at the end of an entry when copying and pasting.
  • Use caution when using search and replace. Although using spreadsheet shortcuts is a massive help when creating a .csv you need to exercise caution. Never forget about hidden columns.

Once you’ve filled out your sample spreadsheet, you’re able to check the data for errors. After this, you’ll upload. This is a fairly simple process: Go to  System > Imports / Exports > Import. Select “products” just like when exporting, and choose file (be sure that your spreadsheet is saved in .csv).

Note- Occasionally you may run into issues if you save your spreadsheet with MS Excel due to its unique encoding. As a result, some recommend using an alternative to Excel to avoid a possible error after completing your sheet.

If you’re lucky, you’ve encountered no errors and your products have been successfully uploaded however, more likely, you’ll get a screen like the following:

magento import error screenshot

As can be seen here Magento gives you an attribute code (meta_description in this case) followed by the lines on which it was entered incorrectly (or not at all). In this case “invalid value” tells us that it was an error with the format that we entered.

If the error messages do not specify rows you can often inspect the source code of the error message to identify the row with an error.

Just because Magento accepts your spreadsheet does not mean that everything is correct. Be sure to check how your products are appearing on the front end, particularly images, text, and any other information that is may be entered in several different attribute columns in the same format.

When you encounter errors, some of the attribute codes will make sense to you, but others may be a bit vague, and in this case it’s useful to know how to find what the attribute code represents in the backend of your site:

To Identify an Attribute Code (Or the column title on exported excel sheet)

Assuming that you did not develop the Magento site yourself (or even if you did) the column headers on your exported Excel sheet can be cryptic at times, making it hard to know what, if any, information you should enter into the column.

To identify an attribute code:

  • Copy the attribute code (column header) and paste it into Attributes in the Magento Back end.
    • To do this, navigate from the menu bar: Catalog > Attributes > Manage Attributes:

manage attributes magento screenshot

  • Once in Manage Attributes, paste the attribute code into the left-hand “Attribute Code” search box:

magento attribute codes screenshot

  • The “Attribute Label” is listed to the right of your search results, and is also displayed when you click into a specific attribute’s details. In most cases this should be enough to understand the Attribute that the code refers to. For more information, you can look at a specific product in the back end (Catalog > Manage Products > Select a product) to see if and how the attribute has been filled out for the pre existing product.
  • Many titles and section headings on front end product pages will directly correspond to their Attribute Label in the back end. Thus you can reverse this process by finding the field you’re looking for on the front end and finding the Attribute Code that corresponds to the Attribute Label, allowing you to find the appropriate column on your spreadsheet.

 

4) Upload your entire .csv

After you’ve uploaded a sample and identified any errors, you’ll go ahead and fill out all of your products for upload.

Most Common Errors- 

Incorrect Case Entry- Entering headers or fields in a case that does not match that of your export is an easy mistake that will cause Magento to be unable to upload. These can occur in unexpected places such as file extensions depending on the setup of your site.

Incorrect Column Headers – As with everything in the .csv upload process, there is no room for error in your variable names. Make sure that your upload .csv has exactly the same field names as the sample that you exported, paying particular attention to capitalization, spacing, and underscores.

Incorrect CSV File Encoding –  As mentioned before, this can be due to the program you’re using to save your .csv but can also be a result of differences in location (countries). Be sure that you’re using Unicode UTF-8 when you’re saving your file as this is the only format that Magento will accept.

Incorrect Characters – Some fields may use html code, in which case you’ll need to be sure that you don’t have characters that require special code (for example “<”).

Image Import Errors – Make sure that all of your images are uploaded to the /media/import folder and that your spreadsheet image names are identical to the names in the media folder.

 

Using URL Builder to Improve Analytics Reporting

When using Analytics, Google itself has access to enough information to feed you a lot of data in terms of users’ interactions with your website, as well as where they originated from. However, there are a couple types of marketing efforts efforts that can lead to users accessing your site from sources that Google either can’t identify or can’t segment enough to be useful to you.

The two prominent examples are email marketing campaigns and running multiple ads on a single domain. In the case of email campaigns, google doesn’t have control over your email client, and thus doesn’t know where the email link originated. As a result, without using URL builder, one’s email campaign traffic will likely end up showing up under Acquisition Channels as Direct traffic. When running multiple ads on one website– you may have one banner ad, header, footer, plain text, etc.– google will not be able to differentiate which traffic came from which ad, preventing you from assessing their performance and adjusting accordingly.

In these cases, Google offers a simple tool to feed it the information it needs in order to give you this useful data- URL builder. Using URL builder allows you to create a custom url for your destination page and attribute the desired source information, in turn allowing Google Analytics to better display the exact behavior of users.

 

To access URL Builder click here or search for “URL builder” and ,if you’re logged into analytics, you should see a page like the following:

 

URL builder homepage

 

Taking the example of an email marketing campaign, what you’ll want to do is enter the url of the page that you are linking to in your emails. In this case lets say that I’m sending links to Astral Web’s content page:

 

URL Builder Landing page

I then fill out the boxes as required below:

URL Builder Demonstration image

*when copying and pasting destination URLs, be sure that they do not contain any excess coding or characters- you’ll end up with a non-functional link.

After clicking Submit, we’re given a long link that includes all of the information that has just been entered into URL Builder.

Unique URL from URL builder

This is the link that I’ll want to put into my emails (or ads, etc.) in order to identify them in analytics.

In order to ensure that the link is functional and visible in analytics, paste this link into a separate browser window while you’ve got your viewing your Real Time > Traffic Sources. As you can see below, if the link is functioning properly, you’ll be able to see it almost immediately in Analytics. Furthermore, all the information you’ve input to distinguish the medium, campaign, and target are now identified by Google, and Analytics can give you the kind of information that is really crucial to optimizing your marketing campaigns.

Checking URL builder with Real Time view

If you’d like more information, please check out Ori’s video tutorial on using URL Builder.

 

Installing WordPress (quick guide)

Here’s a straight-forward step by step guide on how to Install WordPress 3.6/3.7

We are always happy to answer any questions you may have. Let’s begin!

Install WordPress on Server

Step 1: Download WordPress

Go to wordpress.org and click on download to get the latest wordpress files.

Download WordPress

Step 2: Upload WordPress to Server

Use your favorite FTP client to upload the files to your server. If you have downloaded a compress file, you’ll have to unzip it.

Upload Files to FTP

Step 3: Setup MYSQL Database

Go to your hosting database section and add a new database. Don’t forget to write down your login information.
* username, password, database name, hostname

Setup Mysql Database

Step 4: Define Connection information for WordPress

Go to your server via your FTP client and edit your wp-config-sample.php file. Replace file with your username, password, database name and hostname.

After you have completed filling up information, rename the file to wp-config.php

Input Database Information

Step 5: Start Installing from browser

Go to your browser and visit the url of server you have placed wordpress on.

You will arrive to a setup screen. Fill out all information and don’t forget your username and password.

Install WordPress

Step 6: Login to Site and Test Site Live

Login to backend and view frontend to test site.

Login to WordPress Admin Area

Wordpress Admin Area

Test WordPress Site for First Time

You’re awesome! You made it!!!


Setup Theme:

Step 1: Login to Admin

Login to site.com/wp-admin/ on server.

Wordpress Admin Area

Option A – Install from wordpress existing theme

Step 2: Go to theme section

Go to appearance -> themes -> install themes

Install Theme

Step 3: Preview, Select and Install

Search for the desired theme and once you preview and are happy click on the install link and approve.

Preview Theme

Step 4: View Live site

Go to main site and confirm that theme looks good.

Test New WordPress Theme

OPTION B: Get a theme from external source (free, paid)

Step 3: Upload to Server

Go to FTP -> /wp-content/themes/ and upload theme folder

Upload Theme Via FTP

Step 4: Activate in Themes Section

Go to Admin -> Appearance -> Themes -> Manage Themes -> Available Themes and “activate”

Activate Theme

Step 5: View Live site

Go to main site and confirm that theme looks good.

Test New Theme