Mesa de escritório com um monitor grande com código sendo exibido em modo escuro. Na mesa há um bloco de notas com uma caneta, uma xícara branca de café, um laptop e uma luminária.

Listar o nome do tema ativo no WordPress com WP-CLI

No PainelWP 290, o Daniel Kossmann ensinou um truque com o WP-CLI para descobrir o tema ativo no site WordPress. Nesse artigo ensinarei uma outra forma.

Na edição 290 do PainelWP, o Daniel Kossmann compartilhou um artigo que ensina a listar o tema ativo em um site WordPress com o WP-CLI usando o comando option:

$ wp option get current_theme

Apesar de essa ser uma maneira rápida de conseguir o nome do tema ativo no site, ela pode causar alguns “problemas” caso você precise usar o nome retornado pelo comando em outro comando do WP-CLI.

$ wp option get current_theme
Blocksy

$ wp theme get Blocksy
Error: The 'Blocksy' theme could not be found. Did you mean 'blocksy'?

No exemplo acima o tema Blocksy está ativo, porém, ele não é encontrado porque Blocksy não é o slug do tema em wp-content/themes. Isso ocorre porque o registro current_theme do banco de dados salva o Theme Name como informado no arquivo style.css na pasta do tema

Ao usar o comando para listar os temas e filtrar pelo tema ativo, recebemos a informação de que o campo name do tema é blocksy com b minúsculo e não Blocksy com B maiúsculo:

$ wp theme list --status=active
+---------+--------+--------+---------+----------------+-------------+
| name    | status | update | version | update_version | auto_update |
+---------+--------+--------+---------+----------------+-------------+
| blocksy | active | none   | 2.0.84  |                | off         |
+---------+--------+--------+---------+----------------+-------------+

$ wp theme get blocksy
+----------------+-----------------------------------------------------------------------+
| Field          | Value                                                                 |
+----------------+-----------------------------------------------------------------------+
| name           | Blocksy                                                               |
| title          | Blocksy                                                               |
| version        | 2.0.84                                                                |
| status         | active                                                                |
| parent_theme   |                                                                       |
| template_dir   | /srv/htdocs/wp-content/themes/blocksy                                 |
| stylesheet_dir | /srv/htdocs/wp-content/themes/blocksy                                 |
| template       | blocksy                                                               |
| stylesheet     | blocksy                                                               |
| screenshot     | screenshot.jpg                                                        |
| description    | Blocksy is a blazing fast and lightweight WordPress theme built with  |
|                | the latest web technologies. It was built with the Gutenberg editor i |
|                | n mind and has a lot of options that makes it extendable and customiz |
|                | able. You can easily create any type of website, such as business age |
|                | ncy, shop, corporate, education, restaurant, blog, portfolio, landing |
|                |  page and so on. It works like a charm with popular WordPress page bu |
|                | ilders, including Elementor, Beaver Builder, Visual Composer and Briz |
|                | y. Since it is responsive and adaptive, translation ready, SEO optimi |
|                | zed and has WooCommerce built-in, you will experience an easy build a |
|                | nd even an increase in conversions.                                   |
| author         | <a href="https://creativethemes.com">CreativeThemes</a>               |
| tags           | ["blog","e-commerce","wide-blocks","block-styles","grid-layout","one- |
|                | column","two-columns","three-columns","four-columns","right-sidebar", |
|                | "left-sidebar","translation-ready","custom-colors","custom-logo","cus |
|                | tom-menu","featured-images","footer-widgets","full-width-template","t |
|                | heme-options","threaded-comments","buddypress","rtl-language-support" |
|                | ,"news"]                                                              |
| theme_root     | /srv/htdocs/wp-content/themes                                         |
| theme_root_uri | http://rafaelfunchal.com.br/wp-content/themes                         |
+----------------+-----------------------------------------------------------------------+

Apesar do problema parecer pequeno com o tema Blocksy, as coisas começam a ficar interessantes quando trabalhamos com temas com mais de uma palavra, hífens e números como estes:

$ wp option get current_theme
Radcliffe 2

$ wp option get current_theme
Twenty Twenty-Five

Os slugs/nomes desses temas em wp-content/themes e aceitos pelo WP-CLI são radcliffe-2 e twentytwentyfive, respectivamente.


Minha sugestão de comando

Caso você precise saber o tema ativo em um site WordPress usando o WP-CLI e já receber a informação que pode ser usada com outros comandos wp theme como get, update, install, path e delete, recomendo usar este comando:

$ wp theme list --status=active --field=name

Ele retornará o slug do tema do jeito que o WP-CLI precisa. Alguns exemplos:

$ wp theme list --status=active --field=name
blocksy

$ wp theme list --status=active --field=name
radcliffe-2

$ wp theme list --status=active --field=name
twentytwentyfive

Você conhece outras formas de listar o tema ativo no WP-CLI? Qual sua forma preferida?

Espero que este artigo tenha sido útil <3


PS: Hoje (20 de Janeiro) vi que o Felipe Elia pensou na mesma abordagem e até comentou no post original.

Deixe uma resposta

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.

Descubra mais sobre Rafael Funchal

Assine agora mesmo para continuar lendo e ter acesso ao arquivo completo.

Continue reading