Boîte à outils du développeur WordPress intelligent File Splitter and Search & Replace

Dans la partie introductive de cette série, j'ai mentionné que les "outils WordPress" ne peuvent pas être définis sur un support spécifique: un outil WordPress peut prendre la forme d'un plugin WordPress, d'un fichier PHP unique, d'un site Web ou même d'une application de bureau..

Dans cette partie de la série "Boîte à outils de Smart WordPress Developer", nous allons passer en revue deux outils différents sur deux types de support différents: WXR File Splitter (en tant qu'application de bureau) et WP Serialized Search & Replace (en tant que Fichier PHP).

Division de gros fichiers de sauvegarde

Si vous êtes un concepteur Web indépendant ou travaillez dans une agence de conception Web et que vous lisez cet article, il est probable que vous installiez régulièrement WordPress sur des serveurs. Vous en saurez donc un peu beaucoup) sur la migration de WordPress. Et si vous êtes l'un des rares développeurs WordPress chanceux, vous avez peut-être eu un client avec un site Web énorme qui doit être migré entre deux serveurs.

Bien qu'il existe des dizaines de techniques et d'options différentes pour déplacer les installations WordPress, dans certains cas, nous n'avons peut-être rien d'autre que la plus fiable: les sauvegardes WordPress Extended RSS (WXR). 

Que se passe-t-il si votre client vous donne les anciennes informations d'identification WP-Admin du serveur partagé merdique et rien d'autre? Que se passe-t-il si ce nouveau plugin hip-hop WordPress ne peut pas migrer de votre ancien serveur vers le nouveau? Quand les temps sombres viennent, vous devez être prêt et préparé.

Si la sauvegarde WXR est énorme (et je veux dire des gigaoctets de énorme), le séparateur de fichiers WXR sera celui qui éliminera vos larmes.

Travailler avec le séparateur de fichiers WXR

Mauvaise nouvelle d'abord: cet outil, qui fonctionne sous Windows, est vieux. Super vieux. Et ça ne marche pas. Je veux dire que cela ne fonctionne pas avec les nouvelles versions de WordPress (pour les deux dernières années, probablement). Je ne plaisante pas.

Mais bien sûr, je ne parlerai pas d'un outil totalement inutile. La bonne nouvelle est donc qu'il est extrêmement facile de le faire fonctionner - si facile qu'il vous suffit de faire une recherche rapide et de la remplacer dans votre fichier de sauvegarde..

Passons en revue les marches:

  1. Téléchargez l'outil ici (avant que ce site Web ne soit également abaissé).
  2. Téléchargez votre fichier de sauvegarde à partir de votre panneau d'administration Outils> Exporter page.
  3. Ouvrez votre fichier de sauvegarde et faites tous vos balises majuscules (en recherchant et en remplaçant les balises d'ouverture uniquement - pas besoin de faire la même chose avec balises) et sauvegarder le fichier.
  4. Ouvrez le WXRsplit.exe fichier.
  5. Définissez la taille des fichiers de sortie (et le nombre de fichiers sera calculé automagiquement).
  6. Clique sur le Fichiers fractionnés bouton.

Supplice? Eh bien, cela devrait être le cas: si votre client laisse le panneau d’administration d’un site Web hébergé sur des serveurs utilisés pendant la Seconde Guerre mondiale, la solution à votre problème de migration ne devrait pas être simple. Droite?

Oh, et il y a une version Mac OS X développée par un développeur indépendant, mais je n'ai pas eu l'occasion de l'essayer (et d'avoir une dépression nerveuse à cause de cela) car je ne possède pas de Mac.

Passons maintenant à notre deuxième outil: WP Serialized Search & Replace.

Opérations de recherche et de remplacement sûres dans votre base de données WordPress avec WP Serialized Search & Replace

En 2012, j'ai déjà travaillé dans une agence de design Web. Le premier jour, j'ai passé en revue des projets antérieurs pour voir comment nous travaillions avec nos clients. J'ai constaté que lorsque nous avons atterri chez un client, nous avons commencé à créer son site Web dans un sous-domaine de notre propre domaine de marque et avons montré notre travail au client lorsque cela était nécessaire. et lorsque tout était réglé (y compris le dernier paiement), nous avons déplacé le site Web vers le domaine du client..

Ce jour-là, j'ai immédiatement proposé de modifier ce flux de travail avec nos clients, car cela ralentissait notre travail; mais le patron a rejeté ma proposition pour des "raisons financières". Il a expliqué que par le passé, certains clients avaient essayé de voler notre travail juste avant le dernier paiement, et c'est pourquoi nous travaillions comme ça. "Nonsense", je pensais, mais il était le patron après tout.

Mon premier travail a été un client hautement prioritaire qui avait besoin du site Web aussi rapidement que possible. (Heureusement, le contenu avait été envoyé auparavant.) J'ai rapidement installé WordPress dans un sous-domaine de notre site Web et activé le thème (sélectionné par le client) ainsi que des plugins. J'ai ajusté tous les paramètres du noyau, du thème et des plugins, puis j'ai commencé à travailler avec le contenu..

Quand j’avais fini (et impressionné le patron en peignant rapidement tout un site Web en moins de quatre heures), nous avons montré le site Web au client et avons immédiatement reçu une approbation et un message nous indiquant que le site Web devrait être opérationnel demain. allaient visiter une expo.

Avec confiance, j'ai décidé de faire des heures supplémentaires et de déplacer le site Web ce jour-là. J'ai téléchargé tous les fichiers depuis FTP et au lieu de faire une sauvegarde rapide WXR, j'ai fait une sauvegarde SQL dans phpMyAdmin. Après avoir modifié les URL du site Web dans wp_options table, j’ai téléchargé les fichiers et soumis le code SQL à la base de données du site Web du client. Oh, et j'ai rapidement tout supprimé dans le sous-domaine de développement.

Quand j'ai remarqué que les images présentées étaient brisées, j'ai examiné le fichier SQL et constaté qu'elles avaient toutes des URL du sous-domaine de notre propre site Web. J'ai fait une recherche rapide et remplacer, enregistré les modifications dans la sauvegarde et écrasé la base de données avec le nouveau code SQL. Lorsque j'ai visité le site Web, j'ai constaté non seulement que les images étaient toujours brisées, mais également que tous les messages avaient disparu, même s'ils figuraient toujours dans la base de données..

C'est le jour où j'ai entendu parler des "entrées en série". (Je suis aussi rentré chez moi à minuit, car j'ai passé le reste de la journée à construire le même site Web sur le serveur du client.) Cette expérience m'a appris que les entrées sérialisées sont stockées avec le nombre de caractères, et que le nombre de caractères n'est pas ne correspond pas à la chaîne, WordPress omet complètement l’entrée.

Alors, comment pouvons-nous effectuer une recherche et un remplacement dans WordPress, y compris les entrées sérialisées? Avec WP Serialized Search & Replace, bien sûr.

Utilisation de la recherche et du remplacement en série WP

WP Serialized Search & Replace ressemble plus à un portable outil: vous venez de télécharger le dossier (dans votre répertoire d’installation WordPress) et d’exécuter le index.php fichier. Donc, si vos fichiers WordPress sont dans mywebsite.com/wp/ répertoire, vous devez exécuter l'outil à partir de mywebsite.com/wp/srtool/index.php (le nom du dossier de l'outil n'a pas d'importance, vous pouvez donc changer le nom du dossier si vous le souhaitez).

Après avoir exécuté l'outil, vous verrez cinq sections:

  1. Rechercher / Remplacer: Contient deux champs de saisie pour les champs "recherche" et "remplacement" et une case à cocher pour activer les expressions régulières.
  2. Base de données: A quatre champs d'entrée pour vos informations d'identification de base de données. L’outil remplit automatiquement ces champs en cochant la case wp-config.php fichier.
  3. Les tables: Par défaut, l'outil fonctionnera dans toutes les tables de la base de données, mais si vous le souhaitez, vous pouvez sélectionner des tables individuelles en cliquant sur la case d'option "Sélectionner les tables" ou en remplissant les deux champs de saisie à exclure ou à inclure..
  4. Actes: Il y a cinq actions dans cette section: "Détails de la mise à jour" se reconnecte à la base de données si vous modifiez les informations d'identification de la base de données, "Exécution à sec" simule le processus de recherche et remplacement, "Exécution en temps réel" exécute le processus de recherche et remplacement, "Convertir en InnoDB". convertit le moteur de base de données en InnoDB et "Convert to UTF8 Unicode" convertit les jeux de caractères des tables de base de données en Unicode.
  5. Effacer: Supprime l'outil, tout le dossier.

Je dois dire que le design m'a vraiment plu, mais je crois que cet outil fonctionnerait mieux comme plugin WordPress..

Envelopper pour aujourd'hui

Nous avons un peu accéléré le rythme pour cette partie seulement et avons passé en revue deux petits outils WordPress dans un seul post. Je crois que les deux méritent un crédit, bien qu’ils soient un peu distants de la communauté WordPress.

Que pensez-vous de ces outils? Connaissez-vous de meilleures alternatives? Partagez vos pensées et votre expérience avec nous dans la section Commentaires ci-dessous. Et si vous avez aimé l'article, n'oubliez pas de le partager avec vos amis!

Rendez-vous dans la partie suivante où nous parlerons de WordPress GitHub Plugin Updater, un excellent outil pour gérer le processus de mise à jour des plugins WordPress hébergés sur GitHub..