Posts

Showing posts from March, 2023

A Comprehensive Guide on Building Lightning-Fast Websites with React Static Site Generation

Image
  What is a static site  Generation ?    Static site generation is the process of creating a static website by generating HTML, CSS, and JavaScript files in advance and then serving them to users. In a static site, the content of the website is fixed and the pages are generated at build time. This is in contrast to a dynamic site, where the content is generated on-the-fly as the user requests it.   The process of static site generation typically involves using a static site generator, which is a tool that takes content, usually written in markdown, along with templates and other configuration files, and generates a complete set of HTML, CSS, and JavaScript files. These files can then be deployed to a web server or content delivery network (CDN) for serving to users.   Static site generation offers several benefits, including fast load times, low server costs, and improved security. Because the content is generated in advance, there is no need for a backend ...

Deactivating and activating custom modules for a particular site in Liferay 7.4 (Part 2)

Image
  In previous part, we have created a panel module now we will create a service builder to store the values given from the user and to pass it to theme. Then we will create a theme to get this data and deactivate it from the site. Creating a service builder (IntelliJ) To store the state of the portlet on a particular side and to send this information in theme we need a service builder. To create a service builder this are the following steps: Go to File -> New -> Module 2. Update the service.xml file <? xml version ="1.0" ?> <!DOCTYPE  service-builder  PUBLIC  "-//Liferay//DTD Service Builder 7.4.0//EN" " http://www.liferay.com/dtd/liferay-service-builder_7_4_0.dtd " > <service-builder  dependency-injector ="ds"  package-path ="moduleblacklistservice" >   <namespace> ModuleBlaclist </namespace>    <!--<entity data-source="sampleDataSource" local-service="true" name="Foo...