 #  Add Custom Scripts or Stylesheets to a Joomla Article 

 

  ![Add Custom Scripts or Stylesheets to a Joomla Article](https://cdn.richeyweb.com/images/articles/thumbs-up-kid.webp)    If you've ever tried to add custom scripts or stylesheets to a single article in Joomla, you know the frustration. You spend time crafting the perfect [JavaScript](/test-article "Shader BG Test") or [CSS](/blog/development/fun-with-svgs "Fun With SVG Graphics"), only to have it stripped out the moment you hit save. It's a common pain point for many in website development, especially when working within a content management system like Joomla. In fact, this issue is one of the most frequently asked questions among users.

 Just search the forums and you'll find threads like [Joomla - Insert .js and .css files into a single Joomla article?](https://stackoverflow.com/questions/6047737/joomla-insert-js-and-css-files-into-a-single-joomla-article "joomla1.5 - Joomla - Insert .js and .css files into a single Joomla article? - Stack Overflow"), [Joomla 3 can't add &lt;script&gt; to article](https://stackoverflow.com/questions/26839930/joomla-3-cant-add-script-to-article "javascript - Joomla 3 can't add <script> to article - Stack Overflow"), [How do you assign jQuery scripts to an article?](https://joomla.stackexchange.com/questions/26404/how-do-you-assign-jquery-scripts-to-an-article "joomla 3.x - How do you assign jQuery scripts to an article? - Joomla StackExchange"), and [Add page-specific javascript or CSS in Joomla](https://stackoverflow.com/questions/758667/add-page-specific-javascript-or-css-in-joomla "Add page-specific javascript or CSS in Joomla - Stack Overflow") popping up year after year. Don't worry, though. This guide will walk you through why this happens, core workarounds for Joomla, popular community solutions, and some easy buttons from RicheyWeb to simplify your web development process.

## Why Joomla Strips Your Scripts and Styles

Joomla, as a robust content management system, prioritizes security. One of its protective measures is to prevent potential threats like cross-site scripting (XSS) attacks. This Joomla security feature often results in editor filtering that removes or alters custom scripts and stylesheets when you save an article. While this is great for CMS security, it can be a real headache for website administration when you're trying to add specific JavaScript or CSS to enhance [user experience](/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron "Cron vs Joomla Lazy Scheduler and WebCron") on a single page.

## Understanding Joomla Security and Editor Filtering

Joomla's WYSIWYG editor (like TinyMCE or JCE) and content filters are designed for **security**. Allowing raw &lt;script&gt; tags in articles opens the door to XSS attacks, especially on sites with multiple authors.

- Even if you switch to "No Editor" or adjust [Global Configuration](/joomla-techniques/speed-up-your-joomla-workflow-with-a-custom-administrator-menu "Speed Up Your Joomla Workflow with a Custom Administrator Menu") &gt; Text Filters (e.g., set Super Users to "No Filtering"), code can still get mangled or cause issues.
- Global solutions (like adding to your template's index.php) load assets on **every page**—bloating load times and wasting resources.
- The result: You end up with clunky hacks that feel unreliable.
 
But don't worry—Joomla provides built-in ways to handle this safely.

## The Impact on Website Development

When you're deep into website development, especially with Joomla, the inability to easily add custom scripts or stylesheets can slow down your workflow. Whether it's a unique jQuery effect or a tailored CSS design, losing your code on save disrupts both frontend and backend development. It's a barrier to achieving the desired user experience for your audience.

## Core Joomla Workarounds

### Basic: Disable Filtering or Use a Code-Friendly Editor

- Switch the article to "Editor - None" or use CodeMirror.
- In Global Configuration &gt; Text Filters, relax rules for trusted user groups (or tweak TinyMCE's Prohibited Elements).
 
**Pros**: Quick and simple for inline styles/scripts.

**Cons**: Risky on multi-author sites; still limited for external files or proper &lt;head&gt; loading.

### Intermediate: Custom HTML Module + Load Position

- Create a [Custom HTML module](/joomla-techniques/insert-anything-into-your-joomla-articles "Insert Anything Into Your Joomla Articles") with your script/style code (or inline).
- Assign it to the specific article/menu item.
- Load it in the article with  or {loadmoduleid XX} (hidden with CSS if needed).
 
**Pros**: Per-page control; works well for inline content.

**Cons**: Assets might not load in &lt;head&gt;; manual every time.

### Advanced: Custom HTML Module Layout Override with WebAssetManager (Joomla 4/5/6)

This is the pro-level pure-Joomla solution for clean, proper asset loading.

- Create a Custom HTML module (blank content, assigned to your article).
- In your template folder: /templates/your-template/html/mod\_custom/my-assets.php
- Use [PHP](/blog/hosting/varnish-and-joomla "Varnish and Joomla") to register assets via Joomla's [WebAssetManager](/blog/development/i-rebuilt-my-bundler-plugin-because-your-joomla-site-is-embarrassingly-slow "I Rebuilt My Bundler Plugin Because Your Joomla Site is Embarrassingly Slow") (supports defer/async, [no duplicates](/blog/development/canonical-chaos-round-three-polishing-the-blade "Canonical Chaos, Round Three: Polishing the Blade")).
- Set the module's Layout to your override file.
- Load the module in the article (hidden output).
 
**Pros**: Assets load correctly in &lt;head&gt;, performant, secure, only where the module is published.

**Cons**: Requires PHP knowledge and template access.

## Challenges with Core Methods in Joomla

While these core methods work, they often demand technical know-how or manual effort. Disabling filters can expose you to security risks like cross-site scripting, while modules and overrides might feel cumbersome for quick tasks in website administration. This is where third-party extensions come into play for many Joomla users.

## Popular Community Solutions: Third-Party Extensions

The Joomla community has created several reliable tools to simplify this. Here are a few widely recommended ones:

- [**Sourcerer by Regular Labs**](https://extensions.joomla.org/extension/sourcerer/ "Sourcerer by Regular Labs"): A free (with Pro version) plugin that lets you wrap code in {source} tags to insert PHP, JS, CSS, or HTML directly—without stripping. Perfect for quick per-article injections and highly popular for bypassing editor limits.
- [**Custom Head Tag and CSS and Javascript by JoomHelper**](https://extensions.joomla.org/extension/custom-head-tag-and-css-and-javascript/ "Custom Head Tag and CSS and Javascript by JoomHelper"): Allows adding custom JS/CSS/meta tags per article via dedicated fields—great for targeted, no-code additions with support for structured data and more.
 
These extensions are trusted and highly rated on the [Joomla Extensions Directory](/blog/development/fair-reviews-and-support "Fair Reviews and Support"), but they may require site-wide enabling or tag memorization.

### The Easy Buttons: RicheyWeb Extensions for Effortless Per-Article Assets

These core and community methods work well—but often feel manual or code-heavy for everyday editors. That's why I created free RicheyWeb extensions focused on secure, user-friendly per-article injection.

#### [Fields - XMLForm](/software/joomla/plugins/fields-xmlform): The Ultimate Visual Easy Button

**[Fields - XMLForm](/blog/personal/why-my-joomla-extensions-are-free "Why My Joomla Extensions Are Free")** turns Joomla's custom fields into intuitive forms for loading scripts/stylesheets—**only on the articles where needed**.

Download the free plugin from [richeyweb.com](/software/joomla/plugins/fields-xmlform?referrer=grok.com), install, and import my ready-to-use definitions (no coding required).

**Standout Example: Bootstrap 5 Components Per-Article** Import the free **jbootstrap** package from [richeyweb.com](/software/examples/subform-xmlform/bootstrap-5-components-in-joomla?referrer=grok.com).

In the article editor, editors get a simple checkbox interface:

![jbootstrap XMLForm output](https://cdn.richeyweb.com/images/articles/plg_fields_xmlform/examples/jbootstrap/Screenshot_20250925_180958.png)

*(Just check what you need—e.g., Alert, Collapse, Dropdown, Modal, Tab—and the required Bootstrap 5 JS/CSS loads **only on this article**. No extra files if nothing's selected!)*

Other free definitions:

- **Script**: External or inline JavaScript (defer/async options).
- **StyleSheet**: Custom CSS files or inline styles per article.
 
**Why it's ideal**: Checkboxes/forms for editors; proper WebAssetManager loading; performance-optimized.

#### [System - Head Tag](/software/joomla/plugins/system-headtag): The Quick Tag-Based Solution

Drop simple tags in your article (editor-safe).

#### System - Google Tag Manager: The Pro Scalable Option

Install GTM once, then trigger custom JS/CSS per-article via Google's interface (great for consent-aware or dynamic scripts).

### Wrap-Up: Solve This Headache Forever

From basic filtering tweaks to advanced overrides, Joomla offers solid core options—and community favorites like Sourcerer fill the gaps quickly. But for the easiest, most editor-friendly experience, try **Fields - XMLForm** with its ready-made definitions.

## Conclusion: Simplifying Joomla Customization

Adding custom scripts or stylesheets to a single Joomla article doesn't have to be a headache. From understanding why Joomla strips code due to editor filtering and Joomla security, to exploring core workarounds like custom HTML modules and WebAssetManager overrides, there's a path for everyone. Community solutions like Sourcerer and Add Custom CSS offer accessible third-party extensions, while RicheyWeb's easy buttons, especially [Fields - XMLForm](/software/joomla/plugins/fields-xmlform "Fields - XMLForm"), provide tailored simplicity for web development. Start with Fields - XMLForm for its versatility and ease, and let us know your thoughts or experiences in the comments. If you've found value in these tools, consider leaving a review on the Joomla Extensions Directory to support the community!

## Frequently Asked Questions:

Why does Joomla strip out my custom scripts and stylesheets when I save an article? Joomla prioritizes security to prevent threats like cross-site scripting attacks. By default, editors like TinyMCE are set to filter out certain HTML elements, including script tags, to protect against malicious code. This editor filtering ensures CMS security but can remove your custom JavaScript and CSS when saving content.

Citation:[All HTML markup is stripped when you save an article](https://docs.joomla.org/All_HTML_markup_is_stripped_when_you_save_an_article)

How can I disable editor filtering in Joomla to add custom scripts?You can disable editor filtering by going to Joomla's Global Configuration, selecting the Text Filters tab, and setting filtering for Super Users to 'No Filtering.' This allows HTML, JavaScript, and CSS to remain in your articles, but it poses a security risk if not handled with caution.

Citation:[Stack Overflow: Joomla 3 can't add script to article](https://stackoverflow.com/questions/26839930/joomla-3-cant-add-script-to-article)

What is a safe way to add custom scripts to a single Joomla article without disabling filters?A safer method is using a custom HTML module with the loadposition plugin. Create a module with your scripts or stylesheets, assign it to a specific position, and insert it into your article using the {loadposition} tag. This keeps your code isolated and secure, limiting its scope to the intended page.

Citation:[Place article specific scripts in head section](https://joomla.stackexchange.com/questions/30384/place-article-specific-scripts-in-head-section)

How can I use Joomla's WebAssetManager for adding custom scripts or styles?For advanced users, WebAssetManager allows you to create custom overrides to inject scripts or styles into specific pages. This method requires technical knowledge of Joomla's backend but provides precise control over asset loading, aligning with best practices for customization.

Citation:[Understanding Output Overrides](https://docs.joomla.org/Understanding_Output_Overrides)

What are some popular third-party extensions for adding custom code in Joomla? Two popular extensions are Sourcerer by Regular Labs and Add Custom CSS by Impression eStudio. Sourcerer lets you place HTML, JavaScript, or CSS directly in content using {source} tags, while Add Custom CSS loads custom styles after other CSS files to override designs easily.

Citation:[Regular Labs: Sourcerer - Place any code in Joomla!](https://regularlabs.com/extensions/sourcerer)

How does Fields - XMLForm help with custom scripts in Joomla articles? Fields - XMLForm is a free RicheyWeb plugin that allows you to create complex forms using Joomla's XML syntax and output them as HTML, meta tags, or scripts in the head section. It offers a visual editor for ease, making it ideal for embedding custom JavaScript or Bootstrap components in specific articles.

Citation:[RicheyWeb: Fields - XMLForm](https://www.richeyweb.com/software/joomla/plugins/fields-xmlform)

What is System - HeadTag and how does it assist with page-specific customizations? System - HeadTag, another free RicheyWeb plugin, enables you to inject JavaScript, CSS, or custom tags into the document head based on menu items or user groups. It's perfect for page-specific customizations, supporting frameworks like jQuery and Bootstrap, ensuring scripts load only where needed.

Citation:[RicheyWeb: System - HeadTag](https://www.richeyweb.com/software/joomla/plugins/system-headtag)

Can I use custom scripts to improve SEO on my Joomla site? Yes, custom scripts can enhance SEO. For example, Fields - XMLForm allows you to add structured data like JSON-LD directly into articles for better search visibility. Additionally, System - Google Tag Manager helps with analytics tracking, supporting SEO efforts with data-driven insights.

Citation:[RicheyWeb: System - Google Tag Manager](https://www.richeyweb.com/software/joomla/plugins/system-google-tag-manager)

How do I ensure website performance when adding custom scripts in Joomla? To maintain website performance, load scripts and styles only on pages where they are needed. Tools like System - HeadTag and Fields - XMLForm allow targeted loading, preventing unnecessary bloat on other pages and keeping load times optimal for a better user experience.

Citation:[RicheyWeb: System - HeadTag](https://www.richeyweb.com/software/joomla/plugins/system-headtag)

What should I consider about security when adding custom code to Joomla?Balancing security with customization is crucial. While adding custom scripts, be aware of risks like cross-site scripting. Use trusted plugins like those from RicheyWeb, and avoid disabling editor filters unless necessary. Always follow Joomla security best practices to protect your site.

Citation:[RicheyWeb: Fields - XMLForm](https://www.richeyweb.com/software/joomla/plugins/fields-xmlform)



- [      email ](mailto:?subject=Add+Custom+Scripts+or+Stylesheets+to+a+Joomla+Article&body=https%3A%2F%2Fwww.richeyweb.com%2Fjoomla-techniques%2Fhow-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind)
- [      facebook ](https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwww.richeyweb.com%2Fjoomla-techniques%2Fhow-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind)
- [      x-twitter ](https://twitter.com/intent/tweet?text=Add+Custom+Scripts+or+Stylesheets+to+a+Joomla+Article%3A+https%3A%2F%2Fwww.richeyweb.com%2Fjoomla-techniques%2Fhow-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind)
- [      linkedin ](http://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fwww.richeyweb.com%2Fjoomla-techniques%2Fhow-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind&title=Add+Custom+Scripts+or+Stylesheets+to+a+Joomla+Article&summary=If+you%27ve+ever+tried+to+add+custom+scripts+or+styl...)
- [      pinterest ](http://pinterest.com/pin/create/button/?url=https%3A%2F%2Fwww.richeyweb.com%2Fjoomla-techniques%2Fhow-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind&media=https%3A%2F%2Fwww.richeyweb.com%2Fimages%2Farticles%2Fplg_fields_xmlform%2Fexamples%2Fjbootstrap%2FScreenshot_20250925_180958.png&description=Add+Custom+Scripts+or+Stylesheets+to+a+Joomla+Article)
 


 

   [  Previous article: Build a Clean Joomla Header Search Popup in Minutes - For Free   Build a Clean Joomla Header Search Popup in Minutes - For Free ](/joomla-techniques/build-a-clean-joomla-header-search-popup-in-minutes-for-free) [  Next article: YouTube RSS Feed Gallery  YouTube RSS Feed Gallery  ](/joomla-techniques/youtube-rss-feed-gallery)  

##### We Value Your Privacy

 

We use cookies to enhance your experience and for traffic analysis. By continuing to visit this site you agree to our use of cookies.

[Privacy Policy](/privacy-policy)

 Details 

###### Google Tag Manager Items

- Ad Storage
- Ad User Data
- Ad Personalization
- Analytics Storage
- Functionality Storage
- Personalization Storage
- Security Storage
 
 

 

 

 

 

 Decline Accept
```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.richeyweb.com/#organization","name":"RicheyWeb","url":"https://www.richeyweb.com/","logo":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/logo/richeyweb.svg","contentUrl":"https://www.richeyweb.com/images/logo/richeyweb.svg","width":{"@type":"QuantitativeValue","value":38,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":38,"unitCode":"PX"},"@id":"https://www.richeyweb.com/#logo"},"image":{"@id":"https://www.richeyweb.com/#logo"},"sameAs":["https://x.com/ComRicheyweb","https://www.facebook.com/RicheyWebDev/","https://www.youtube.com/channel/UCxnVG8BwOvQRO7hVqNX7T2g","https://community.joomla.org/service-providers-directory/listings/115:richeyweb.html"],"description":"RicheyWeb is a custom software developer specializing in Joomla extensions.","ContactPoint":[{"@type":"ContactPoint","url":"https://www.richeyweb.com/contact-us","telephone":"903-873-8460","contactType":"Owner/Administrator","areaServed":["United States",{"@type":"Country","name":"United States","sameAs":["https://en.wikipedia.org/wiki/United_States","https://www.wikidata.org/wiki/Q30","https://g.co/kg/m/09c7w0"]},"European Union",{"@type":"AdministrativeArea","name":"European Union","sameAs":["https://en.wikipedia.org/wiki/European_Union","https://www.wikidata.org/wiki/Q458","https://g.co/kg/m/0_6t_z8"]},"United Kingdom",{"@type":"Country","name":"United Kingdom","sameAs":["https://en.wikipedia.org/wiki/United_Kingdom","https://www.wikidata.org/wiki/Q145","https://g.co/kg/m/07ssc"]},"Australia",{"@type":"Country","name":"Australia","sameAs":["https://en.wikipedia.org/wiki/Australia","https://www.wikidata.org/wiki/Q408","https://g.co/kg/m/0chghy"]},"Canada",{"@type":"Country","name":"Canada","sameAs":["https://en.wikipedia.org/wiki/Canada","https://www.wikidata.org/wiki/Q16","https://g.co/kg/m/0d060g"]},"Russia",{"@type":"Country","name":"Russia","sameAs":["https://en.wikipedia.org/wiki/Russia","https://www.wikidata.org/wiki/Q159","https://g.co/kg/m/06bnz"]},"China",{"@type":"Country","name":"China","sameAs":["https://en.wikipedia.org/wiki/China","https://www.wikidata.org/wiki/Q148","https://g.co/kg/m/0d05w3"]}],"availableLanguage":"en"},{"@type":"ContactPoint","url":"https://www.richeyweb.com/bugs","telephone":"903-873-8460","contactType":"Technical Support","areaServed":["United States",{"@type":"Country","name":"United States","sameAs":["https://en.wikipedia.org/wiki/United_States","https://www.wikidata.org/wiki/Q30","https://g.co/kg/m/09c7w0"]},"European Union",{"@type":"AdministrativeArea","name":"European Union","sameAs":["https://en.wikipedia.org/wiki/European_Union","https://www.wikidata.org/wiki/Q458","https://g.co/kg/m/0_6t_z8"]},"United Kingdom",{"@type":"Country","name":"United Kingdom","sameAs":["https://en.wikipedia.org/wiki/United_Kingdom","https://www.wikidata.org/wiki/Q145","https://g.co/kg/m/07ssc"]},"Australia",{"@type":"Country","name":"Australia","sameAs":["https://en.wikipedia.org/wiki/Australia","https://www.wikidata.org/wiki/Q408","https://g.co/kg/m/0chghy"]},"Canada",{"@type":"Country","name":"Canada","sameAs":["https://en.wikipedia.org/wiki/Canada","https://www.wikidata.org/wiki/Q16","https://g.co/kg/m/0d060g"]},"Russia",{"@type":"Country","name":"Russia","sameAs":["https://en.wikipedia.org/wiki/Russia","https://www.wikidata.org/wiki/Q159","https://g.co/kg/m/06bnz"]},"China",{"@type":"Country","name":"China","sameAs":["https://en.wikipedia.org/wiki/China","https://www.wikidata.org/wiki/Q148","https://g.co/kg/m/0d05w3"]}],"availableLanguage":"en"}],"knowsAbout":["Computer programming",{"@type":"Thing","name":"Computer programming","sameAs":["https://en.wikipedia.org/wiki/Computer_programming","https://www.wikidata.org/wiki/Q80006","https://g.co/kg/m/01mf_"]},"PHP",{"@type":"Thing","name":"PHP","sameAs":["https://en.wikipedia.org/wiki/PHP","https://www.wikidata.org/wiki/Q59","https://g.co/kg/m/060kv"]},"JavaScript",{"@type":"Thing","name":"JavaScript","sameAs":["https://en.wikipedia.org/wiki/JavaScript","https://www.wikidata.org/wiki/Q2005","https://g.co/kg/m/02p97"]},"arduino","Computer forensics",{"@type":"Thing","name":"Computer forensics","sameAs":["https://en.wikipedia.org/wiki/Computer_forensics","https://www.wikidata.org/wiki/Q878553","https://g.co/kg/m/02wxbd"]},"White hat",{"@type":"Thing","name":"White hat","sameAs":["https://en.wikipedia.org/wiki/White_hat_(computer_security)","https://www.wikidata.org/wiki/Q7995625","https://g.co/kg/m/03ns_5"]},"Search engine optimization",{"@type":"Thing","name":"Search engine optimization","sameAs":["https://en.wikipedia.org/wiki/Search_engine_optimization","https://www.wikidata.org/wiki/Q180711","https://g.co/kg/m/019qb_"]},"Search engine marketing",{"@type":"Thing","name":"Search engine marketing","sameAs":["https://en.wikipedia.org/wiki/Search_engine_marketing","https://www.wikidata.org/wiki/Q846132","https://g.co/kg/m/06mw8r"]},"Digital marketing",{"@type":"Thing","name":"Digital marketing","sameAs":["https://en.wikipedia.org/wiki/Digital_marketing","https://www.wikidata.org/wiki/Q1323528","https://g.co/kg/g/122hcnps"]},"Web hosting service",{"@type":"Thing","name":"Web hosting service","sameAs":["https://en.wikipedia.org/wiki/Web_hosting_service","https://www.wikidata.org/wiki/Q5892272","https://g.co/kg/m/014pz4"]},"Email hosting service",{"@type":"Thing","name":"Email hosting service","sameAs":["https://en.wikipedia.org/wiki/Email_hosting_service","https://www.wikidata.org/wiki/Q5368818","https://g.co/kg/m/09w60m"]},"Internet hosting service",{"@type":"Thing","name":"Internet hosting service","sameAs":["https://en.wikipedia.org/wiki/Internet_hosting_service","https://www.wikidata.org/wiki/Q1210425","https://g.co/kg/m/09w5yw"]},"Virtual hosting",{"@type":"Thing","name":"Virtual hosting","sameAs":["https://en.wikipedia.org/wiki/Virtual_hosting","https://www.wikidata.org/wiki/Q588365","https://g.co/kg/m/024mvh"]},"Web performance",{"@type":"Thing","name":"Web performance","sameAs":["https://en.wikipedia.org/wiki/Web_performance","https://www.wikidata.org/wiki/Q7978612","https://g.co/kg/m/0gfj3f1"]},"Web content management system",{"@type":"Thing","name":"Web content management system","sameAs":["https://en.wikipedia.org/wiki/Web_content_management_system","https://www.wikidata.org/wiki/Q45211","https://g.co/kg/m/0615s2"]},"Content management system",{"@type":"Thing","name":"Content management system","sameAs":["https://en.wikipedia.org/wiki/Content_management_system","https://www.wikidata.org/wiki/Q131093","https://g.co/kg/m/0k23c"]},"General Data Protection Regulation",{"@type":"Thing","name":"General Data Protection Regulation","sameAs":["https://en.wikipedia.org/wiki/General_Data_Protection_Regulation","https://www.wikidata.org/wiki/Q1172506","https://g.co/kg/m/0pk_7xs"]},"SERP",{"@type":"Thing","name":"SERP","sameAs":["https://en.wikipedia.org/wiki/SERP","https://www.wikidata.org/wiki/Q2205811","https://g.co/kg/g/11c5szp7kc"]},"Artificial intelligence",{"@type":"Thing","name":"Artificial intelligence","sameAs":["https://en.wikipedia.org/wiki/Artificial_intelligence","https://www.wikidata.org/wiki/Q11660","https://g.co/kg/m/0mkz"]},"Prompt engineering",{"@type":"Thing","name":"Prompt engineering","sameAs":["https://en.wikipedia.org/wiki/Prompt_engineering","https://www.wikidata.org/wiki/Q108941486","https://g.co/kg/g/11p6kpgt_n"]},"E-learning",{"@type":"Thing","name":"E-learning","sameAs":["https://en.wikipedia.org/wiki/E-learning_(theory)","https://www.wikidata.org/wiki/Q182250","https://g.co/kg/g/122czm1f"]},"Sharable Content Object Reference Model",{"@type":"Thing","name":"Sharable Content Object Reference Model","sameAs":["https://en.wikipedia.org/wiki/Sharable_Content_Object_Reference_Model","https://www.wikidata.org/wiki/Q827811","https://g.co/kg/m/06_40"]},"Experience API",{"@type":"Thing","name":"Experience API","sameAs":["https://en.wikipedia.org/wiki/Experience_API","https://www.wikidata.org/wiki/Q7807728","https://g.co/kg/g/1yw9ktxr8"]},"Joomla",{"@type":"Thing","name":"Joomla","sameAs":["https://en.wikipedia.org/wiki/Joomla","https://www.wikidata.org/wiki/Q13167","https://g.co/kg/m/07qb81"]},"Nginx",{"@type":"Thing","name":"Nginx","sameAs":["https://en.wikipedia.org/wiki/Nginx","https://www.wikidata.org/wiki/Q306144","https://g.co/kg/m/02qft91"]},"MySQL",{"@type":"Thing","name":"MySQL","sameAs":["https://en.wikipedia.org/wiki/MySQL","https://www.wikidata.org/wiki/Q850","https://g.co/kg/m/04y3k"]}],"areaServed":["United States",{"@type":"Country","name":"United States","sameAs":["https://en.wikipedia.org/wiki/United_States","https://www.wikidata.org/wiki/Q30","https://g.co/kg/m/09c7w0"]},"European Union",{"@type":"AdministrativeArea","name":"European Union","sameAs":["https://en.wikipedia.org/wiki/European_Union","https://www.wikidata.org/wiki/Q458","https://g.co/kg/m/0_6t_z8"]},"United Kingdom",{"@type":"Country","name":"United Kingdom","sameAs":["https://en.wikipedia.org/wiki/United_Kingdom","https://www.wikidata.org/wiki/Q145","https://g.co/kg/m/07ssc"]},"Australia",{"@type":"Country","name":"Australia","sameAs":["https://en.wikipedia.org/wiki/Australia","https://www.wikidata.org/wiki/Q408","https://g.co/kg/m/0chghy"]},"Canada",{"@type":"Country","name":"Canada","sameAs":["https://en.wikipedia.org/wiki/Canada","https://www.wikidata.org/wiki/Q16","https://g.co/kg/m/0d060g"]},"Russia",{"@type":"Country","name":"Russia","sameAs":["https://en.wikipedia.org/wiki/Russia","https://www.wikidata.org/wiki/Q159","https://g.co/kg/m/06bnz"]},"China",{"@type":"Country","name":"China","sameAs":["https://en.wikipedia.org/wiki/China","https://www.wikidata.org/wiki/Q148","https://g.co/kg/m/0d05w3"]}],"memberOf":["Mensa International",{"@type":"Organization","name":"Mensa International","sameAs":["https://en.wikipedia.org/wiki/Mensa_International","https://www.wikidata.org/wiki/Q184194","https://g.co/kg/m/0140pf"]},"National Rifle Association",{"@type":"Organization","name":"National Rifle Association","sameAs":["https://en.wikipedia.org/wiki/National_Rifle_Association","https://www.wikidata.org/wiki/Q863259","https://g.co/kg/m/0j6f9"]},"CompTIA",{"@type":"Organization","name":"CompTIA","sameAs":["https://en.wikipedia.org/wiki/CompTIA","https://www.wikidata.org/wiki/Q597534","https://g.co/kg/m/040shq"]},"ISFCE LLC",{"@type":"Organization","name":"ISFCE LLC","sameAs":["https://isfce.com","https://g.co/kg/g/11wxm5r0rg"]}],"hasCredential":[{"@type":"EducationalOccupationalCredential","name":"Joomla 3 Certified Administrator","credentialCategory":"Certification","description":"Administrator Exam is the first available Joomla! certification exam","recognizedBy":{"@type":"Organization","name":"Open Source Matters, Inc.","sameAs":["https://en.wikipedia.org/wiki/Open_Source_Matters,_Inc.","https://g.co/kg/g/11f00wvjhz"]},"url":"https://certification.joomla.org/certified-user-directory/michael-richey","about":["Content management system",{"@type":"Thing","name":"Content management system","sameAs":["https://en.wikipedia.org/wiki/Content_management_system","https://www.wikidata.org/wiki/Q131093","https://g.co/kg/m/0k23c"]},"Web content management system",{"@type":"Thing","name":"Web content management system","sameAs":["https://en.wikipedia.org/wiki/Web_content_management_system","https://www.wikidata.org/wiki/Q45211","https://g.co/kg/m/0615s2"]},"Joomla",{"@type":"Thing","name":"Joomla","sameAs":["https://en.wikipedia.org/wiki/Joomla","https://www.wikidata.org/wiki/Q13167","https://g.co/kg/m/07qb81"]}],"educationalLevel":"expert","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/contact/badge.webp","contentUrl":"https://www.richeyweb.com/images/contact/badge.webp","width":{"@type":"QuantitativeValue","value":300,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":86,"unitCode":"PX"},"caption":"Joomla 3 Certified Administrator"}},{"@type":"EducationalOccupationalCredential","name":"Certified Computer Examiner","credentialCategory":"Certification","description":"Internationally recognized computer forensics certifiecation","recognizedBy":{"@type":"Organization","name":"ISFCE LLC","sameAs":["https://en.wikipedia.org/wiki/ISFCE_LLC","https://g.co/kg/g/11wxm5r0rg"]},"url":"https://isfce.com/","about":["Digital forensics",{"@type":"Thing","name":"Digital forensics","sameAs":["https://en.wikipedia.org/wiki/Digital_forensics","https://www.wikidata.org/wiki/Q3246940","https://g.co/kg/m/0cnxzfx"]},"Computer forensics",{"@type":"Thing","name":"Computer forensics","sameAs":["https://en.wikipedia.org/wiki/Computer_forensics","https://www.wikidata.org/wiki/Q878553","https://g.co/kg/m/02wxbd"]},"Mobile device forensics",{"@type":"Thing","name":"Mobile device forensics","sameAs":["https://en.wikipedia.org/wiki/Mobile_device_forensics","https://www.wikidata.org/wiki/Q6887097","https://g.co/kg/m/06zp3tp"]},"Network forensics",{"@type":"Thing","name":"Network forensics","sameAs":["https://en.wikipedia.org/wiki/Network_forensics","https://www.wikidata.org/wiki/Q7001032","https://g.co/kg/m/05pb280"]},"Database forensics",{"@type":"Thing","name":"Database forensics","sameAs":["https://en.wikipedia.org/wiki/Database_forensics","https://www.wikidata.org/wiki/Q5227405","https://g.co/kg/m/0cgqsy"]}],"educationalLevel":"expert","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/contact/isfce-cce.webp","contentUrl":"https://www.richeyweb.com/images/contact/isfce-cce.webp","width":{"@type":"QuantitativeValue","value":150,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":150,"unitCode":"PX"},"caption":"Certified Computer Examiner"}}],"hasOfferCatalog":{"@type":"OfferCatalog","name":"Web Services","itemListElement":[{"@type":"Offer","itemOffered":{"@type":"Service","name":"Hosting"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Development"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Search Engine Optimization"}}]}},{"@type":"WebSite","@id":"https://www.richeyweb.com/#website","url":"https://www.richeyweb.com/","name":"RicheyWeb","publisher":{"@id":"https://www.richeyweb.com/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://www.richeyweb.com/search?q={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string","valueMaxLength":256,"valueMinLength":2,"valuePattern":"^[A-Za-z0-9\\s]+$"}},"creator":{"@id":"https://www.richeyweb.com/#organization"},"copyrightHolder":{"@id":"https://www.richeyweb.com/#organization"}},{"@type":"WebPage","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#webpage","url":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind","name":"Add Custom Scripts or Stylesheets to a Joomla Article","description":"Learn how to add custom scripts and stylesheets to a single Joomla article with secure, easy methods and extensions.","isPartOf":{"@id":"https://www.richeyweb.com/#website"},"about":{"@id":"https://www.richeyweb.com/#organization"},"inLanguage":"en-GB"},{"@type":"Article","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/thumbs-up-kid.webp","contentUrl":"https://www.richeyweb.com/images/articles/thumbs-up-kid.webp","width":{"@type":"QuantitativeValue","value":600,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":337,"unitCode":"PX"},"caption":"Add Custom Scripts or Stylesheets to a Joomla Article","representativeOfPage":true},"headline":"Add Custom Scripts or Stylesheets to a Joomla Article","description":"Learn how to add custom scripts and stylesheets to a single Joomla article with secure, easy methods and extensions.","author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"},"datePublished":"2025-12-19T00:00:00+00:00","dateModified":"2025-12-20T00:00:00+00:00","about":["Joomla",{"@type":"Thing","name":"Joomla","sameAs":["https://en.wikipedia.org/wiki/Joomla","https://www.wikidata.org/wiki/Q13167","https://g.co/kg/m/07qb81"]},"Fields - XMLForm",{"@type":"SoftwareApplication","@id":"https://www.richeyweb.com/software/joomla/plugins/fields-xmlform/#softwareapplication","name":"Fields - XMLForm","sameAs":["https://extensions.joomla.org/extension/authoring-a-content/custom-fields/fields-xmlform/","https://en.wikipedia.org/wiki/Fields_-_XMLForm"]},"System - Head Tag",{"@type":"SoftwareApplication","@id":"https://www.richeyweb.com/software/joomla/plugins/system-headtag/#softwareapplication","name":"System - Head Tag","sameAs":["https://extensions.joomla.org/extension/core-enhancements/coding-a-scripts-integration/headtag/","https://en.wikipedia.org/wiki/System_-_Head_Tag"]},"System - Google Tag Manager",{"@type":"SoftwareApplication","@id":"https://www.richeyweb.com/software/joomla/plugins/system-google-tag-manager/#softwareapplication","name":"System - Google Tag Manager","sameAs":["https://extensions.joomla.org/extension/site-management/analytics/system-google-tag-manager/","https://en.wikipedia.org/wiki/System_-_Google_Tag_Manager"]},"HTML",{"@type":"Thing","name":"HTML","sameAs":["https://en.wikipedia.org/wiki/HTML","https://www.wikidata.org/wiki/Q8811","https://g.co/kg/m/03g20"]},"Header",{"@type":"Thing","name":"Header","sameAs":["https://en.wikipedia.org/wiki/Header_(computing)","https://www.wikidata.org/wiki/Q747318","https://g.co/kg/m/02dnj_"]}],"mentions":["Style sheet",{"@type":"Thing","name":"Style sheet","sameAs":["https://en.wikipedia.org/wiki/Style_sheet_(web_development)","https://www.wikidata.org/wiki/Q7629439","https://g.co/kg/m/03xtg1"]},"Content management system",{"@type":"Thing","name":"Content management system","sameAs":["https://en.wikipedia.org/wiki/Content_management_system","https://www.wikidata.org/wiki/Q131093","https://g.co/kg/m/0k23c"]},"Computer programming",{"@type":"Thing","name":"Computer programming","sameAs":["https://en.wikipedia.org/wiki/Computer_programming","https://www.wikidata.org/wiki/Q80006","https://g.co/kg/m/01mf_"]},"Front-end web development",{"@type":"Thing","name":"Front-end web development","sameAs":["https://en.wikipedia.org/wiki/Front-end_web_development","https://www.wikidata.org/wiki/Q4130556","https://g.co/kg/m/010gqt_p"]},"Cross-site scripting",{"@type":"Thing","name":"Cross-site scripting","sameAs":["https://en.wikipedia.org/wiki/Cross-site_scripting","https://www.wikidata.org/wiki/Q371199","https://g.co/kg/m/01j_hm"]},"Computer security",{"@type":"Thing","name":"Computer security","sameAs":["https://en.wikipedia.org/wiki/Computer_security","https://www.wikidata.org/wiki/Q3510521","https://g.co/kg/m/022x_"]},"Web performance",{"@type":"Thing","name":"Web performance","sameAs":["https://en.wikipedia.org/wiki/Web_performance","https://www.wikidata.org/wiki/Q7978612","https://g.co/kg/m/0gfj3f1"]},"Search engine optimization",{"@type":"Thing","name":"Search engine optimization","sameAs":["https://en.wikipedia.org/wiki/Search_engine_optimization","https://www.wikidata.org/wiki/Q180711","https://g.co/kg/m/019qb_"]},"CSS",{"@type":"Thing","name":"CSS","sameAs":["https://en.wikipedia.org/wiki/CSS","https://www.wikidata.org/wiki/Q46441","https://g.co/kg/m/015tjh"]},"jQuery",{"@type":"Thing","name":"jQuery","sameAs":["https://en.wikipedia.org/wiki/JQuery","https://www.wikidata.org/wiki/Q230036","https://g.co/kg/m/0268gyp"]},{"@type":"Thing","name":"Bootstrap","sameAs":["https://en.wikipedia.org/wiki/Bootstrap_(front-end_framework)","https://g.co/kg/m/0j671ln"]},"Plug-in",{"@type":"Thing","name":"Plug-in","sameAs":["https://en.wikipedia.org/wiki/Plug-in_(computing)","https://www.wikidata.org/wiki/Q3906765","https://g.co/kg/m/05x35"]},"Webmaster",{"@type":"Thing","name":"Webmaster","sameAs":["https://en.wikipedia.org/wiki/Webmaster","https://www.wikidata.org/wiki/Q41674","https://g.co/kg/m/01r28v"]},"User experience design",{"@type":"Thing","name":"User experience design","sameAs":["https://en.wikipedia.org/wiki/User_experience_design","https://www.wikidata.org/wiki/Q11248500","https://g.co/kg/g/120_g8jl"]},"Coding best practices",{"@type":"Thing","name":"Coding best practices","sameAs":["https://en.wikipedia.org/wiki/Coding_best_practices","https://www.wikidata.org/wiki/Q12180017","https://g.co/kg/m/0dr_k2"]},{"@type":"Article","@id":"https://www.richeyweb.com/test-article#article","url":"https://www.richeyweb.com/test-article","name":"Shader BG Test","headline":"Shader BG Test","author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#article","url":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron","name":"Cron vs Joomla Lazy Scheduler and WebCron","headline":"Cron vs Joomla Lazy Scheduler and WebCron","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/lazy-scheduler-and-web-cron/lazy-scheduler-and-web-cron.webp","contentUrl":"https://www.richeyweb.com/images/articles/lazy-scheduler-and-web-cron/lazy-scheduler-and-web-cron.webp","width":{"@type":"QuantitativeValue","value":888,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":499,"unitCode":"PX"},"caption":"Cron vs Joomla Lazy Scheduler and WebCron"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/blog/personal/why-my-joomla-extensions-are-free#article","url":"https://www.richeyweb.com/blog/personal/why-my-joomla-extensions-are-free","name":"Why My Joomla Extensions Are Free","headline":"Why My Joomla Extensions Are Free","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/why-my-joomla-extensions-are-free/free-extensions-kinison.webp","contentUrl":"https://www.richeyweb.com/images/articles/why-my-joomla-extensions-are-free/free-extensions-kinison.webp","width":{"@type":"QuantitativeValue","value":666,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":374,"unitCode":"PX"},"caption":"Why My Joomla Extensions Are Free"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/blog/development/fair-reviews-and-support#article","url":"https://www.richeyweb.com/blog/development/fair-reviews-and-support","name":"Fair Reviews and Support","headline":"Fair Reviews and Support","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/fair-reviews-and-support/fair-reviews-text.webp","contentUrl":"https://www.richeyweb.com/images/articles/fair-reviews-and-support/fair-reviews-text.webp","width":{"@type":"QuantitativeValue","value":872,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":500,"unitCode":"PX"},"caption":"Fair Reviews and Support"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/blog/hosting/varnish-and-joomla#article","url":"https://www.richeyweb.com/blog/hosting/varnish-and-joomla","name":"Varnish and Joomla","headline":"Varnish and Joomla","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/varnish-nginx-joomla/varnish-and-joomla.webp","contentUrl":"https://www.richeyweb.com/images/articles/varnish-nginx-joomla/varnish-and-joomla.webp","width":{"@type":"QuantitativeValue","value":890,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":500,"unitCode":"PX"},"caption":"Varnish and Joomla"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/blog/personal/someone-elses-code#article","url":"https://www.richeyweb.com/blog/personal/someone-elses-code","name":"Someone Else’s Code","headline":"Someone Else’s Code","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/other-peoples-code/other-peoples-code.webp","contentUrl":"https://www.richeyweb.com/images/articles/other-peoples-code/other-peoples-code.webp","width":{"@type":"QuantitativeValue","value":598,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":336,"unitCode":"PX"},"caption":"Someone Else’s Code"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/blog/development/canonical-chaos-round-three-polishing-the-blade#article","url":"https://www.richeyweb.com/blog/development/canonical-chaos-round-three-polishing-the-blade","name":"Canonical Chaos, Round Three: Polishing the Blade","headline":"Canonical Chaos, Round Three: Polishing the Blade","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/joomlas-canonical-url-chaos/canonical-banana.webp","contentUrl":"https://www.richeyweb.com/images/articles/joomlas-canonical-url-chaos/canonical-banana.webp","width":{"@type":"QuantitativeValue","value":677,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":380,"unitCode":"PX"},"caption":"Canonical Chaos, Round Three: Polishing the Blade"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/blog/development/fun-with-svgs#article","url":"https://www.richeyweb.com/blog/development/fun-with-svgs","name":"Fun With SVG Graphics","headline":"Fun With SVG Graphics","author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/blog/development/i-rebuilt-my-bundler-plugin-because-your-joomla-site-is-embarrassingly-slow#article","url":"https://www.richeyweb.com/blog/development/i-rebuilt-my-bundler-plugin-because-your-joomla-site-is-embarrassingly-slow","name":"I Rebuilt My Bundler Plugin Because Your Joomla Site is Embarrassingly Slow","headline":"I Rebuilt My Bundler Plugin Because Your Joomla Site is Embarrassingly Slow","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/i-rebuilt-my-bundler-plugin-because-your-joomla-site-is-embarrassingly-slow/dominoes-bundler-meme.webp","contentUrl":"https://www.richeyweb.com/images/articles/i-rebuilt-my-bundler-plugin-because-your-joomla-site-is-embarrassingly-slow/dominoes-bundler-meme.webp","width":{"@type":"QuantitativeValue","value":725,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":407,"unitCode":"PX"},"caption":"I Rebuilt My Bundler Plugin Because Your Joomla Site is Embarrassingly Slow"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/joomla-techniques/load-feedback-in-joomla-without-an-extension#article","url":"https://www.richeyweb.com/joomla-techniques/load-feedback-in-joomla-without-an-extension","name":"Load Feedback in Joomla Without an Extension","headline":"Load Feedback in Joomla Without an Extension","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/load-feedback-in-joomla-without-an-extension/feedback-beforeafter.webp","contentUrl":"https://www.richeyweb.com/images/articles/load-feedback-in-joomla-without-an-extension/feedback-beforeafter.webp","width":{"@type":"QuantitativeValue","value":856,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":481,"unitCode":"PX"},"caption":"Load Feedback in Joomla Without an Extension"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/joomla-techniques/insert-anything-into-your-joomla-articles#article","url":"https://www.richeyweb.com/joomla-techniques/insert-anything-into-your-joomla-articles","name":"Insert Anything Into Your Joomla Articles","headline":"Insert Anything Into Your Joomla Articles","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/insert-anything-into-your-joomla-articles/insert-via-output-override.webp","contentUrl":"https://www.richeyweb.com/images/articles/insert-anything-into-your-joomla-articles/insert-via-output-override.webp","width":{"@type":"QuantitativeValue","value":1814,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":1020,"unitCode":"PX"},"caption":"Insert Anything Into Your Joomla Articles"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/joomla-techniques/speed-up-your-joomla-workflow-with-a-custom-administrator-menu#article","url":"https://www.richeyweb.com/joomla-techniques/speed-up-your-joomla-workflow-with-a-custom-administrator-menu","name":"Speed Up Your Joomla Workflow with a Custom Administrator Menu","headline":"Speed Up Your Joomla Workflow with a Custom Administrator Menu","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/speed-up-your-joomla-workflow-with-a-custom-administrator-menu/custom-admin-menus.webp","contentUrl":"https://www.richeyweb.com/images/articles/speed-up-your-joomla-workflow-with-a-custom-administrator-menu/custom-admin-menus.webp","width":{"@type":"QuantitativeValue","value":1368,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":769,"unitCode":"PX"},"caption":"Speed Up Your Joomla Workflow with a Custom Administrator Menu"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}}],"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#article","isPartOf":{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#webpage"},"publisher":{"@id":"https://www.richeyweb.com/#organization"},"citation":[{"@type":"CreativeWork","@id":"https://stackoverflow.com/questions/6047737/joomla-insert-js-and-css-files-into-a-single-joomla-article#creativework","url":"https://stackoverflow.com/questions/6047737/joomla-insert-js-and-css-files-into-a-single-joomla-article"},{"@type":"CreativeWork","@id":"https://stackoverflow.com/questions/26839930/joomla-3-cant-add-script-to-article#creativework","url":"https://stackoverflow.com/questions/26839930/joomla-3-cant-add-script-to-article"},{"@type":"CreativeWork","@id":"https://joomla.stackexchange.com/questions/26404/how-do-you-assign-jquery-scripts-to-an-article#creativework","url":"https://joomla.stackexchange.com/questions/26404/how-do-you-assign-jquery-scripts-to-an-article"},{"@type":"CreativeWork","@id":"https://stackoverflow.com/questions/758667/add-page-specific-javascript-or-css-in-joomla#creativework","url":"https://stackoverflow.com/questions/758667/add-page-specific-javascript-or-css-in-joomla"},{"@type":"CreativeWork","@id":"https://extensions.joomla.org/extension/sourcerer/#creativework","url":"https://extensions.joomla.org/extension/sourcerer/"},{"@type":"CreativeWork","@id":"https://extensions.joomla.org/extension/custom-head-tag-and-css-and-javascript/#creativework","url":"https://extensions.joomla.org/extension/custom-head-tag-and-css-and-javascript/"},{"@type":"CreativeWork","@id":"https://www.richeyweb.com/software/joomla/plugins/fields-xmlform#softwareapplication","url":"https://www.richeyweb.com/software/joomla/plugins/fields-xmlform","name":"Fields - XMLForm"},{"@type":"CreativeWork","@id":"software/joomla/plugins/fields-xmlform?referrer=grok.com#creativework","url":"software/joomla/plugins/fields-xmlform?referrer=grok.com"},{"@type":"CreativeWork","@id":"software/examples/subform-xmlform/bootstrap-5-components-in-joomla?referrer=grok.com#creativework","url":"software/examples/subform-xmlform/bootstrap-5-components-in-joomla?referrer=grok.com"},{"@type":"CreativeWork","@id":"https://www.richeyweb.com/software/joomla/plugins/system-headtag#softwareapplication","url":"https://www.richeyweb.com/software/joomla/plugins/system-headtag","name":"System - Head Tag"},{"@type":"CreativeWork","@id":"software/joomla/plugins/fields-xmlform#creativework","url":"software/joomla/plugins/fields-xmlform"}],"keywords":"custom scripts, stylesheets, Joomla article, JavaScript, CSS, Joomla security, cross-site scripting (XSS) attacks, editor filtering, WYSIWYG editor, TinyMCE, JCE, Global Configuration, Text Filters, Custom HTML Module, Load Position, WebAssetManager, Joomla 4/5/6, PHP, Third-Party Extensions, Sourcerer, Regular Labs, Custom Head Tag, CSS and Javascript, JoomHelper, Joomla Extensions Directory, Fields - XMLForm, Bootstrap 5 Components, External or inline JavaScript, StyleSheet, Custom CSS files, Inline styles, System - Head Tag, System - Google Tag Manager, Joomla customization, website development, content management system, user experience, website administration, jQuery scripts, page-specific javascript, javascript or CSS, index.php, Super Users, No Filtering, Prohibited Elements, defer/async, no duplicates, template folder, register assets, hidden output, ready-to-use definitions, performance-optimized, editor-friendly experience, editor-safe tags, consent-aware scripts, d","articleSection":"Joomla Techniques","url":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind","hasPart":[{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-why-joomla-strips-your-scripts-and-styles_2_1"},{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-understanding-joomla-security-and-editor-filtering_2_2"},{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-the-impact-on-website-development_2_3"},{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-core-joomla-workarounds_2_4"},{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-basic-disable-filtering-or-use-a-code-friendly-editor_3_5"},{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-intermediate-custom-html-module-load-position_3_6"},{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-advanced-custom-html-module-layout-override-with-webassetmanager-joomla-4-5-6_3_7"},{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-challenges-with-core-methods-in-joomla_2_8"},{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-popular-community-solutions-third-party-extensions_2_9"},{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-the-easy-buttons-richeyweb-extensions-for-effortless-per-article-assets_3_10"},{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-wrap-up-solve-this-headache-forever_3_11"},{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-conclusion-simplifying-joomla-customization_2_12"},{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#faqpage"}]},{"@type":"FAQPage","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#faqpage","url":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind","isPartOf":{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#article"},"mainEntityOfPage":{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#webpage"},"mainEntity":[{"@type":"Question","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#question-0","name":"Why does Joomla strip out my custom scripts and stylesheets when I save an article?\r\n","acceptedAnswer":{"@type":"Answer","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#answer-0","text":"Joomla prioritizes security to prevent threats like cross-site scripting attacks. By default, editors like TinyMCE are set to filter out certain HTML elements, including script tags, to protect against malicious code. This editor filtering ensures CMS security but can remove your custom JavaScript and CSS when saving content.\r\n\r\n","citation":{"@type":"CreativeWork","url":"https://docs.joomla.org/All_HTML_markup_is_stripped_when_you_save_an_article","name":"All HTML markup is stripped when you save an article"}}},{"@type":"Question","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#question-1","name":"How can I disable editor filtering in Joomla to add custom scripts?","acceptedAnswer":{"@type":"Answer","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#answer-1","text":"You can disable editor filtering by going to Joomla's Global Configuration, selecting the Text Filters tab, and setting filtering for Super Users to 'No Filtering.' This allows HTML, JavaScript, and CSS to remain in your articles, but it poses a security risk if not handled with caution.","citation":{"@type":"CreativeWork","url":"https://stackoverflow.com/questions/26839930/joomla-3-cant-add-script-to-article","name":"Stack Overflow: Joomla 3 can't add script to article"}}},{"@type":"Question","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#question-2","name":"What is a safe way to add custom scripts to a single Joomla article without disabling filters?","acceptedAnswer":{"@type":"Answer","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#answer-2","text":"A safer method is using a custom HTML module with the loadposition plugin. Create a module with your scripts or stylesheets, assign it to a specific position, and insert it into your article using the {loadposition} tag. This keeps your code isolated and secure, limiting its scope to the intended page.","citation":{"@type":"CreativeWork","url":"https://joomla.stackexchange.com/questions/30384/place-article-specific-scripts-in-head-section","name":"Place article specific scripts in head section"}}},{"@type":"Question","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#question-3","name":"How can I use Joomla's WebAssetManager for adding custom scripts or styles?","acceptedAnswer":{"@type":"Answer","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#answer-3","text":"For advanced users, WebAssetManager allows you to create custom overrides to inject scripts or styles into specific pages. This method requires technical knowledge of Joomla's backend but provides precise control over asset loading, aligning with best practices for customization.","citation":{"@type":"CreativeWork","url":"https://docs.joomla.org/Understanding_Output_Overrides","name":"Understanding Output Overrides"}}},{"@type":"Question","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#question-4","name":"What are some popular third-party extensions for adding custom code in Joomla?\r\n","acceptedAnswer":{"@type":"Answer","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#answer-4","text":"Two popular extensions are Sourcerer by Regular Labs and Add Custom CSS by Impression eStudio. Sourcerer lets you place HTML, JavaScript, or CSS directly in content using {source} tags, while Add Custom CSS loads custom styles after other CSS files to override designs easily.\r\n\r\n","citation":{"@type":"CreativeWork","url":"https://regularlabs.com/extensions/sourcerer","name":"Regular Labs: Sourcerer - Place any code in Joomla!"}}},{"@type":"Question","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#question-5","name":"How does Fields - XMLForm help with custom scripts in Joomla articles?\r\n","acceptedAnswer":{"@type":"Answer","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#answer-5","text":"Fields - XMLForm is a free RicheyWeb plugin that allows you to create complex forms using Joomla's XML syntax and output them as HTML, meta tags, or scripts in the head section. It offers a visual editor for ease, making it ideal for embedding custom JavaScript or Bootstrap components in specific articles.\r\n\r\n","citation":{"@type":"CreativeWork","url":"https://www.richeyweb.com/software/joomla/plugins/fields-xmlform","name":"RicheyWeb: Fields - XMLForm"}}},{"@type":"Question","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#question-6","name":"What is System - HeadTag and how does it assist with page-specific customizations?\r\n","acceptedAnswer":{"@type":"Answer","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#answer-6","text":"System - HeadTag, another free RicheyWeb plugin, enables you to inject JavaScript, CSS, or custom tags into the document head based on menu items or user groups. It's perfect for page-specific customizations, supporting frameworks like jQuery and Bootstrap, ensuring scripts load only where needed.\r\n\r\n","citation":{"@type":"CreativeWork","url":"https://www.richeyweb.com/software/joomla/plugins/system-headtag","name":"RicheyWeb: System - HeadTag"}}},{"@type":"Question","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#question-7","name":"Can I use custom scripts to improve SEO on my Joomla site?\r\n","acceptedAnswer":{"@type":"Answer","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#answer-7","text":"Yes, custom scripts can enhance SEO. For example, Fields - XMLForm allows you to add structured data like JSON-LD directly into articles for better search visibility. Additionally, System - Google Tag Manager helps with analytics tracking, supporting SEO efforts with data-driven insights.\r\n\r\n","citation":{"@type":"CreativeWork","url":"https://www.richeyweb.com/software/joomla/plugins/system-google-tag-manager","name":"RicheyWeb: System - Google Tag Manager"}}},{"@type":"Question","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#question-8","name":"How do I ensure website performance when adding custom scripts in Joomla?\r\n","acceptedAnswer":{"@type":"Answer","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#answer-8","text":"To maintain website performance, load scripts and styles only on pages where they are needed. Tools like System - HeadTag and Fields - XMLForm allow targeted loading, preventing unnecessary bloat on other pages and keeping load times optimal for a better user experience.","citation":{"@type":"CreativeWork","url":"https://www.richeyweb.com/software/joomla/plugins/system-headtag","name":"RicheyWeb: System - HeadTag"}}},{"@type":"Question","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#question-9","name":"What should I consider about security when adding custom code to Joomla?","acceptedAnswer":{"@type":"Answer","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#answer-9","text":"Balancing security with customization is crucial. While adding custom scripts, be aware of risks like cross-site scripting. Use trusted plugins like those from RicheyWeb, and avoid disabling editor filters unless necessary. Always follow Joomla security best practices to protect your site.\r\n\r\n","citation":{"@type":"CreativeWork","url":"https://www.richeyweb.com/software/joomla/plugins/fields-xmlform","name":"RicheyWeb: Fields - XMLForm"}}}]},{"@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex","@type":"ItemList","name":"Add Custom Scripts or Stylesheets to a Joomla Article","numberOfItems":12,"itemListElement":[{"@type":"ListItem","position":1,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-why-joomla-strips-your-scripts-and-styles_2_1","name":"Why Joomla Strips Your Scripts and Styles","url":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#toc-why-joomla-strips-your-scripts-and-styles_2_1"}},{"@type":"ListItem","position":2,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-understanding-joomla-security-and-editor-filtering_2_2","name":"Understanding Joomla Security and Editor Filtering","url":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#toc-understanding-joomla-security-and-editor-filtering_2_2"}},{"@type":"ListItem","position":3,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-the-impact-on-website-development_2_3","name":"The Impact on Website Development","url":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#toc-the-impact-on-website-development_2_3"}},{"@type":"ListItem","position":4,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-core-joomla-workarounds_2_4","name":"Core Joomla Workarounds","url":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#toc-core-joomla-workarounds_2_4"}},{"@type":"ListItem","position":5,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-basic-disable-filtering-or-use-a-code-friendly-editor_3_5","name":"Basic: Disable Filtering or Use a Code-Friendly Editor","url":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#toc-basic-disable-filtering-or-use-a-code-friendly-editor_3_5"}},{"@type":"ListItem","position":6,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-intermediate-custom-html-module-load-position_3_6","name":"Intermediate: Custom HTML Module + Load Position","url":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#toc-intermediate-custom-html-module-load-position_3_6"}},{"@type":"ListItem","position":7,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-advanced-custom-html-module-layout-override-with-webassetmanager-joomla-4-5-6_3_7","name":"Advanced: Custom HTML Module Layout Override with WebAssetManager (Joomla 4/5/6)","url":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#toc-advanced-custom-html-module-layout-override-with-webassetmanager-joomla-4-5-6_3_7"}},{"@type":"ListItem","position":8,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-challenges-with-core-methods-in-joomla_2_8","name":"Challenges with Core Methods in Joomla","url":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#toc-challenges-with-core-methods-in-joomla_2_8"}},{"@type":"ListItem","position":9,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-popular-community-solutions-third-party-extensions_2_9","name":"Popular Community Solutions: Third-Party Extensions","url":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#toc-popular-community-solutions-third-party-extensions_2_9"}},{"@type":"ListItem","position":10,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-the-easy-buttons-richeyweb-extensions-for-effortless-per-article-assets_3_10","name":"The Easy Buttons: RicheyWeb Extensions for Effortless Per-Article Assets","url":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#toc-the-easy-buttons-richeyweb-extensions-for-effortless-per-article-assets_3_10"}},{"@type":"ListItem","position":11,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-wrap-up-solve-this-headache-forever_3_11","name":"Wrap-Up: Solve This Headache Forever","url":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#toc-wrap-up-solve-this-headache-forever_3_11"}},{"@type":"ListItem","position":12,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#articleindex-toc-conclusion-simplifying-joomla-customization_2_12","name":"Conclusion: Simplifying Joomla Customization","url":"https://www.richeyweb.com/joomla-techniques/how-to-add-custom-scripts-or-stylesheets-to-a-single-joomla-article-without-losing-your-mind#toc-conclusion-simplifying-joomla-customization_2_12"}}]}]}
```
