Ya sea por curiosidad, o porque fuiste redirigido aquí desde el Manual del Propietario, (te sugiero este programa para aprender a vender planes de mantenimiento WordPress), con la intención de darle a tu cliente este dato curioso. Recuerda, no solamente es un dato curioso, sirve para que tu cliente entienda un poco más la complejidad de su sitio web. Todo eso con el fin de ayudar a quitarle de la cabeza querer mantener su sitio web el mismo, y no contratarte un plan de mantenimiento WordPress.
(¿Qué necesitas para este tutorial? Realmente poco, conectarte por SSH a tu servidor web y usar un script WP CLI. Si quieres hacerte un verdadero experto y aprender WordPress más allá de plugins comerciales, estas son de las herramientas básicas y de las más importantes).
Dicho esto, vamos al grano: para saber cuántas líneas de código tiene una instalación WordPress, debes entrar por SSH en el directorio root
de la instalación (directorio donde se encuentra wp-config.php) y ejecutar este script de WP CLI (usa contador.txt o cualquier nombre que quieras):
find . -name '*.php' -o -name '*.js' -o -name '*.css' -o -name '*.htaccess' -o -name '*.html' -o -name '*.xml' -o -name '*.txt' -o -name '*.scss' -o -name '*.cer' -o -name '*.cfg' -o -name '*.c' -o -name '*.cnf' -o -name '*.csv' -o -name '*.cur' -o -name '*.dat' -o -name '*.db' -o -name '*.eot' -o -name '*.json' -o -name '*.less' -o -name '*.otf' -o -name '*.pem' -o -name '*.phpt' -o -name '*.phtml' -o -name '*.po' -o -name '*.pot' -o -name '*.pub' -o -name '*.py' -o -name '*.redirects' -o -name '*.rst' -o -name '*.sh' -o -name '*.snap' -o -name '*.spc' -o -name '*.swf' -o -name '*.yml' | xargs wc -l > contador.txt
Según el número de plugins & temas que tengas instalados, el listado será más o menos largo, pero lo importante es que vayas sumando los sub-totales del output:
Después, debes abrir el archivo con vi
o vim
, por ejemplo: vi contador.txt
. Una vez abierto el archivo, puedes hacer una búsqueda de la palabra total presionando ESC
y tecleando /\<total>
luego presionando enter
:
Para buscar el siguiente total, presiona la tecla n
. Una vez hayas sumado todo, para salir del archivo, teclea :q
o si no te deja :q!
luego enter
.
En nuestro ejemplo, el sitio web tiene según wp theme list
: & wp plugin list
: (teclea los cmd anteriores en el root
de tu instalación WordPress).
+-----------+----------+--------+---------+
| name | status | update | version |
+-----------+----------+--------+---------+
| flatsome | active | none | 3.14.2 |
| hue-child | inactive | none | 1.0.0 |
| hue | inactive | none | 1.0 |
+-----------+----------+--------+---------+
+-----------------------------+----------+--------+---------+
| name | status | update | version |
+-----------------------------+----------+--------+---------+
| acfml | active | none | 1.8.2 |
| akismet | active | none | 4.1.10 |
| better-font-awesome | active | none | 2.0.1 |
| ts-visual-composer-extend | active | none | 5.6.1 |
| contact-form-7 | active | none | 5.4.2 |
| duplicator | active | none | 1.4.2 |
| ewww-image-optimizer | inactive | none | 6.2.3 |
| litespeed-cache | active | none | 4.2 |
| worker | active | none | 4.9.9 |
| mikado-core | active | none | 1.0 |
| mikado-instagram-feed | active | none | 1.0 |
| nextend-facebook-connect | active | none | 3.0.29 |
| woocommerce | active | none | 5.5.2 |
| woocommerce-catalog | active | none | 1.2.5 |
| woocommerce-multilingual | active | none | 4.11.6 |
| woosidebars | active | none | 1.4.5 |
| js_composer | active | none | 6.7.0 |
| sitepress-multilingual-cms | active | none | 4.4.10 |
| wpml-string-translation | active | none | 3.1.8 |
| wpml-translation-management | active | none | 2.10.6 |
| yith-woocommerce-wishlist | active | none | 3.0.25 |
| 0-worker | must-use | none | |
| m-mu | must-use | none | 0.1.0 |
| object-cache.php | dropin | none | |
+-----------------------------+----------+--------+---------+
En total en este sitio, ¡hemos encontrado 3,921,589 líneas de código!
Es impresionante, o simplemente dato curioso, según cada quien.
Espero que te sea de utilidad y lo uses para impresionar (o no) a tu cliente.
Responses