Blogs

RSS
RSS
thumbnail

So, as a developer, I'm like usually whacking my whole runtime environment and starting over. Why? Well, regardless how much I try to keep it clean, cruft will find its way into the environment. I'm left with users I don't want, content I don't want, pages I'm not using any more, sites created to demo something I'm not demoing any more... So I'll throw out my data directory,...

12263
thumbnail

At Liferay Symposium North America 2017, I had a discussion with a few of our customers on the hidden dangers of rolling back Liferay changes. There are multiple ongoing efforts to improve how we will handle the issue for the upcoming 7.1 release, such as LPS-76923. However, the 7.0 release is already affected, and DE-40 is fast approaching with another round of hidden dangers...

7562
thumbnail

On October 6, 2017 my colleague Sebastiaan and I held a presentation at Liferay DevCon about a cool integration the COIN team made. We were looking for a fun and exciting Internet of Things integration in Liferay. After a fruitful brainstorm, we decided to use Philips Hue. Another couple of brainstorms later, we formed the actual idea. The setup was to create an imaginary...

11242
thumbnail

Liferay has different types of pages. The default one is Layout - it’s standard, empty by default page, which is displayed in navigation menu. Portlets may be added to such page, themes and layouts may be also applied to this type of page. In most cases this page type is used. But there are different page types, here are they: Link to a Page of This Site -...

8783
thumbnail

To make some custom class available inside a theme velocity template, you need to put it's instance into com.liferay.portal.kernel.util.WebKeys#VM_VARIABLES request attribute. And it will be populated to the velocity context automatically (in com.liferay.portal.velocity.VelocityTemplateContextHelper#prepare method), see: // Insert custom vm variables Map<String,...

7258

Themelets are small, extendable, and reusable pieces of code. They help to avoid duplication of code. Code that can be reused in other themes can be written in themelet which can be extended to any theme. Unlike Theme in Themelets we will be including only the files in which there are code changes.   Here i have lr-7-theme which looks like below ...

9521
thumbnail

This blog is for creating an interface which will show number of live users and some other details. First of all create a portlet which will provide interface and then create a hook within the portlet.Below link willl help to create hook in portlet. http://www.learnandpost.com/2012/05/create-hook-inside-portlet-liferay.html view.jsp Add below line of code in portlet...

8712
thumbnail

Welcome to the fourth entry in a series about what to keep in mind when building Liferay from source. First, to recap the previous entries in this series from last year: Getting Started with Building Liferay from Source: How to get a clone of the Liferay central repository and how to build Liferay from source. Also some tools that can help you setup your IDE (whether it's...

13090
thumbnail

Short explanation If you want to convert a third party library of your portlets (modules) into a Bundle OSGi to be used by all modules, you could create a new module with your third party library and dependences and be used by your modules. To explain this we will use JasperReport third party library. Supose that you have a module that uses JasperReport to generate PDF files....

18003
thumbnail

I wrote blog for theme development with IDE . Further I explored the way to configure gradle project. I would like to share those steps that I have experienced hard to find and many developers I saw asking for the same thing on the forums. Gradle Configuration   By default, if we create theme using IDE it templates are built using freemarker and parent theme is...

7558
thumbnail

The Liferay ecosystem is richer than ever, and our community members have never been as global. Each one of us has different interests and with all this diversity, it gets hard to understand the people behind our community. This is where this survey comes in: we asked 28 questions, covering topics going from favorite projects all the way to events and user groups. In total we had 393...

15295
thumbnail

This year, the Knowledge Management team at Liferay set out not only to document Liferay 7/DXP, but to document it well. To do this, we identified several improvements we wanted to make: We wanted to connect powerfully with users and customers. To do this, we made a significant effort toward documenting the right things, the things people needed the most to learn about. We...

14318
thumbnail

Liferay provide OOTB features for Preview of Documents (PDF,  Word, Image), Media (Audio and Video) in Document and Media Portlet.  The same is available after installing following components ImageMagick -  To convert into images for preview Ghostscript  - Dependency of ImageMagick Xuggler  - For Audio and Video.  Has to be...

8613
thumbnail

Liferay Theme generator tool is an easy way to create themes in Liferay v6.2 and 7. You would not need SDK for this but remember that there are some prequisities in terms of installation and configuration of few components before you can actually create theme and deploy to your Liferay. Sharing this quick and short article on to highlight what are those key components to be...

7716
thumbnail

Yay, it took a while to get onto it again, and finally I updated Custom Navigation and it just went through the approval process yesterday. Now it's available for Liferay 7 and DXP as well. What does it do? If you've wondered why Liferay defaults to showing only the public pages, or only the private pages in the navigation, never both together, this plugin is for you. Now...

11647
thumbnail

Introduction OSGi Fragments are a really powerful tool to extend the features of an existing bundle. Indeed, since fragments share classpath with their host bundle, they allow us to implement new functionalities avoiding unnecessary resource replications. Nevertheless, there are two main limitations that must be taken into account: since fragments never reach the Active...

11027
thumbnail

Previous parts of this series can be found here (part 1),  here (part 2), here (part 3) and here (part 4). In the final part of this blog series few more interesting features are added to the previously created search portlet: possibility to use Liferay Audience Targeting to make segmented content more relevant, possibility to configure sort and facet...

16845
thumbnail

Liferay Integration with Analytics 1) With Google Analytics Set up an account with Google Analytics: https://analytics.google.com/ This will create a Tracking Id   Configure the Tracking ID In liferay Configuration --> Site Settings --> Analytics A Tracking Code will be generated which can then pasted in JavaScript of the Liferay...

11662
thumbnail

This blog entry is part of a three-part blog series that explores some of the great features provided by Liferay Screens and Liferay Mobile SDK. In this this series, I will cover: Liferay Screens – Use screenlets in your native Android or iOS app to leverage content and services available on your Liferay server Liferay Push Notifications – Push offers and...

7407
thumbnail

Description: For Servlet configuration in Liferay DXP portlet,  we will need to make necessary changes to the configuration files. Start with making a plugin custom portlet and add a servlet to this portlet, then do following configurations   Step 1:  Make sure bnd file has web context path (bnd.bnd) Bundle-Name:...

7195