Tainacan Security & Risk Analysis

wordpress.org/plugins/tainacan

A powerful and flexible open-source repository platform that brings digital collection management to WordPress.

1K active installs v1.0.3 PHP 7.0+ WP 6.0+ Updated Jan 26, 2026
archivescollectionsglammuseumsrepository
89
A · Safe
CVEs total14
Unpatched0
Last CVEDec 20, 2025
Safety Verdict

Is Tainacan Safe to Use in 2026?

Generally Safe

Score 89/100

Tainacan has a strong security track record. Known vulnerabilities have been patched promptly.

14 known CVEsLast CVE: Dec 20, 2025Updated 2mo ago
Risk Assessment

The Tainacan plugin v1.0.3 exhibits a mixed security posture. On the positive side, the static analysis shows excellent practices in crucial areas: a very low percentage of SQL queries not using prepared statements, a high percentage of properly escaped output, and a significant number of capability checks, indicating good authorization practices for most entry points. The absence of unprotected AJAX handlers and REST API routes is also a strong positive. However, the presence of 9 dangerous functions, specifically 'unserialize', warrants significant caution as it can be a vector for remote code execution if not handled with extreme care and proper validation. The taint analysis, while not flagging critical or high severity flows, did identify 4 flows with unsanitized paths, which is a concern and could lead to unexpected behavior or vulnerabilities if user input is not strictly validated before being used in file operations or path manipulations. The plugin's vulnerability history is a major red flag. With 14 known CVEs, including 2 high and 12 medium severity vulnerabilities, it suggests a recurring pattern of security weaknesses. The types of past vulnerabilities, such as Missing Authorization, XSS, Path Traversal, SQL Injection, and Information Exposure, indicate that the plugin has historically struggled with fundamental security controls. While there are currently no unpatched CVEs, this extensive history suggests a continued need for rigorous security auditing and a proactive approach to patching any newly discovered issues. The last vulnerability being recorded as 2025-12-20 is highly unusual and may indicate a data anomaly or a future-dated entry, which should be investigated.

Key Concerns

  • Presence of 'unserialize' function calls
  • Flows with unsanitized paths detected
  • High number of past CVEs (14)
  • Past high severity vulnerabilities (2)
  • Past medium severity vulnerabilities (12)
Vulnerabilities
14

Tainacan Security Vulnerabilities

CVEs by Year

1 CVE in 2022
2022
1 CVE in 2023
2023
7 CVEs in 2024
2024
5 CVEs in 2025
2025
Patched Has unpatched

Severity Breakdown

High
2
Medium
12

14 total CVEs

CVE-2025-14043medium · 5.3Missing Authorization

Tainacan <= 1.0.1 - Missing Authorization to Unauthenticated Arbitrary Metadata Section Creation

Dec 20, 2025 Patched in 1.0.2 (1d)
CVE-2025-12746medium · 6.1Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Tainacan <= 1.0.0 - Reflected Cross-Site Scripting

Nov 20, 2025 Patched in 1.0.1 (1d)
CVE-2025-12747medium · 5.3Files or Directories Accessible to External Parties

Tainacan <= 1.0.0 - Unauthenticated Information Exposure

Nov 20, 2025 Patched in 1.0.1 (2d)
CVE-2025-47512medium · 5.3Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

Tainacan <= 0.21.14 - Unauthenticated Arbitrary File Deletion

May 16, 2025 Patched in 0.21.15 (5d)
CVE-2024-13236medium · 6.5Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')

Tainacan <= 0.21.12 - Authenticated (Subscriber+) SQL Injection

Jan 22, 2025 Patched in 0.21.13 (1d)
CVE-2024-9221medium · 6.1Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Tainacan <= 0.21.10 - Reflected Cross-Site Scripting

Oct 10, 2024 Patched in 0.21.11 (1d)
CVE-2024-48040medium · 6.5Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')

Tainacan <= 0.21.8 - Authenticated (Subscriber+) SQL Injection

Oct 9, 2024 Patched in 0.21.9 (8d)
CVE-2024-7135medium · 6.5Missing Authorization

Tainacan <= 0.21.7 - Missing Authorization to Authenticated (Subscriber+) Arbitrary File Read

Jul 30, 2024 Patched in 0.21.8 (1d)
CVE-2024-34794high · 7.2Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Tainacan <= 0.21.3 - Unauthenticated Stored Cross-Site Scripting

May 20, 2024 Patched in 0.21.4 (10d)
CVE-2024-34795medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Tainacan <= 0.21.3 - Authenticated (Contributor+) Stored Cross-Site Scripting

May 20, 2024 Patched in 0.21.4 (10d)
CVE-2024-30529medium · 5.3Missing Authorization

Tainacan <= 0.20.7 - Missing Authorization

Mar 29, 2024 Patched in 0.20.8 (6d)
CVE-2024-1435medium · 5.3Exposure of Sensitive Information to an Unauthorized Actor

Tainacan <= 0.20.6 - Unauthenticated Sensitive Information Exposure

Feb 26, 2024 Patched in 0.20.7 (26d)
CVE-2023-47848medium · 6.1Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Tainacan <= 0.20.4 - Reflected Cross-Site Scripting

Nov 20, 2023 Patched in 0.20.5 (64d)
WF-2131e418-bd95-4bd1-868f-0bd3b4abdf78-tainacanhigh · 7.2Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Tainacan <= 0.18.9 - Cross-Site Scripting

May 24, 2022 Patched in 0.18.10 (609d)
Code Analysis
Analyzed Mar 16, 2026

Tainacan Code Analysis

Dangerous Functions
9
Raw SQL Queries
33
185 prepared
Unescaped Output
25
699 escaped
Nonce Checks
3
Capability Checks
74
File Operations
40
External Requests
18
Bundled Libraries
0

Dangerous Functions Found

unserialize$order = ( is_array( $order ) ) ? $order : unserialize( $order );classes\api\endpoints\class-tainacan-rest-items-controller.php:472
unserialize$order = ( is_array( $order ) ) ? $order : unserialize( $order );classes\repositories\class-tainacan-filters.php:574
unserialize$order = ( is_array( $order ) ) ? $order : unserialize( $order );classes\repositories\class-tainacan-metadata-sections.php:427
unserialize$order = ( is_array( $order ) ) ? $order : unserialize( $order );classes\repositories\class-tainacan-metadata.php:677
unserialize$order = ( is_array( $order ) ) ? $order : unserialize( $order );classes\repositories\class-tainacan-metadata.php:1832
unserialize$this->options = ( is_array( $options ) ) ? $options : (!is_array(unserialize( $options )) ? [] : unviews\admin\components\filter-types\filter-type\class-tainacan-filter-type.php:157
unserialize$this->options = ( is_array( $options ) ) ? $options : (!is_array(unserialize( $options )) ? [] : unviews\admin\components\filter-types\filter-type\class-tainacan-filter-type.php:157
unserialize$this->options = ( is_array( $options ) ) ? $options : (!is_array(unserialize( $options )) ? [] : unviews\admin\components\metadata-types\metadata-type\class-tainacan-metadata-type.php:179
unserialize$this->options = ( is_array( $options ) ) ? $options : (!is_array(unserialize( $options )) ? [] : unviews\admin\components\metadata-types\metadata-type\class-tainacan-metadata-type.php:179

SQL Query Safety

85% prepared218 total queries

Output Escaping

97% escaped724 total outputs
Data Flows
4 unsanitized

Data Flow Analysis

7 flows4 with unsanitized paths
submission_item_check_recaptcha (classes\api\endpoints\class-tainacan-rest-items-controller.php:1483)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

Tainacan Attack Surface

Entry Points10
Unprotected0

AJAX Handlers 2

authwp_ajax_tainacan-sample-permalinkviews\admin\class-tainacan-admin.php:18
authwp_ajax_tainacan_fetch_dashboard_newsviews\dashboard\class-tainacan-dashboard.php:26

Shortcodes 8

[tainacan-search] classes\theme-helper\class-tainacan-theme-helper.php:94
[tainacan-item-submission] classes\theme-helper\class-tainacan-theme-helper.php:95
[tainacan-items-carousel] classes\theme-helper\class-tainacan-theme-helper.php:96
[tainacan-items-gallery] classes\theme-helper\class-tainacan-theme-helper.php:97
[tainacan-terms-carousel] classes\theme-helper\class-tainacan-theme-helper.php:98
[tainacan-dynamic-items-list] classes\theme-helper\class-tainacan-theme-helper.php:99
[tainacan-related-items-carousel] classes\theme-helper\class-tainacan-theme-helper.php:100
[tainacan-related-items-list] classes\theme-helper\class-tainacan-theme-helper.php:101
WordPress Hooks 190
actionrest_api_initclasses\api\class-tainacan-rest-controller.php:26
filtertainacan-api-prepare-items-argsclasses\api\class-tainacan-rest-controller.php:27
actioninitclasses\api\endpoints\class-tainacan-rest-bulkedit-controller.php:28
actioninitclasses\api\endpoints\class-tainacan-rest-collections-controller.php:32
actioninitclasses\api\endpoints\class-tainacan-rest-exporters-controller.php:30
actioninitclasses\api\endpoints\class-tainacan-rest-exposers-controller.php:35
actioninitclasses\api\endpoints\class-tainacan-rest-facets-controller.php:30
filtertainacan-item-to-arrayclasses\api\endpoints\class-tainacan-rest-facets-controller.php:187
actioninitclasses\api\endpoints\class-tainacan-rest-filters-controller.php:33
actioninitclasses\api\endpoints\class-tainacan-rest-item-metadata-controller.php:30
actioninitclasses\api\endpoints\class-tainacan-rest-items-controller.php:36
filtertainacan_add_related_itemclasses\api\endpoints\class-tainacan-rest-items-controller.php:323
actioninitclasses\api\endpoints\class-tainacan-rest-metadata-controller.php:26
actioninitclasses\api\endpoints\class-tainacan-rest-metadata-sections-controller.php:28
actioninitclasses\api\endpoints\class-tainacan-rest-oaipmh-expose-controller.php:26
actioninitclasses\api\endpoints\class-tainacan-rest-reports-controller.php:28
actioninitclasses\api\endpoints\class-tainacan-rest-sequence-edit-controller.php:27
actioninitclasses\api\endpoints\class-tainacan-rest-taxonomies-controller.php:29
actioninitclasses\api\endpoints\class-tainacan-rest-terms-controller.php:31
filtercron_schedulesclasses\background-process\class-tainacan-background-process-base.php:98
filterheartbeat_sendclasses\background-process\class-tainacan-background-process-heartbeat.php:11
actioninitclasses\background-process\class-tainacan-background-process.php:69
actioninitclasses\background-process\exporter\class-tainacan-bg-exporter.php:22
filtertainacan-item-metadata-get-multivalue-separatorclasses\background-process\exporter\class-tainacan-csv.php:49
filtertainacan-terms-hierarchy-html-separatorclasses\background-process\exporter\class-tainacan-csv.php:50
actioninitclasses\background-process\exporter\class-tainacan-exporter-handler.php:22
actiontainacan-enqueue-admin-scriptsclasses\background-process\exporter\class-tainacan-exporter-handler.php:54
filtertainacan-item-metadata-get-multivalue-separatorclasses\background-process\exporter\class-tainacan-xlsx-exporter.php:210
filtertainacan-terms-hierarchy-html-separatorclasses\background-process\exporter\class-tainacan-xlsx-exporter.php:211
actioninitclasses\background-process\generic-process\class-tainacan-bg-generic.php:21
actioninitclasses\background-process\generic-process\class-tainacan-generic-handler.php:22
actioninitclasses\background-process\importer\class-tainacan-bg-importer.php:27
actioninitclasses\background-process\importer\class-tainacan-importer-handler.php:24
filterposts_pre_queryclasses\class-tainacan-bulk-edit.php:88
filterposts_fields_requestclasses\class-tainacan-bulk-edit.php:91
actioninitclasses\class-tainacan-elastic-press-lte-4.7.2.php:34
filterep_sync_terms_allow_hierarchyclasses\class-tainacan-elastic-press-lte-4.7.2.php:52
filtertainacan-fetch-argsclasses\class-tainacan-elastic-press-lte-4.7.2.php:54
filtertainacan-api-items-filters-responseclasses\class-tainacan-elastic-press-lte-4.7.2.php:55
filtertainacan-fetch-all-metadatum-valuesclasses\class-tainacan-elastic-press-lte-4.7.2.php:57
filterep_config_mappingclasses\class-tainacan-elastic-press-lte-4.7.2.php:59
filterep_post_sync_argsclasses\class-tainacan-elastic-press-lte-4.7.2.php:60
filterep_formatted_argsclasses\class-tainacan-elastic-press-lte-4.7.2.php:62
actionep_valid_responseclasses\class-tainacan-elastic-press-lte-4.7.2.php:182
filterep_formatted_argsclasses\class-tainacan-elastic-press-lte-4.7.2.php:327
actioninitclasses\class-tainacan-elastic-press.php:72
filterep_sync_terms_allow_hierarchyclasses\class-tainacan-elastic-press.php:100
filterep_prepare_meta_allowed_keysclasses\class-tainacan-elastic-press.php:103
filtertainacan-fetch-argsclasses\class-tainacan-elastic-press.php:106
filtertainacan-api-items-filters-responseclasses\class-tainacan-elastic-press.php:107
filtertainacan-fetch-all-metadatum-valuesclasses\class-tainacan-elastic-press.php:111
filterep_config_mappingclasses\class-tainacan-elastic-press.php:114
filterep_post_sync_argsclasses\class-tainacan-elastic-press.php:115
filterep_formatted_argsclasses\class-tainacan-elastic-press.php:118
actionep_valid_responseclasses\class-tainacan-elastic-press.php:378
filterep_formatted_argsclasses\class-tainacan-elastic-press.php:567
filterwp_embed_handler_videoclasses\class-tainacan-embed.php:53
filterwp_embed_handler_audioclasses\class-tainacan-embed.php:54
actionadmin_enqueue_scriptsclasses\class-tainacan-embed.php:59
actionwp_enqueue_scriptsclasses\class-tainacan-embed.php:60
filteroembed_dataparseclasses\class-tainacan-embed.php:159
actioninitclasses\class-tainacan-media.php:64
filterquery_varsclasses\class-tainacan-media.php:66
actiontemplate_redirectclasses\class-tainacan-media.php:67
actionafter_setup_themeclasses\class-tainacan-media.php:69
filterimage_size_names_chooseclasses\class-tainacan-media.php:70
filterwp_handle_upload_prefilterclasses\class-tainacan-private-files.php:42
filterwp_handle_sideload_prefilterclasses\class-tainacan-private-files.php:43
filterwp_handle_uploadclasses\class-tainacan-private-files.php:44
actiontainacan-pre-insert-attachmentclasses\class-tainacan-private-files.php:46
actiontainacan-post-insert-attachmentclasses\class-tainacan-private-files.php:47
actiontemplate_redirectclasses\class-tainacan-private-files.php:49
filterimage_get_intermediate_sizeclasses\class-tainacan-private-files.php:50
filterwp_get_attachment_urlclasses\class-tainacan-private-files.php:51
actiontainacan-insertclasses\class-tainacan-private-files.php:53
actiontainacan-bulk-edit-set-statusclasses\class-tainacan-private-files.php:55
filterupload_dirclasses\class-tainacan-private-files.php:74
filterupload_dirclasses\class-tainacan-private-files.php:97
actioninitclasses\class-tainacan-roles.php:73
filteruser_has_capclasses\class-tainacan-roles.php:75
filtermap_meta_capclasses\class-tainacan-roles.php:76
filtergettext_with_contextclasses\class-tainacan-roles.php:78
filterposts_joinclasses\class-tainacan-search-engine.php:124
filterposts_searchclasses\class-tainacan-search-engine.php:128
filterposts_requestclasses\class-tainacan-search-engine.php:129
actioninitclasses\exposers\class-tainacan-exposers-handler.php:31
filterrest_request_after_callbacksclasses\exposers\class-tainacan-exposers-handler.php:33
filtertainacan-api-get-items-alternateclasses\exposers\class-tainacan-exposers-handler.php:35
actioninitclasses\mappers\class-tainacan-mappers-handler.php:27
filtertainacan-admin-i18nclasses\mappers\class-tainacan-mappers-handler.php:30
filtertainacan-i18nclasses\mappers\class-tainacan-mappers-handler.php:32
actiontainacan-api-collection-createdclasses\mappers\class-tainacan-mappers-handler.php:34
filtertainacan-api-items-prepare-for-responseclasses\mappers\class-tainacan-mappers-handler.php:36
actiontainacan-deleted-tainacan-metadatumclasses\repositories\class-tainacan-filters.php:25
actiontainacan-insert-tainacan-metadatumclasses\repositories\class-tainacan-filters.php:26
filtercomments_openclasses\repositories\class-tainacan-items.php:28
actiontainacan-api-item-updatedclasses\repositories\class-tainacan-items.php:29
filtermap_meta_capclasses\repositories\class-tainacan-items.php:30
filterposts_whereclasses\repositories\class-tainacan-items.php:381
filterposts_whereclasses\repositories\class-tainacan-items.php:765
actiontainacan-pre-insertclasses\repositories\class-tainacan-logs.php:28
actiontainacan-insertclasses\repositories\class-tainacan-logs.php:30
actiontainacan-deletedclasses\repositories\class-tainacan-logs.php:31
actiontainacan-pre-deleteclasses\repositories\class-tainacan-logs.php:32
actionadd_attachmentclasses\repositories\class-tainacan-logs.php:34
actiondelete_attachmentclasses\repositories\class-tainacan-logs.php:35
actiondelete_postclasses\repositories\class-tainacan-logs.php:36
filtertainacan-log-set-titleclasses\repositories\class-tainacan-logs.php:38
filterpre_wp_unique_post_slugclasses\repositories\class-tainacan-logs.php:39
filtertainacan-item-metadata-get-multivalue-separatorclasses\repositories\class-tainacan-logs.php:464
filterpre_trash_postclasses\repositories\class-tainacan-metadata.php:33
filterpre_delete_postclasses\repositories\class-tainacan-metadata.php:34
actiontainacan-insert-tainacan-taxonomyclasses\repositories\class-tainacan-metadata.php:36
actiontainacan-insert-tainacan-taxonomyclasses\repositories\class-tainacan-metadata.php:37
actiontainacan-insert-tainacan-metadatumclasses\repositories\class-tainacan-metadata.php:38
filterposts_pre_queryclasses\repositories\class-tainacan-metadata.php:1256
actioninitclasses\repositories\class-tainacan-repository.php:98
actioninitclasses\repositories\class-tainacan-repository.php:99
actiontainacan-taxonomy-removed-from-collectionclasses\repositories\class-tainacan-taxonomies.php:25
actiontainacan-taxonomy-added-to-collectionclasses\repositories\class-tainacan-taxonomies.php:26
filterwp_kses_allowed_htmlclasses\tainacan-utils.php:209
filterwp_untrash_post_statusclasses\tainacan-utils.php:247
filterpost_type_linkclasses\theme-helper\class-tainacan-theme-helper.php:76
actionwpclasses\theme-helper\class-tainacan-theme-helper.php:80
actionpre_get_postsclasses\theme-helper\class-tainacan-theme-helper.php:83
actionarchive_template_hierarchyclasses\theme-helper\class-tainacan-theme-helper.php:85
actiontaxonomy_template_hierarchyclasses\theme-helper\class-tainacan-theme-helper.php:86
actionsingle_template_hierarchyclasses\theme-helper\class-tainacan-theme-helper.php:87
actionsingle_template_hierarchyclasses\theme-helper\class-tainacan-theme-helper.php:88
filtertheme_mod_header_imageclasses\theme-helper\class-tainacan-theme-helper.php:90
filterget_the_archive_titleclasses\theme-helper\class-tainacan-theme-helper.php:92
actiongenerate_rewrite_rulesclasses\theme-helper\class-tainacan-theme-helper.php:103
filterquery_varsclasses\theme-helper\class-tainacan-theme-helper.php:104
filtertemplate_includeclasses\theme-helper\class-tainacan-theme-helper.php:105
actionpre_get_postsclasses\theme-helper\class-tainacan-theme-helper.php:106
actionwp_headclasses\theme-helper\class-tainacan-theme-helper.php:110
actioninitclasses\theme-helper\class-tainacan-theme-helper.php:113
filterthe_contentclasses\theme-helper\class-tainacan-theme-helper.php:162
actionloop_startclasses\theme-helper\class-tainacan-theme-helper.php:227
actionloop_endclasses\theme-helper\class-tainacan-theme-helper.php:232
filterrender_blockclasses\theme-helper\class-tainacan-theme-helper.php:249
actionloop_startclasses\theme-helper\class-tainacan-theme-helper.php:312
actionloop_endclasses\theme-helper\class-tainacan-theme-helper.php:334
filterrender_blockclasses\theme-helper\class-tainacan-theme-helper.php:367
actionloop_startclasses\theme-helper\class-tainacan-theme-helper.php:409
actionloop_endclasses\theme-helper\class-tainacan-theme-helper.php:419
filterrender_blockclasses\theme-helper\class-tainacan-theme-helper.php:440
filterthe_contentclasses\theme-helper\class-tainacan-theme-helper.php:462
filtersafe_style_cssclasses\theme-helper\class-tainacan-theme-helper.php:2274
filtersafe_style_cssclasses\theme-helper\class-tainacan-theme-helper.php:2601
filtersafe_style_cssclasses\theme-helper\template-tags.php:492
actioninittainacan.php:34
actionadmin_initviews\admin\classes\hooks\class-tainacan-admin-hooks.php:13
actioninitviews\admin\classes\hooks\class-tainacan-component-hooks.php:23
actionadmin_enqueue_scriptsviews\admin\classes\hooks\class-tainacan-plugin-hooks.php:23
filtertainacan-api-items-tainacan-filter-date-filter-argumentsviews\admin\components\filter-types\date\class-tainacan-date.php:104
filtertainacan-api-items-tainacan-filter-date-interval-filter-argumentsviews\admin\components\filter-types\date-interval\class-tainacan-date-interval.php:49
filtertainacan-api-items-tainacan-filter-dates-intersection-filter-argumentsviews\admin\components\filter-types\dates-intersection\class-tainacan-dates-intersection.php:102
actionregister_filter_typesviews\admin\components\filter-types\filter-type\class-tainacan-filter-type.php:68
actionadmin_enqueue_scriptsviews\admin\components\filter-types\filter-type-helper\class-tainacan-filter-type-helper.php:40
filtertainacan-api-items-tainacan-filter-numeric-filter-argumentsviews\admin\components\filter-types\numeric\class-tainacan-numeric.php:122
filtertainacan-api-items-tainacan-filter-numeric-interval-filter-argumentsviews\admin\components\filter-types\numeric-interval\class-tainacan-numeric-interval.php:81
filtertainacan-api-items-tainacan-filter-numeric-list-interval-filter-argumentsviews\admin\components\filter-types\numeric-list-interval\class-tainacan-numeric-list-interval.php:11
filtertainacan-api-items-tainacan-filter-numerics-intersection-filter-argumentsviews\admin\components\filter-types\numerics-intersection\class-tainacan-numerics-intersection.php:113
actiontainacan-insert-tainacan-metadatumviews\admin\components\metadata-types\compound\class-tainacan-compound.php:62
actiontainacan-pre-delete-tainacan-metadatumviews\admin\components\metadata-types\compound\class-tainacan-compound.php:63
actiontainacan-insert-tainacan-itemviews\admin\components\metadata-types\control\class-tainacan-control.php:16
filterposts_joinviews\admin\components\metadata-types\geocoordinate\class-tainacan-geocoordinate-helper.php:18
filterposts_whereviews\admin\components\metadata-types\geocoordinate\class-tainacan-geocoordinate-helper.php:19
actionadmin_enqueue_scriptsviews\admin\components\metadata-types\metadata-type-helper\class-tainacan-metadata-type-helper.php:39
actionadmin_bar_menuviews\class-tainacan-admin-bar-items.php:26
actioninitviews\class-tainacan-admin-bar-items.php:27
actionadmin_enqueue_scriptsviews\class-tainacan-admin-commands.php:58
actioninitviews\class-tainacan-pages.php:48
actionadmin_menuviews\class-tainacan-pages.php:49
actionadmin_menuviews\class-tainacan-pages.php:50
actionadmin_headviews\class-tainacan-pages.php:51
filteradmin_body_classviews\class-tainacan-pages.php:64
actionadmin_enqueue_scriptsviews\class-tainacan-pages.php:65
actionadmin_enqueue_scriptsviews\class-tainacan-pages.php:66
actionadmin_enqueue_scriptsviews\class-tainacan-pages.php:67
filterscreen_settingsviews\class-tainacan-pages.php:68
filterblock_categories_allviews\gutenberg-blocks\class-tainacan-gutenberg-block.php:40
filterblock_categoriesviews\gutenberg-blocks\class-tainacan-gutenberg-block.php:42
actioninitviews\gutenberg-blocks\class-tainacan-gutenberg-block.php:48
actioninitviews\gutenberg-blocks\class-tainacan-gutenberg-block.php:49
actioninitviews\gutenberg-blocks\class-tainacan-gutenberg-block.php:55
actioninitviews\gutenberg-blocks\class-tainacan-gutenberg-block.php:60
filterrender_blockviews\gutenberg-blocks\class-tainacan-gutenberg-block.php:289
actionadmin_initviews\settings\class-tainacan-settings.php:16
Maintenance & Trust

Tainacan Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedJan 26, 2026
PHP min version7.0
Downloads57K

Community Trust

Rating100/100
Number of ratings12
Active installs1K
Developer Profile

Tainacan Developer Profile

tainacan

6 plugins · 3K total installs

86
trust score
Avg Security Score
97/100
Avg Patch Time
63 days
View full developer profile
Detection Fingerprints

How We Detect Tainacan

Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.

Asset Fingerprints

Asset Paths
/wp-content/plugins/tainacan/classes/embed.css/wp-content/plugins/tainacan/classes/tainacan-embed.php
Version Parameters
tainacan/embed.css?ver=

HTML / DOM Fingerprints

CSS Classes
tainacan-embed-aspect-21-9tainacan-embed-aspect-18-9tainacan-embed-aspect-16-9tainacan-embed-aspect-4-3tainacan-embed-aspect-1-1tainacan-embed-aspect-3-4tainacan-embed-aspect-9-16tainacan-embed-aspect-1-2+1 more
HTML Comments
TAINACAN EMBEDS * This file copies most of Gutenberg's logic for responsive blocks, * but uses different classes to avoid future conflicts. * Check their original css: /packages/block-library/src/embed/style.scss * The embed container is in a `figure` element, and many themes zero this out. * This rule explicitly sets it, to ensure at least some bottom-margin in the flow. * Don't allow iframe to overflow it's container.
Data Attributes
data-ratiodata-class
FAQ

Frequently Asked Questions about Tainacan