Skip to main content

[From the 2024 Holiday Magazine]

 

Since childhood, Northville fiber artist Laurie Snell has enjoyed doing all kinds of needlework, including counted cross stitch, needlepoint, beading, and her longtime favorite: knitting. But in 2018, while attending the annual Adirondack Wool and Arts Festival at the Washington County Fairgrounds, a new form of needlework caught her eye.

“I was intrigued when I saw a booth with this totally different technique going on, something called needle felting. So, I bought a little kit and made a tiny owl—and I was hooked!” Since then, Snell has delved more deeply into needle felting and wet felting by watching numerous YouTube videos and participating in online felting groups. “There is so much to learn,” she enthuses, “and there are so many great tutorials out there, available to everyone.”

Fiber art refers to artwork made by using natural or synthetic fibers or textiles to create pieces of art recognized largely for their aesthetic value rather than their utility. Felting is a technique by which wool fibers are tangled together, condensing them to a material which can range from wispy to sturdy. To felt, all that’s needed are wool, some sharp, barbed felting needles, and some sort of mat surface—like foam, sponges, or bundled layers of wool—to absorb the point of the needle.

Wet felting involves using wool roving (unspun wool that is washed, carded, and ready to use), hot water, and soap. A variation of wet felting, called nuno felting, incorporates textiles like silk, linen, and open-weave fabrics into the process. 

Needle felting is a wool sculpting technique in which needlelike implements of different sizes are used to repeatedly stab and poke the wool roving, in the process gradually condensing the wool to create solid shapes.

“I enjoy doing all kinds of felting,” Snell says, “but, currently, I seem to be doing more needle felting, which is very time-consuming. When making a doll, I often needle felt the body and face and, then, wet felt the clothing. Both techniques actually tangle the wool fibers to each other. In its natural form, wool is very puffy. It’s full of air. Both needle felting and wet felting basically remove the air from between the fibers, enabling the fibers to lock together to create a very dense wool.”

For years, knitting was Snell’s first love. “But knitting doesn’t have a lot of leeway. You follow a pattern, you count, and you keep track of your stitches. So when I started needle felting and wet felting, it was very freeing to me because there are no patterns, really. It’s all free form. I could mix colors by blending strands of different colored wool and mold the wool any way I wanted to. Felting really opened up a whole new world for me.”

Snell enjoys making highly detailed, quirky dolls and characters that evoke a sense of nostalgia. Loaded with personality, they tend to make you giggle. None of their facial features are painted on. Every last detail—every multi-toned eye, crow’s foot wrinkle, or blushing cheek—is achieved through the meticulous needling of multiple colored strands of wool, artfully locked together.

“My favorite part of doll-making is creating those fine facial details, especially on an elderly face. Making the wrinkles and doing the subtle shading is truly fascinating work. I make all of my dolls’ clothing as well, often embellishing with buttons and beads or pieces of vintage lace and linens.”

Snell may start out with a specific plan for a doll. “But as I progress, the wool will often take me in a different direction. The wool has a life of its own, really, which is why I think the faces are so intriguing. You can actually see the life in them. I used to get frustrated when, after investing a lot of time visualizing a character in a certain way, the wool would disagree with me and take me down a different path. But I’ve learned to step back from it. If I get to a certain spot where I start to feel things changing, I set it aside for a few hours or days. When I return to it, I often see things quite differently. Suddenly, the new direction will make sense.”

For Snell, needle felting is a time-consuming labor of love. “It’s a lot of fun, but it’s also very therapeutic for me. I love getting into that zone where I’m so immersed in it, I kind of lose track of the world around me. It’s a wonderful feeling! But I’m a slow worker, and finding large chunks of free time can be challenging. I’m raising my 5-year-old grandson, Merrick,” she beams, “so spending time with him is my top priority. If I have 20 minutes before Merrick gets home from school, I can’t needle felt but I can do basic things like prepare some base forms, which goes quickly. To really get into my imagination, though, I need solid blocks of time.” 

Merrick enjoys checking out his grandmother’s work area and watching projects evolve. “He makes suggestions, too,” Snell says proudly, “and sometimes I’ll follow his ideas. When that happens, we both feel a nice sense of joint effort.”

Snell loves making holiday-themed characters, Halloween in particular, and experimenting with totally new subjects. “The more I learn through tutorials and first-hand experience, the more ideas I come up with. Lately, I’ve been getting into the world of mushrooms, which is really fascinating to me. I’ve created felted mushrooms both as 3D statues and in 2D form, as more of a painting. There’s always something new to try. The possibilities are endless.”

This vibrant fiber artist has exhibited her work at several venues, including the Shaker Museum Craft Fair in Albany, the Paul Nigra Center for Creative Arts in Gloversville, and the annual Northville Rotary Woodworking and Fine Arts Show. And everywhere she goes people can’t help but stop and chuckle at her charmingly realistic characters. Without question, Laurie Snell proves that wool has a life of its own.

You may contact the artist at lauriesnell.fiber@gmail.com or 518-847-8851.

8.112MBMemory Usage120msRequest Duration
Joomla! Version4.4.13
PHP Version8.3.20
Identityguest
Response200
Templateyootheme
Database
Server
mysql
Version
8.0.42
Collation
utf8mb3_unicode_ci
Conn Collation
utf8mb4_0900_ai_ci
$_GET
array:3 [ "catid" => "15" "id" => "794" "view" => "article" ]
$_POST
[]
$_SESSION
array:1 [ "joomla" => "***redacted***" ]
$_COOKIE
[]
$_SERVER
array:74 [ "USER" => "fivetowers" "HOME" => "/home/fivetowers" "SCRIPT_NAME" => "/index.php" ...
session
array:3 [ "counter" => 1 "timer" => array:3 [ "start" => 1747131357 "last" => 1747131357...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:18 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (444.76KB) (3.46ms)
  • afterInitialise (1.96MB) (30.48ms)
  • afterRoute (375.4KB) (5.2ms)
  • beforeRenderComponent com_content (50.17KB) (902μs)
  • Before Access::preloadComponents (all components) (47.72KB) (1.79ms)
  • After Access::preloadComponents (all components) (119.86KB) (1.43ms)
  • Before Access::preloadPermissions (com_content) (1.63KB) (23μs)
  • After Access::preloadPermissions (com_content) (511.16KB) (1.28ms)
  • Before Access::getAssetRules (id:969 name:com_content.article.794) (18.65KB) (29μs)
  • After Access::getAssetRules (id:969 name:com_content.article.794) (7.38KB) (101μs)
  • afterRenderComponent com_content (1.92MB) (47.84ms)
  • afterDispatch (21.42KB) (1.07ms)
  • beforeRenderRawModule mod_menu () (394.93KB) (10.52ms)
  • afterRenderRawModule mod_menu () (13.13KB) (874μs)
  • beforeRenderModule mod_menu () (696B) (5μs)
  • afterRenderModule mod_menu () (3.73KB) (198μs)
  • beforeRenderRawModule mod_finder () (1.45KB) (12μs)
  • afterRenderRawModule mod_finder () (1.84MB) (5.75ms)
  • beforeRenderModule mod_finder () (704B) (4μs)
  • afterRenderModule mod_finder () (2.82KB) (81μs)
  • beforeRenderRawModule mod_custom () (16B) (208μs)
  • afterRenderRawModule mod_custom () (319KB) (1.09ms)
  • beforeRenderModule mod_custom () (704B) (4μs)
  • afterRenderModule mod_custom () (3.27KB) (65μs)
  • beforeRenderRawModule mod_menu () (24B) (99μs)
  • afterRenderRawModule mod_menu () (552B) (374μs)
  • beforeRenderModule mod_menu () (696B) (3μs)
  • afterRenderModule mod_menu () (2.76KB) (61μs)
  • beforeRenderRawModule mod_custom () (920B) (57μs)
  • afterRenderRawModule mod_custom () (1.03KB) (150μs)
  • beforeRenderModule mod_custom () (704B) (3μs)
  • afterRenderModule mod_custom () (1.23KB) (61μs)
  • beforeRenderRawModule mod_menu () (1.65KB) (115μs)
  • afterRenderRawModule mod_menu () (4.45KB) (427μs)
  • beforeRenderModule mod_menu () (696B) (3μs)
  • afterRenderModule mod_menu () (1.34KB) (73μs)
  • beforeRenderRawModule mod_finder () (96B) (7μs)
  • afterRenderRawModule mod_finder () (6.91KB) (566μs)
  • beforeRenderModule mod_finder () (704B) (4μs)
  • afterRenderModule mod_finder () (1.34KB) (77μs)
  • beforeRenderRawModule mod_custom () (288B) (9μs)
  • afterRenderRawModule mod_custom () (912B) (136μs)
  • beforeRenderModule mod_custom () (704B) (3μs)
  • afterRenderModule mod_custom () (1.23KB) (56μs)
  • beforeRenderRawModule mod_custom () (5.95KB) (149μs)
  • afterRenderRawModule mod_custom () (1008B) (129μs)
  • beforeRenderModule mod_custom () (704B) (3μs)
  • afterRenderModule mod_custom () (2.77KB) (46μs)
  • beforeRenderRawModule mod_custom () (8B) (60μs)
  • afterRenderRawModule mod_custom () (1008B) (130μs)
  • beforeRenderModule mod_custom () (704B) (2μs)
  • afterRenderModule mod_custom () (2.43KB) (44μs)
  • afterRender (235.17KB) (3.48ms)
  • 1 x afterRenderComponent com_content (1.92MB) (39.9%)
    47.84ms
    1 x afterInitialise (1.96MB) (25.42%)
    30.48ms
    1 x beforeRenderRawModule mod_menu () (394.93KB) (8.78%)
    10.52ms
    1 x afterRenderRawModule mod_finder () (1.84MB) (4.79%)
    5.75ms
    1 x afterRoute (375.4KB) (4.34%)
    5.20ms
    1 x afterRender (235.17KB) (2.91%)
    3.48ms
    1 x afterLoad (444.76KB) (2.89%)
    3.46ms
    1 x Before Access::preloadComponents (all components) (47.72KB) (1.49%)
    1.79ms
    1 x After Access::preloadComponents (all components) (119.86KB) (1.19%)
    1.43ms
    1 x After Access::preloadPermissions (com_content) (511.16KB) (1.07%)
    1.28ms
    1 x afterRenderRawModule mod_custom () (319KB) (0.91%)
    1.09ms
    1 x afterDispatch (21.42KB) (0.89%)
    1.07ms
    1 x beforeRenderComponent com_content (50.17KB) (0.75%)
    902μs
    1 x afterRenderRawModule mod_menu () (13.13KB) (0.73%)
    874μs
    1 x afterRenderRawModule mod_finder () (6.91KB) (0.47%)
    566μs
    1 x afterRenderRawModule mod_menu () (4.45KB) (0.36%)
    427μs
    1 x afterRenderRawModule mod_menu () (552B) (0.31%)
    374μs
    2 x afterRenderRawModule mod_custom () (1008B) (0.22%)
    259μs
    1 x beforeRenderRawModule mod_custom () (16B) (0.17%)
    208μs
    1 x afterRenderModule mod_menu () (3.73KB) (0.17%)
    198μs
    1 x afterRenderRawModule mod_custom () (1.03KB) (0.13%)
    150μs
    1 x beforeRenderRawModule mod_custom () (5.95KB) (0.12%)
    149μs
    1 x afterRenderRawModule mod_custom () (912B) (0.11%)
    136μs
    2 x afterRenderModule mod_custom () (1.23KB) (0.1%)
    117μs
    1 x beforeRenderRawModule mod_menu () (1.65KB) (0.1%)
    115μs
    1 x After Access::getAssetRules (id:969 name:com_content.article.794) (7.38KB) (0.08%)
    101μs
    1 x beforeRenderRawModule mod_menu () (24B) (0.08%)
    99μs
    1 x afterRenderModule mod_finder () (2.82KB) (0.07%)
    81μs
    1 x afterRenderModule mod_finder () (1.34KB) (0.06%)
    77μs
    1 x afterRenderModule mod_menu () (1.34KB) (0.06%)
    73μs
    1 x afterRenderModule mod_custom () (3.27KB) (0.05%)
    65μs
    1 x afterRenderModule mod_menu () (2.76KB) (0.05%)
    61μs
    1 x beforeRenderRawModule mod_custom () (8B) (0.05%)
    60μs
    1 x beforeRenderRawModule mod_custom () (920B) (0.05%)
    57μs
    1 x afterRenderModule mod_custom () (2.77KB) (0.04%)
    46μs
    1 x afterRenderModule mod_custom () (2.43KB) (0.04%)
    44μs
    1 x Before Access::getAssetRules (id:969 name:com_content.article.794) (18.65KB) (0.02%)
    29μs
    1 x Before Access::preloadPermissions (com_content) (1.63KB) (0.02%)
    23μs
    5 x beforeRenderModule mod_custom () (704B) (0.01%)
    15μs
    1 x beforeRenderRawModule mod_finder () (1.45KB) (0.01%)
    12μs
    3 x beforeRenderModule mod_menu () (696B) (0.01%)
    11μs
    1 x beforeRenderRawModule mod_custom () (288B) (0.01%)
    9μs
    2 x beforeRenderModule mod_finder () (704B) (0.01%)
    8μs
    1 x beforeRenderRawModule mod_finder () (96B) (0.01%)
    7μs
53 statements were executed, 5 of which were duplicates, 48 unique11.99ms859.52KB
  • SELECT @@SESSION.sql_mode;116μs968B/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:334Copy
  • SELECT `data` FROM `jos_session` WHERE `session_id` = ?182μs1008BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:261Copy
  • SELECT `session_id` FROM `jos_session` WHERE `session_id` = :session_id LIMIT 190μs1.3KBParams/libraries/src/Session/MetadataManager.php:187Copy
  • INSERT INTO `jos_session` (`session_id`,`guest`,`time`,`userid`,`username`,`client_id`) VALUES (:session_id, :guest, :time, :user_id, :username, :client_id)291μs944BParams/libraries/src/Session/MetadataManager.php:260Copy
  • SELECT `id`,`rules` FROM `jos_viewlevels`219μs976B/libraries/src/Access/Access.php:955Copy
  • SELECT `b`.`id` FROM `jos_usergroups` AS `a` LEFT JOIN `jos_usergroups` AS `b` ON `b`.`lft` <= `a`.`lft` AND `b`.`rgt` >= `a`.`rgt` WHERE `a`.`id` = :guest256μs1.33KBParams/libraries/src/Access/Access.php:868Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_k2" AND e.type = "component"161μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_virtuemart" AND e.type = "component"75μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_easyblog" AND e.type = "component"100μs1.13KB/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_jomclassifieds" AND e.type = "component"61μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_hikashop" AND e.type = "component"54μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_rseventspro" AND e.type = "component"54μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_zoo" AND e.type = "component"78μs536B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_jticketing" AND e.type = "component"60μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_icagenda" AND e.type = "component"54μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_eventbooking" AND e.type = "component"71μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_eshop" AND e.type = "component"57μs1.76KB/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_rsblog" AND e.type = "component"69μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_mijovideos" AND e.type = "component"58μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_opencart" AND e.type = "component"60μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_jcart" AND e.type = "component"55μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_djclassifieds" AND e.type = "component"56μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_j2store" AND e.type = "component"56μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_phocacart" AND e.type = "component"59μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_jshopping" AND e.type = "component"73μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_igallery" AND e.type = "component"56μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_dpcalendar" AND e.type = "component"78μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SHOW FULL COLUMNS FROM `jos_tagz_config`611μs1.3KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:625Copy
  • SELECT * FROM `jos_tagz_config` WHERE `name` = 'config'99μs592B/libraries/src/Table/Table.php:755Copy
  • SELECT id,template FROM jos_template_styles WHERE client_id=0 AND home=1160μs592B/administrator/components/com_widgetkit/widgetkit.php:28Copy
  • SELECT custom_data FROM jos_extensions WHERE element = 'yooessentials' AND folder = 'system'133μs536B/plugins/system/yooessentials/helper.php:153Copy
  • SELECT custom_data FROM jos_extensions WHERE element = 'yooessentials' AND folder = 'system' LIMIT 1111μs536B/plugins/system/yooessentials/modules/platform-joomla/src/Database.php:52Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `jos_assets` WHERE `name` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4,:preparedArray5,:preparedArray6,:preparedArray7,:preparedArray8,:preparedArray9,:preparedArray10,:preparedArray11,:preparedArray12,:preparedArray13,:preparedArray14,:preparedArray15,:preparedArray16,:preparedArray17,:preparedArray18,:preparedArray19,:preparedArray20,:preparedArray21,:preparedArray22,:preparedArray23,:preparedArray24,:preparedArray25,:preparedArray26,:preparedArray27,:preparedArray28,:preparedArray29,:preparedArray30,:preparedArray31,:preparedArray32,:preparedArray33,:preparedArray34,:preparedArray35,:preparedArray36,:preparedArray37,:preparedArray38,:preparedArray39,:preparedArray40,:preparedArray41)461μs9.94KBParams/libraries/src/Access/Access.php:357Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `jos_assets` WHERE `name` LIKE :asset OR `name` = :extension OR `parent_id` = 0515μs49.48KBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `jos_content`896μs1.77KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:625Copy
  • UPDATE `jos_content` SET `hits` = (`hits` + 1) WHERE `id` = '794'272μs48B/libraries/src/Table/Table.php:1325Copy
  • SELECT `a`.`id`,`a`.`asset_id`,`a`.`title`,`a`.`alias`,`a`.`introtext`,`a`.`fulltext`,`a`.`state`,`a`.`catid`,`a`.`created`,`a`.`created_by`,`a`.`created_by_alias`,`a`.`modified`,`a`.`modified_by`,`a`.`checked_out`,`a`.`checked_out_time`,`a`.`publish_up`,`a`.`publish_down`,`a`.`images`,`a`.`urls`,`a`.`attribs`,`a`.`version`,`a`.`ordering`,`a`.`metakey`,`a`.`metadesc`,`a`.`access`,`a`.`hits`,`a`.`metadata`,`a`.`featured`,`a`.`language`,`fp`.`featured_up`,`fp`.`featured_down`,`c`.`title` AS `category_title`,`c`.`alias` AS `category_alias`,`c`.`access` AS `category_access`,`c`.`language` AS `category_language`,`fp`.`ordering`,`u`.`name` AS `author`,`parent`.`title` AS `parent_title`,`parent`.`id` AS `parent_id`,`parent`.`path` AS `parent_route`,`parent`.`alias` AS `parent_alias`,`parent`.`language` AS `parent_language`,ROUND(`v`.`rating_sum` / `v`.`rating_count`, 1) AS `rating`,`v`.`rating_count` AS `rating_count` FROM `jos_content` AS `a` INNER JOIN `jos_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `jos_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `jos_users` AS `u` ON `u`.`id` = `a`.`created_by` LEFT JOIN `jos_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `jos_content_rating` AS `v` ON `a`.`id` = `v`.`content_id` WHERE ( (`a`.`id` = :pk AND `c`.`published` > 0) AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :publishUp)) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :publishDown) AND `a`.`state` IN (:preparedArray1,:preparedArray2)431μs54.13KBParams/components/com_content/src/Model/ArticleModel.php:215Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `jos_categories` AS `s` INNER JOIN `jos_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`319μs3.91KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `m`.`tag_id`,`t`.* FROM `jos_contentitem_tag_map` AS `m` INNER JOIN `jos_tags` AS `t` ON `m`.`tag_id` = `t`.`id` WHERE `m`.`type_alias` = :contentType AND `m`.`content_item_id` = :id AND `t`.`published` = 1 AND `t`.`access` IN (:preparedArray1,:preparedArray2)296μs3.97KBParams/libraries/src/Helper/TagsHelper.php:388Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `jos_categories` AS `s` INNER JOIN `jos_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`275μs3.91KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT DISTINCT a.id, a.title, a.name, a.checked_out, a.checked_out_time, a.note, a.state, a.access, a.created_time, a.created_user_id, a.ordering, a.language, a.fieldparams, a.params, a.type, a.default_value, a.context, a.group_id, a.label, a.description, a.required, a.only_use_in_subform,l.title AS language_title, l.image AS language_image,uc.name AS editor,ag.title AS access_level,ua.name AS author_name,g.title AS group_title, g.access as group_access, g.state AS group_state, g.note as group_note FROM jos_fields AS a LEFT JOIN `jos_languages` AS l ON l.lang_code = a.language LEFT JOIN jos_users AS uc ON uc.id=a.checked_out LEFT JOIN jos_viewlevels AS ag ON ag.id = a.access LEFT JOIN jos_users AS ua ON ua.id = a.created_user_id LEFT JOIN jos_fields_groups AS g ON g.id = a.group_id LEFT JOIN `jos_fields_categories` AS fc ON fc.field_id = a.id WHERE ( (`a`.`context` = :context AND (`fc`.`category_id` IS NULL OR `fc`.`category_id` IN (:preparedArray1,:preparedArray2)) AND `a`.`access` IN (:preparedArray3,:preparedArray4)) AND (`a`.`group_id` = 0 OR `g`.`access` IN (:preparedArray5,:preparedArray6)) AND `a`.`state` = :state) AND (`a`.`group_id` = 0 OR `g`.`state` = :gstate) AND `a`.`only_use_in_subform` = :only_use_in_subform ORDER BY a.ordering ASC308μs4.75KBParams/libraries/src/MVC/Model/BaseDatabaseModel.php:166Copy
  • SELECT `a`.`id`,`a`.`title`,`a`.`catid`,`a`.`language`, CASE WHEN CHAR_LENGTH(`a`.`alias`) != 0 THEN CONCAT_WS(':', `a`.`id`, `a`.`alias`) ELSE a.id END AS `slug`, CASE WHEN CHAR_LENGTH(`cc`.`alias`) != 0 THEN CONCAT_WS(':', `cc`.`id`, `cc`.`alias`) ELSE cc.id END AS `catslug` FROM `jos_content` AS `a` LEFT JOIN `jos_categories` AS `cc` ON `cc`.`id` = `a`.`catid` WHERE `a`.`catid` = :catid AND `a`.`state` = :state AND `a`.`access` IN (:preparedArray1,:preparedArray2) AND (`publish_up` IS NULL OR `publish_up` <= :nowDate1) AND (`publish_down` IS NULL OR `publish_down` >= :nowDate2) ORDER BY CASE WHEN `a`.`publish_up` IS NULL THEN `a`.`created` ELSE `a`.`publish_up` END DESC1.11ms2.97KBParams/plugins/content/pagenavigation/src/Extension/PageNavigation.php:188Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `jos_categories` AS `s` INNER JOIN `jos_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`396μs3.91KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `params` FROM `jos_tagz` WHERE `component_id` = 131 AND `component_type` = "menu"438μs520B/plugins/system/tagz/tagz.php:650Copy
  • SELECT `params` FROM `jos_tagz` WHERE `component_id` = 794 AND `component_type` = "content"129μs520B/plugins/system/tagz/tagz.php:650Copy
  • SELECT `name`,`element` FROM `jos_extensions` WHERE `type` = 'plugin' AND `folder` = 'finder' AND `enabled` = 1312μs592B/administrator/components/com_finder/src/Helper/LanguageHelper.php:135Copy
  • SELECT `title` FROM `jos_finder_taxonomy` WHERE `parent_id` = 1 AND `state` = 1 AND `access` IN (1,5)243μs584B/administrator/components/com_finder/src/Indexer/Taxonomy.php:314Copy
  • SELECT custom_data FROM jos_extensions WHERE element = 'yootheme' AND folder = 'system' LIMIT 1708μs688.52KB/templates/yootheme/packages/platform-joomla/src/Storage.php:30Copy
  • SELECT DISTINCT a.id, a.title, a.name, a.checked_out, a.checked_out_time, a.note, a.state, a.access, a.created_time, a.created_user_id, a.ordering, a.language, a.fieldparams, a.params, a.type, a.default_value, a.context, a.group_id, a.label, a.description, a.required, a.only_use_in_subform,l.title AS language_title, l.image AS language_image,uc.name AS editor,ag.title AS access_level,ua.name AS author_name,g.title AS group_title, g.access as group_access, g.state AS group_state, g.note as group_note FROM jos_fields AS a LEFT JOIN `jos_languages` AS l ON l.lang_code = a.language LEFT JOIN jos_users AS uc ON uc.id=a.checked_out LEFT JOIN jos_viewlevels AS ag ON ag.id = a.access LEFT JOIN jos_users AS ua ON ua.id = a.created_user_id LEFT JOIN jos_fields_groups AS g ON g.id = a.group_id WHERE ( (`a`.`context` = :context AND `a`.`access` IN (:preparedArray1,:preparedArray2)) AND (`a`.`group_id` = 0 OR `g`.`access` IN (:preparedArray3,:preparedArray4)) AND `a`.`state` = :state) AND (`a`.`group_id` = 0 OR `g`.`state` = :gstate) AND `a`.`only_use_in_subform` = :only_use_in_subform ORDER BY a.ordering ASC330μs4.06KBParams/libraries/src/MVC/Model/BaseDatabaseModel.php:166Copy
  • SELECT `title` FROM `jos_finder_taxonomy` WHERE `parent_id` = 1 AND `state` = 1 AND `access` IN (1,5)161μs584B/administrator/components/com_finder/src/Indexer/Taxonomy.php:314Copy
  • SELECT SUM(CASE WHEN `a`.`next_execution` <= :now THEN 1 ELSE 0 END) AS due_count,SUM(CASE WHEN `a`.`locked` IS NULL THEN 0 ELSE 1 END) AS locked_count FROM `jos_scheduler_tasks` AS `a` WHERE `a`.`state` = 1144μs1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:517Copy
  • SELECT `session_id` FROM `jos_session` WHERE `session_id` = ?99μs1KBParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:291Copy
  • UPDATE `jos_session` SET `data` = ? , `time` = ? WHERE `session_id` = ?431μs592BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:318Copy