Skip to main content

Meet Matt Witten

 A WRITER WHO DOES IT ALL!

{From the 2024 Spring magazine}

Written By WENDY HOBDAY HAUGH   |  Photos PROVIDED

If you love cozy mysteries, gripping thrillers, or absorbing TV dramas like Law & Order, CSI: Miami, House, and Medium, you’re going to love Matt Witten. 

The author of four Saratoga-based whodunits and two thrillers as well as countless plays, TV episodes, and movie scripts, Witten combines analytical thinking, sensitivity, keen wit, and tight writing skills to create relevant plots that engage readers and viewers alike. 

Witten lives in Los Angeles now, but his Saratoga/Lake Luzerne roots go deep. He and his educator wife, Nancy—Witten’s toughest editor and biggest fan—lived in Saratoga from 1990 until the late ‘90s when a call came through tapping him to write for Law & Order in LA. Nancy had just been appointed Head of the Adirondack Community College English Department, but she supported her husband’s big break. Together, they packed up their two young sons and headed west, where new opportunities arose for both of them. For decades, Witten wrote steadily for television while Nancy taught sixth grade in a prestigious private school for actors’ children. But every summer, they’d return to Lake Luzerne to visit family and enjoy the peaceful splendor of the Adirondacks.

This past summer, for the first time in 25 years, Witten’s upstate NY stay was extended into October due to the Writers Guild of America strike which mired 11,500 screenwriters in a months-long labor dispute with the Alliance of Motion Picture and Television Producers. All communication between writers, agents, and movie personnel was suspended during the strike, so it was an unsettling time for writers. But the resulting professional vacuum actually freed Witten to pursue a personal passion: novel-writing! He began his third thriller when the May 2nd strike began, and by mid-October, two weeks after the strike ended, he’d submitted the finished product to his agent.

Witten enjoys the diversity and unique challenges of writing for theater, television, and movies. “Writing for TV helps my dialogue because every single sentence needs to be good,” he muses. “I think my latest novels have fewer parts that people ‘word-skim’ because I’m so aware of the need to make every line count. But when I’m writing for TV, I’m writing someone else’s vision rather than my own, and what I enjoy the most is just sitting in a coffee shop writing novels. I like the pure simplicity of it. It’s something I really care about, and it comes from my heart.” 

The clichéd image of a writer slaving away in solitude in a drafty garret doesn’t mesh with Matt Witten. Far from needing literary seclusion, he can become “cranky and lonely” when writing at home and works best in low-key social settings. In the ‘90s, Witten regularly worked on his locally-based amateur sleuth series while holed up in Madeline’s Espresso Bar in Saratoga (he even titled his first book Breakfast at Madeline’s). The habit stuck when he moved to California, where his LA workday mornings generally begin with a 45-minute bike ride to his favorite coffee shop for tea, hummus toast, and hours of productive wordsmithing. 

Being part of a writing community is vitally important to Witten. “In TV, when you’re on a writing staff, you automatically have that sense of community. But as a novelist, you have to kind of work at it.” Witten belongs to multiple writers’ groups in LA. But one of his fondest memories involves Creative Bloc, a consortium of Saratoga-based creatives that met regularly in the 1990s in a rented space at the corner of Broadway and Caroline Street.

“Writing is a very lonely business,” Witten says, “and I’d felt a bit disconnected from life in Saratoga for the first six or seven years I lived here because there weren’t many playwrights in the area, and I was a shy person—less shy now,” he adds. “Then I joined a weekly chess club, which helped a lot, and then I met cartoonist John McPherson and author Nancy Butcher. John had this idea that we should all have an apartment or suite that we would share, and we could hang out and create and be surrounded by one another, so we wouldn’t feel as lonely. 

“After Creative Bloc was formed, instead of being home alone all day, we had a place to go—nine writers and six desks, and we had a blast! After seven years, I finally felt like I was part of the community. And then, just six months later, I got the Law & Order call. Since then, I’ve tried to find that sense of community wherever I am.” 

A thoughtful and studied writer, Matt Witten cares deeply about social issues and seeks to understand the varied viewpoints that motivate people to act as they do. By delving into the psychology of each of his characters, Witten brings them to life on the page. His natural instinct for humor may ease the sharpness of certain societal truths but the grit remains as he draws us in, challenging us to unravel his intricate plots. 

“I love the act of writing, and I’m learning things about human nature that I didn’t know before, so I feel like I’m writing the best now that I’ve ever written. To be a writer you have to enjoy the writing itself. You have to look forward to sitting down in the morning at a desk or a coffee shop. It has to be fun! And right now, I’m honestly having the time of my life.” 

If you’re a fan of cozy whodunits with a Saratoga setting, check out Witten’s first four Jacob Burns novels. If psychological thrillers are more your thing, pick up The Necklace, set in Lake Luzerne, or Killer Story—and hold on tight! When it comes to writing, Matt Witten does it all and does it well. Better still, this widely acclaimed wordsmith with local roots is super-approachable and a really nice guy. 

To learn more, visit Matt at www.mattwittenwriter.com 

7.927MBMemory Usage155msRequest Duration
Joomla! Version4.4.13
PHP Version8.3.21
Identityguest
Response200
Templateyootheme
Database
Server
mysql
Version
8.0.42
Collation
utf8mb3_unicode_ci
Conn Collation
utf8mb4_0900_ai_ci
$_GET
array:3 [ "catid" => "11" "id" => "677" "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" => 1748468426 "last" => 1748468426...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:18 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (444.65KB) (4.06ms)
  • afterInitialise (1.96MB) (40.89ms)
  • afterRoute (376.18KB) (8.62ms)
  • beforeRenderComponent com_content (50.52KB) (1.35ms)
  • Before Access::preloadComponents (all components) (47.72KB) (2.68ms)
  • After Access::preloadComponents (all components) (119.9KB) (2.29ms)
  • Before Access::preloadPermissions (com_content) (1.63KB) (24μs)
  • After Access::preloadPermissions (com_content) (514.59KB) (1.85ms)
  • Before Access::getAssetRules (id:848 name:com_content.article.677) (18.65KB) (35μs)
  • After Access::getAssetRules (id:848 name:com_content.article.677) (7.38KB) (192μs)
  • afterRenderComponent com_content (1.57MB) (51.36ms)
  • afterDispatch (29.42KB) (1.2ms)
  • beforeRenderRawModule mod_finder () (389.3KB) (14.41ms)
  • afterRenderRawModule mod_finder () (1.95MB) (8.81ms)
  • beforeRenderModule mod_finder () (704B) (8μs)
  • afterRenderModule mod_finder () (1.44KB) (265μs)
  • beforeRenderRawModule mod_menu () (1.66KB) (319μs)
  • afterRenderRawModule mod_menu () (56.55KB) (3.4ms)
  • beforeRenderModule mod_menu () (696B) (7μs)
  • afterRenderModule mod_menu () (3.69KB) (197μs)
  • beforeRenderRawModule mod_custom () (920B) (121μs)
  • afterRenderRawModule mod_custom () (318.65KB) (2.13ms)
  • beforeRenderModule mod_custom () (704B) (5μs)
  • afterRenderModule mod_custom () (3.15KB) (105μs)
  • beforeRenderRawModule mod_menu () (24B) (111μs)
  • afterRenderRawModule mod_menu () (552B) (517μs)
  • beforeRenderModule mod_menu () (696B) (4μs)
  • afterRenderModule mod_menu () (2.76KB) (74μs)
  • beforeRenderRawModule mod_custom () (920B) (72μs)
  • afterRenderRawModule mod_custom () (1.03KB) (238μs)
  • beforeRenderModule mod_custom () (704B) (4μs)
  • afterRenderModule mod_custom () (1.23KB) (72μs)
  • beforeRenderRawModule mod_menu () (1.8KB) (99μs)
  • afterRenderRawModule mod_menu () (4.45KB) (498μs)
  • beforeRenderModule mod_menu () (696B) (3μs)
  • afterRenderModule mod_menu () (1.34KB) (78μs)
  • beforeRenderRawModule mod_finder () (96B) (9μs)
  • afterRenderRawModule mod_finder () (6.88KB) (832μs)
  • beforeRenderModule mod_finder () (704B) (3μs)
  • afterRenderModule mod_finder () (1.34KB) (84μs)
  • beforeRenderRawModule mod_custom () (288B) (9μs)
  • afterRenderRawModule mod_custom () (912B) (190μs)
  • beforeRenderModule mod_custom () (704B) (3μs)
  • afterRenderModule mod_custom () (1.23KB) (60μs)
  • beforeRenderRawModule mod_custom () (6.27KB) (183μs)
  • afterRenderRawModule mod_custom () (1008B) (151μs)
  • beforeRenderModule mod_custom () (704B) (3μs)
  • afterRenderModule mod_custom () (2.77KB) (49μs)
  • beforeRenderRawModule mod_custom () (472B) (60μs)
  • afterRenderRawModule mod_custom () (1008B) (119μs)
  • beforeRenderModule mod_custom () (704B) (3μs)
  • afterRenderModule mod_custom () (2.43KB) (58μs)
  • afterRender (291.17KB) (5.52ms)
  • 1 x afterRenderComponent com_content (1.57MB) (33.13%)
    51.36ms
    1 x afterInitialise (1.96MB) (26.38%)
    40.89ms
    1 x beforeRenderRawModule mod_finder () (389.3KB) (9.3%)
    14.41ms
    1 x afterRenderRawModule mod_finder () (1.95MB) (5.68%)
    8.81ms
    1 x afterRoute (376.18KB) (5.56%)
    8.62ms
    1 x afterRender (291.17KB) (3.56%)
    5.52ms
    1 x afterLoad (444.65KB) (2.62%)
    4.06ms
    1 x afterRenderRawModule mod_menu () (56.55KB) (2.19%)
    3.40ms
    1 x Before Access::preloadComponents (all components) (47.72KB) (1.73%)
    2.68ms
    1 x After Access::preloadComponents (all components) (119.9KB) (1.48%)
    2.29ms
    1 x afterRenderRawModule mod_custom () (318.65KB) (1.37%)
    2.13ms
    1 x After Access::preloadPermissions (com_content) (514.59KB) (1.19%)
    1.85ms
    1 x beforeRenderComponent com_content (50.52KB) (0.87%)
    1.35ms
    1 x afterDispatch (29.42KB) (0.77%)
    1.20ms
    1 x afterRenderRawModule mod_finder () (6.88KB) (0.54%)
    832μs
    1 x afterRenderRawModule mod_menu () (552B) (0.33%)
    517μs
    1 x afterRenderRawModule mod_menu () (4.45KB) (0.32%)
    498μs
    1 x beforeRenderRawModule mod_menu () (1.66KB) (0.21%)
    319μs
    2 x afterRenderRawModule mod_custom () (1008B) (0.17%)
    270μs
    1 x afterRenderModule mod_finder () (1.44KB) (0.17%)
    265μs
    1 x afterRenderRawModule mod_custom () (1.03KB) (0.15%)
    238μs
    1 x afterRenderModule mod_menu () (3.69KB) (0.13%)
    197μs
    2 x beforeRenderRawModule mod_custom () (920B) (0.12%)
    193μs
    1 x After Access::getAssetRules (id:848 name:com_content.article.677) (7.38KB) (0.12%)
    192μs
    1 x afterRenderRawModule mod_custom () (912B) (0.12%)
    190μs
    1 x beforeRenderRawModule mod_custom () (6.27KB) (0.12%)
    183μs
    2 x afterRenderModule mod_custom () (1.23KB) (0.09%)
    132μs
    1 x beforeRenderRawModule mod_menu () (24B) (0.07%)
    111μs
    1 x afterRenderModule mod_custom () (3.15KB) (0.07%)
    105μs
    1 x beforeRenderRawModule mod_menu () (1.8KB) (0.06%)
    99μs
    1 x afterRenderModule mod_finder () (1.34KB) (0.05%)
    84μs
    1 x afterRenderModule mod_menu () (1.34KB) (0.05%)
    78μs
    1 x afterRenderModule mod_menu () (2.76KB) (0.05%)
    74μs
    1 x beforeRenderRawModule mod_custom () (472B) (0.04%)
    60μs
    1 x afterRenderModule mod_custom () (2.43KB) (0.04%)
    58μs
    1 x afterRenderModule mod_custom () (2.77KB) (0.03%)
    49μs
    1 x Before Access::getAssetRules (id:848 name:com_content.article.677) (18.65KB) (0.02%)
    35μs
    1 x Before Access::preloadPermissions (com_content) (1.63KB) (0.02%)
    24μs
    5 x beforeRenderModule mod_custom () (704B) (0.01%)
    18μs
    3 x beforeRenderModule mod_menu () (696B) (0.01%)
    14μs
    2 x beforeRenderModule mod_finder () (704B) (0.01%)
    11μs
    1 x beforeRenderRawModule mod_finder () (96B) (0.01%)
    9μs
    1 x beforeRenderRawModule mod_custom () (288B) (0.01%)
    9μs
54 statements were executed, 5 of which were duplicates, 49 unique18.43ms909.33KB
  • SELECT @@SESSION.sql_mode;133μs968B/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:334Copy
  • SELECT `data` FROM `jos_session` WHERE `session_id` = ?255μs1008BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:261Copy
  • SELECT `session_id` FROM `jos_session` WHERE `session_id` = :session_id LIMIT 189μ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)349μs944BParams/libraries/src/Session/MetadataManager.php:260Copy
  • SELECT `id`,`rules` FROM `jos_viewlevels`124μ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` = :guest235μ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"233μ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"110μ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"86μ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"59μ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"64μ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"83μ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"134μ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"68μ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"69μ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"93μ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"86μ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"57μ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"62μ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"74μ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"54μ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"74μ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"65μ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"61μ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"55μ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"53μ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"53μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SHOW FULL COLUMNS FROM `jos_tagz_config`975μs1.3KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:625Copy
  • SELECT * FROM `jos_tagz_config` WHERE `name` = 'config'134μs592B/libraries/src/Table/Table.php:755Copy
  • SELECT id,template FROM jos_template_styles WHERE client_id=0 AND home=1317μs592B/administrator/components/com_widgetkit/widgetkit.php:28Copy
  • SELECT custom_data FROM jos_extensions WHERE element = 'yooessentials' AND folder = 'system'243μs536B/plugins/system/yooessentials/helper.php:153Copy
  • SELECT custom_data FROM jos_extensions WHERE element = 'yooessentials' AND folder = 'system' LIMIT 1317μ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)694μ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` = 0668μs49.48KBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `jos_content`1.59ms1.77KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:625Copy
  • UPDATE `jos_content` SET `hits` = (`hits` + 1) WHERE `id` = '677'443μ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)626μs46.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`464μ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)346μ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`344μ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 ASC475μ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 DESC3.09ms41.72KBParams/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`455μs3.91KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `m`.`id`,`m`.`title`,`m`.`module`,`m`.`position`,`m`.`content`,`m`.`showtitle`,`m`.`params`,`mm`.`menuid` FROM `jos_modules` AS `m` LEFT JOIN `jos_modules_menu` AS `mm` ON `mm`.`moduleid` = `m`.`id` LEFT JOIN `jos_extensions` AS `e` ON `e`.`element` = `m`.`module` AND `e`.`client_id` = `m`.`client_id` WHERE ( ( (`m`.`published` = 1 AND `e`.`enabled` = 1 AND `m`.`client_id` = :clientId AND `m`.`access` IN (:preparedArray1,:preparedArray2)) AND (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= :publishUp)) AND (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= :publishDown)) AND (`mm`.`menuid` = :itemId OR `mm`.`menuid` <= 0) ORDER BY `m`.`position`,`m`.`ordering`1.22ms19.06KBParams/libraries/src/Cache/Controller/CallbackController.php:120Copy
  • SELECT `params` FROM `jos_tagz` WHERE `component_id` = 123 AND `component_type` = "menu"419μs520B/plugins/system/tagz/tagz.php:650Copy
  • SELECT `params` FROM `jos_tagz` WHERE `component_id` = 677 AND `component_type` = "content"139μs520B/plugins/system/tagz/tagz.php:650Copy
  • SELECT `name`,`element` FROM `jos_extensions` WHERE `type` = 'plugin' AND `folder` = 'finder' AND `enabled` = 1270μ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)344μs584B/administrator/components/com_finder/src/Indexer/Taxonomy.php:314Copy
  • SELECT custom_data FROM jos_extensions WHERE element = 'yootheme' AND folder = 'system' LIMIT 1628μ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 ASC511μ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)206μ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` = 1204μs1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:517Copy
  • SELECT `session_id` FROM `jos_session` WHERE `session_id` = ?132μs1KBParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:291Copy
  • UPDATE `jos_session` SET `data` = ? , `time` = ? WHERE `session_id` = ?310μs592BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:318Copy