Category Archives: ‘corePHP’

‘corePHP’ open source technology solutions for business, non-profits, and government agencies. ‘coreTechnology’ blog for technology and business experts.

The 10 Best WordPress Plugins for Ecommerce

Wordpress plugin

The number of online stores is growing every year, and so is the list of WordPress plugins.

WordPress plugins not only help in enriching the functionalities of your ecommerce website but also free up plenty of your time.

You need many different types of plugins to sell your products and services online. If you come to think of it, WordPress plugins provide the same benefits as SaaS products.

Here we are discussing some of the best WordPress plugins for ecommerce that you should try out: Continue reading

EVERYTHING YOU SHOULD KNOW ABOUT CAREER IN NETWORKING

Networking with people

A lot of people consider IT networking to be an appealing career. Nevertheless, it is one of the most popular carriers not only among the youth but older people. Now some argue that there is a serious lack of qualified people in this industry. Some also think networking is a fairly easy way to gain a good position in a fast-growing corporation. Nowadays it is the most sought after and high-paid job in the USA.

Want to know how to become a high-demanded specialist in IT? Being a giant in online job searching, jobsora.com reveals all the secrets of how to get a decent job as well as the features a good specialist you should obtain. Moreover, the resource offers the hottest vacancies in the field. Continue reading

Powerful SEO and Website Optimisation Tips To Consider For Good Results

Website optimisation is a critical factor in boosting your rank on search engines. It allows you to increase awareness for your brand, as well as entice potential customers to view your products and services. To supplement gaining exposure and traffic for your website, you must create a valuable experience for your site visitors so that they will keep coming back.

Here are some powerful SEO and website optimisation tips that you should use for your site: Continue reading

Secure Web Application Development Best Practices

In an age of record data breaches and ransomware attacks, website and app security should be the number one concern for site designers and developers. Users have a right to expect that their apps are easy to use and protect their personal and financial information.

Rather than conducting a cleanup after the fact, putting security first at every level of the development and launch process will save time, money, and maybe more importantly, your reputation.

Top Security Concerns for Web App Developers

The year 2017 was dubbed the “Year of the Data Breach,” breaking records for both the number and severity of data leaks and hacks. Data breaches can cost millions of dollars to remedy and cause irreparable damage to your brand. Many smaller companies go out of business within six months of an attack, unable to withstand the financial strain.

Still, app development is big business, with more than 4 million apps on the market at any given time. Revenues are in the billions and rising. In such a competitive atmosphere, it’s tempting to sacrifice security for speed. More than 80 percent of CIOs list balancing security concerns with marketing deadlines as their main challenge. But, these issues aren’t mutually exclusive. Using app developer security best practices makes it easier to launch on time without some of the unintended consequences of rushing to market. Continue reading

Is Press Release Distribution Right For Your Business: 9 Benefits you Can’t Ignore

 

Press Release Marketing

Do you have a new product, celebrating a milestone, or planning to collaborate with a top 500 company? Press release distribution is a way to go.

If you’re not yet including it as part of your marketing strategies, you are missing a lot of potential benefits that your business should be experiencing. It can be a great tool to reach wide boundaries and grow your business.

Are you aware of these benefits? Here are things that you may be missing, so you’ll work on including it in your tactics: Continue reading

Link Building 101 – Master the Backlinks

So if you are reading this, then I guess you know about link building(Or maybe at least you are familiar with backlinks). Using link building you can increase the visibility of your online business in search results.

As you may know, most of the people use Google to search for different things. And google tries to provide the best results for the search query.

To provide the best results, Google constantly updates his algorithm to remove the spammy sites from search results.

Now, these algorithmic updates may result in a ranking drop of your site if you have to build your backlinks using black hat tactics.

When building backlinks there so many things you have to keep mind and once you master the formula you will be on your way to build quality backlinks for your website. Continue reading

How To Manipulate Source Code Using Java Annotation Processing API

word-image

Technology

The source level annotations are introducing in Java 5, it provides the features to create additional source files during the compilation stage.

The source code files are not limited to java files, files can be any kind like metadata, documentation or any type of resource.

Annotation Processing API is actively used in many open source frameworks like Spring Query DSL and JPA etc.

The limitation with this API is it only used to generate new files, it will not modify the existing files.

Execution

word-image

The annotation processing is done at multiple rounds. Each round starts with compiler searching for the annotations in java source, choosing the annotation processors suited for these annotations, each annotation processor is called in corresponding sources.

If any files are created during the process, another round start with generated source files as input, it will continue until no new files are generated during the processing stage.

The annotation processing API is located in the javax.annotation.processing package. The main interface that you’ll have to implement is the Processor interface, which has a partial implementation in the form of AbstractProcessor class. This class is the one we’re going to extend to create our own annotation processor.

Setting Up the Project

For demonstrations of annotation processing, we will spilt our project into 2 modules, one of them annotation-processing module which will contain annotation processor, another will be annotation-user module.

First, we will implement annotation-processing module, for annotation processing we are going to use Google`s auto-service library which used to create processor meta-data.

It is recommended to use Google auto-service and maven compiler plugin latest versions found in Maven Central Repository.

<properties>

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

<auto-service.version>1.0-rc4</auto-service.version>

</properties>

<dependencies>

<dependency>

<groupId>com.google.auto.service</groupId>

<artifactId>auto-service</artifactId>

<version>${auto-service.version}</version>

<scope>provided</scope>

</dependency>

</dependencies>

<build>

<plugins>

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-compiler-plugin</artifactId>

<version>3.8.0</version>

<configuration>

<release>11</release>

</configuration>

</plugin>

</plugins>

</build>

And annotation-user simply use annotation-processor as its dependency.

<dependency>

<groupId>org.sravan</groupId>

<artifactId>Annotation-Processing</artifactId>

<version>${project.version}</version>

</dependency>

Let’s create a @BuilderProperty annotation in the annotation-processor module for the setter methods. It will allow us to generate the Builder class for each class that has its setter methods annotated:

@Target(ElementType.METHOD)

@Retention(RetentionPolicy.SOURCE)

public@interfaceBuilderProperty {

}

The @Target annotation with the ElementType.METHOD parameter ensures that this annotation can be only put on a method.

The SOURCE retention policy means that this annotation is only available during source processing and is not available at runtime.

Implementing Processor

word-image

AbstractProcessor is the abstract implementation of Processor interface, now lets extends the this class and implement the abstract methods.

@SupportedSourceVersion(SourceVersion.RELEASE_8)

@SupportedAnnotationTypes(“org.sravan.annotation.processor.BuilderProperty”)

@AutoService(Processor.class)

publicclass BuilderProcessor extends AbstractProcessor {

@Override

publicboolean process(Set<? extends TypeElement>annotations, RoundEnvironment roundEnv) {

returnfalse;

}

We should specify the annotations that this processor is capable of processing and also source code version. This can be done either by implementing getSupportedAnnotationTypes and getSupportedSourceVersion of the Processor interface or by annotating your class with @SupportedAnnotationTypes and @SupportedSourceVersion annotations.

And the process method returns true if all supported annotations are processed, and don’t want to process by another annotation processor down the list.

@AutoService annotation is itself processed by the annotation processor from the auto-service library. This processor generates the META-INF/services/javax.annotation.processing.Processor file containing the BuilderProcessor class name.
annotations variable in process method will contain all the annotation types found in the class.

RoundEnvironment instance to receive all elements annotated with the @BuilderProperty annotation.

for(TypeElement annotation: annotations)

{

Set<? extends Element>annotatedElements = roundEnv.getElementsAnnotatedWith(annotation);

}

@BuilderProperty annotation’s user could erroneously annotate methods that are not actually setters. The setter method name should start with set, and the method should receive a single argument. So lets separate the methods which are correctly annotated and other erroneously annotated methods using Collections.partitionBy() collector.

Map<Boolean, List<Element>>annotatedMethods = annotatedElements.stream().collect(Collectors.partitioningBy(element -> ((ExecutableType)element.asType()).getParameterTypes().size()==1 &&

element.getSimpleName().toString().startsWith(“set”)));

List<Element>setters = annotatedMethods.get(true);

List<Element>otherMethods = annotatedMethods.get(false);

We should warn the user if the method is incorrectly annotated, for this we can use AbstractProcessor.processingEnv protected field.

otherMethods.forEach(element ->processingEnv.getMessager().printMessage(Diagnostic.Kind.ERROR, “@BuilderProperty must be applied to a setXxx method with a single argument”, element));

and also if the correctly annotated methods are not present then we can skip the current iteration.

if(setters.isEmpty())

{

continue;

}

Then we need to get the fully qualified class name using setter methods using below code.

String className = ((TypeElement) setters.get(0).getEnclosingElement()).getQualifiedName().toString();

we will store setter methods name, and argument type in map and use it iterate to generate source file.

Map<String,String>setterMap = setters.stream().collect(Collectors.toMap(setter ->setter.getSimpleName().toString(), setter -> ((ExecutableType)setter.asType()).getParameterTypes().get(0).toString()));

Now lets create Person class in annotation-user module like below,

publicclass Person {

privateintage;

private String name;

publicint getAge() {

returnage;

}

@BuilderProperty

publicvoidsetAge(intage) {

this.age = age;

}

public String getName() {

returnname;

}

@BuilderProperty

publicvoid setName(String name) {

this.name = name;

}

}

Running the Example

Although the Java Annotation Processing API is easy but sometimes you would need a custom development to do the source level annotation.

If you don’t want to go through all that trouble I would suggest you should consider Java development outsourcing which is rather easy and hassle-free.

Anyways moving on, now if we compile annotation-user module below java file is generated under annotation-user/target/generated-Sources/annotations/com/baeldung/annotation/PersonBuilder.java and it will look like below:

package org.sravan.annotation;

public class PersonBuilder {

private Person object = new Person();

public Person build() {

return object;

}

public PersonBuilder setName(java.lang.String value) {

object.setName(value);

return this;

}

public PersonBuilder setAge(int value) {

object.setAge(value);

return this;

}

}

Conclusion

In this content, we learned how source-level annotations are processed to generate the source files using the Google Auto Service Library.

The Source code can be found in the attached zip file.

https://drive.google.com/file/d/1z0sszFN47JZAYimd1oexHF2v7bGZQ1Vb/view?usp=sharing

How to Keep Your Design Files Organized

design folders

A logo is only one of the many designs you will use as a business. The logo may have several versions stored in different files. You then have the designs for letterheads, identities, brochures, promotional materials, and many others to maintain. It doesn’t take long before you start dealing with hundreds of design files related to your business.

Keeping them organized is a necessity and not an option. When you have a good design file management system, you can always find the design files you need at any moment. The file management system also allows you to protect your design files better, all while maintaining consistency with your materials.

Even better, you don’t have to use a complex system to keep your design files organized. These tips and tricks will help you get started with managing your files. Continue reading

10 Extra Rich Mega Bundles For WordPress Users

In 2019, bundles are extremely popular and there’s nothing unusual. These packages literally allow you to save money without trouble. In this post, we are about to showcase you 10 amazing WordPress bundles that are totally code-free.

Needless to say, building a website is an important and even must-have process for any company. And how can you do it without having any extra skills or web design experience? Well, actually, there is nothing complicated. Thanks to such graphics resources providers as  MasterBundles website creation became a fast and simple process.

To make a long story short, let name the main reasons why these WordPress bundles are worthy of your attention!

  1. To start with, all these bundles contain numerous website themes, fonts, assets, plugins, options, and other UI components. All of them are fully customizable, so you can quickly build the very website or websites.
  2. Secondly, there will be regular updates and free technical support which is a coll beginning for any project.
  3. Thirdly, you won’t need to touch a single line of code working with these items!
  4. On the other hand, you can save good money by buying a bundle. Just look at these discounts!

#1 Mega Web Design Bundle with Extended License – Only $19

image8

Let’s start with this rich product that was professionally designed for users of any skills levels. As the name of the product says, Mega Web Design Bundle contains a huge amount of colorful designs. There are so many styles to choose from! On average, the package consists of 17 themes, 4 scripts, and 9 plugins. Each of theme has a unique style, so everyone will find there something up to their personal taste.

What will you get choosing Mega Web Design Bundle? Here are the themes:

  • Artemis Responsive One Page Parallax WordPress Theme;
  • Sipress Community Responsive WordPress Theme;
  • Ferado – WooCommerce Fashion Theme;
  • Recipesbook (Gustos) – Recipe Social Network WordPress Theme;
  • Agenture Ultimate Premium Multipurpose WordPress Theme;
  • Gravity Responsive Coming Soon Theme;
  • Xenia Responsive One Page Parallax Theme;
  • Artemis Responsive One Page Parallax Theme;
  • RK Theme;
  • Confidence – OnePage HTML5 Template;
  • Baily – Responsive Resume Template;
  • Rangbazz – Responsive One Page Template;
  • Star Host – HTML5 Responsive Website Template;
  • Baktigoto – Responsive Resume & Portfolio HTML5 Template;
  • Fitness – One Page Responsive Template;
  • Building Structures PSD Template;
  • and Phyon – Multipurpose Responsive PSD Template.

And the price is only $19!

#2 Crocoblock Elementor Subscription

image1

in 2019, Crocoblock is already quite a popular thing. It allows users to get everything and anything for a web design without running out of the budget. To make a long story short, choosing Crocoblock, you will get:

  • an ace package of 11 premium Jet Plugins that were made for the most popular drag & drop page builder – Elementor;
  • 30+ demos;
  • more than +1000 ready-to-use sections;
  • 300+ unique pages;
  • 8 stunning gallery layouts’
  • header & footer builder;
  • friendly technical support;
  • regular updates, and much more!

Today, Crocoblock comes with a 40% discount. Thus, it will cost you $47!

#3 29 Premium Responsive WordPress Theme Mega Bundle

image5

Talking about this comfy WordPress Theme Mega Bundle, let’s start with its price. Why? Simply because right now the item has 97% off! It will cost you only $29. And what will you find inside the bundle? There are such things as:

Visual Composer for WP;

  • premium addons for Visual Composer;
  • visual elements Plugin;
  • fully customizable themes options,
  • shortcodes
  • frontend and backend editors
  • Advanced Grid Builder
  • many background options (like parallax and video backgrounds)
  • fully customizable headers, and much more!

#4 12 Modern and Responsive WordPress themes

image2

Here is another smart product which comes with this amazing 98% discount. Today’s price for the bundle is only $29 and here is what you will find inside its pack:

  • 12 fully responsive WP themes with unique design,
  • commercial license,
  • free24/7 tech support,
  • numerous Retina-ready icons,
  • Search Engines Optimization,
  • 600+ readable web fonts,
  • MegaMenu plugin, and much more!

On average, all of these would cost you almost $1.200 but bundles were invended to save your money. That’s why you can get all the named options just for $29.

#5 WordPress Themes Bundle: 19 Premium Themes for just $27

image6

Here is a handy WP themes bundle which contains 19 premium WordPress themes and not only! For these simple reasons, using the bundle you can easily build such projects as:

  • a designer portfolio,
  • a lifestyle blog,
  • a fashion website,
  • a full-fledged web store, etc.

And what is waiting for you inside the pack? You’ll get the next features:

  • choice of color schemes
  • Google Fonts integration
  • custom plugins & widgets
  • high-quality stock images
  • 100% responsive layouts, etc.

By tradition, after the discount, the price of the bundle is only $27.

#6 10 Restaurant WordPress Themes

image3

In case you are looking for a 100% customizable and easy-to-use set of templates, check out this amazing WP bundle! After the discount, the items price is $39, so don’t miss the boat. Among the main features you will get, there are:

  • Cherry Framework;
  • Back To Top Button;
  • calendar;
  • Crossbrowser Compatibility;
  • custom page templates;
  • Dropdown Menu;
  • Favicon;
  • Social Options;
  • and Tag Cloud.

#7 WordPress Bundle: 10 Premium Themes for $15 ONLY!

image7

First things first, this bundle contains 10 premium themes and you can get them for $15 only! Here are some of the main features you will get:

  • Improved navigation (MegaMenu)
  • Custom Page Templates
  • Google Fonts integration
  • Custom plugins & widgets
  • Social Options
  • Cherry Framework 4
  • WPML readiness

#8 19 Premium Templates & Plugins for $15 ONLY

And the next impressing bungle which will cost you only $15 is 19 Premium Templates & Plugins. Here is what you will get inside the package:

  • Claire Elegant Blog & Magazine WordPress Theme;
  • Photo Portfolio Professional Template;
  • 3D Photo Html5 Template;
  • Full Creative Portfolio Template;
  • Photo Video Htm5 Template;
  • Sevens Modern Template;
  • Freshener Modern Template;
  • Hero Business Template;
  • Creative Photo Album Template;
  • CSS Background Styles, and more!

#9 Mega WordPress Theme Bundle

image9

Mega WordPress Theme Bundle is a wonderful collection of 15 modern web designs. All of them are creator-friendly and come with many useful features. There are multiple trendy elements as well! Here is what you will get for $15 only:

  • 15 ready-made WP themes;
  • customizable colors, fonts & backgrounds;
  • built-in galleries;
  • high-quality plugins & widgets;
  • stock images;
  • 100% responsive layouts;
  • SEO-readiness, etc.

#10 Mega Developer Bundle – $49 ONLY

image4

Finally, it’s time to view out our last but not least bundle. It was designed for big web developers and web designers. In the pack of the item, you’ll find:

  • WordPress Themes,
  • HTML5 & Bootstrap Templates,
  • HTML5 Galleries,
  • Landing Pages,
  • Newsletter Templates,
  • HTML5 Apps,
  • CSS Menus & Utilities.

 

On average, there are over 80 premium products in the bundle!

Top Amazon Small Business Ideas for Beginners to Make Passive Income

making money with amazon
Looking for Amazon business ideas where you can start with a small capital that will generate passive income? If you answered YES, then read on for some business ideas for beginners that will jumpstart your way to earn money. You can also check out academy journalreview.org for tips on how to run a successful business.

Amazon is arguably the largest e-commerce website that caters to customers worldwide. The giant marketplace has sold more than 362 million products and gained more than 6.1 million visits daily. It is indeed an e-commerce giant that can help you succeed, so why not take this opportunity?

Here are the ways beginners can make a passive income with Amazon. Continue reading

6 Features That Every Business Website Need

Do something great sign for your business website

Every entrepreneur is aware of the importance of a website for their business as this is how you raise awareness about your brand in today’s digital marketplace. While it is true that every company needs a website no matter what industry they are in, there is much more to it than this as you will need to have a high-quality website which converts the visitor into a customer. This is an enormous challenge that business owners face, but once you know exactly what your website needs then it can make it much easier to convert visitors. Read on for aspects that all business websites need: Continue reading

How To Start An eCommerce Business

Ecommerce workflow

Photo credit: Campaign Creators

Starting an eCommerce business can be one of the best ways to make good money and build a successful brand, but it will need to be done right from the start to ensure that people notice what you are doing and buy from you. You will want to spend a lot of time researching and setting everything up before you launch, especially as so many people are choosing to do the same thing – even if they are doing it in a different niche. Here are some useful pointers on how to get started on your new eCommerce business. Continue reading