This code snippet allows you to create an administrator then delete it after you’re done with your work on the website. It’s very useful when the client gives you only FTP or CPanel and you have many websites to work on.
Continue reading “Create a WordPress Administrator PrograManually (CPanel, FTP, SSH, etc)” →Author: Nabil
How to Force Avada to Use WooCommerce Thumbnail Function
The problem with a lot of “multipurpose” themes is that when they override the default behaviors of WordPress or one of its plugins, they forget to re-introduce the filters that were there before they did their thing.
Continue reading “How to Force Avada to Use WooCommerce Thumbnail Function” →How to Optimize Your WooCommerce Store for Single Product/Item Checkout
The buying process on a WooCommerce store for most goes like this:
- The user spots a product
- He adds it to the cart
- He goes to the checkout page
- He pays for it
What if we could get rid of the cart altogether and provide a more friendly user experience instead of this Walmart-ish approach? What if the user could simply do like this:
- Spot a product
- Click “Buy Now”
- Pay
How to generate WooCommerce products with the WP CLI
The WP CLI never ceases to impress me. You can do lots of things with just a few lines of code.
In this code snippet, I let the WP CLI create 15 products with random images from Lorem Picsum, prices are also random within the 1-1000 range.
How to easily import multiple vCards into Google Contacts
Google Contacts (the old version) allows you to import VCards, but you will have to import them one by one, this is clearly not very practical if you have more than 3 contacts that you want to import (you lazy!). Fear nothing, there is an easy workaround, you’ll merge your vCards before importing them, here’s how you do it. Continue reading “How to easily import multiple vCards into Google Contacts” →
How to Add JavaScript to Contact Form 7 events programmatically
Contact Form 7 is probably the most used plugin considering that WordPress official stats rank it 2nd after Akismet which comes bundled with WordPress.
I myself use it a lot, and I had the chance to extend it in different ways depending on my current client needs. The last challenge I had was to add code that runs when the on_sent_ok
event is triggered, my client wanted me to add the additional code inside the plugin, so that people won’t be able to remove that code unless they deactivate the plugin.
long story short this is how to do it: Continue reading “How to Add JavaScript to Contact Form 7 events programmatically” →
Arabic translation files for WordPress
Wondering why some of the string in the theme or plugin you just translated aren’t found in the .po file or have weird plural form?
This happens a lot because many translators don’t use the right configurations. So besides the search path in Poedit, make sure you have the right configuration for plural forms and keywords list which should be as the following. Continue reading “Arabic translation files for WordPress” →
WordPress: Disqus Language
Update
Code on this post has been made into a plugin, the plugin is more complete and handles a wider range of locales.
Are you having problems to get the Disqus Comment System WordPress plugin to work with your site language (Arabic, French…). Here is the code you are looking for: Continue reading “WordPress: Disqus Language” →
Refactoring code with the command line (files, folders and possibly variables)
These are a few commands I use in situations where I can’t use Eclipse for refactoring my code, you can use them by replacing from
and to
with the names you want.
No need to remind you to take backups to prevent irreversible loss of data.
Continue reading “Refactoring code with the command line (files, folders and possibly variables)” →Git: How to revert changes in a single file or in all files
If you have modified or deleted a file by mistake on a git tracked project, you can still revert your action and reset the file like this: Continue reading “Git: How to revert changes in a single file or in all files” →
Remove Fields [WP Plugin]
The WordPress plugin Remove Fields main purpose is to help you get more comments to your blog by removing the website field from the comment form, and trust me, it works, the reason is that a lot of people think that the website field is mandatory, when they see it they will refrain from posting a comment.
What does it do
The most important: It removes the website field from the comment form, which is totally useless in many situations (cooking blog, news website or any other type of websites)
Bonus: The plugin will also get rid of some totally useless fields: AIM, Yahoo IM, Jabber / Google Talk and the Bio section.
After installing the plugin in a client website, the results were amazing, more comments, more interaction with your audience.
Try the plugin now
Install the plugin, rate it and fill free to ask for any feauture you think is missing (like an configuration page).
Heberjahiz réveille-toi on est en 2013
N’achetez surtout pas votre nom de domaine chez Heberjahiz, ne faites pas la même erreur que moi!
Voici mon histoire avec Heberjahiz
Le 11 mai 2013: C’ést un samedi, j’achète un nom de domaine .ma en ligne sur le site de la société, je paye instantanément avec PayPal, après quelques secondes, je reçois des courriels de confirmation de PayPal et d’Heberjahiz, tout ce passe bien mais je remarque quand même des signes alarmants:
- Le design très pauvre du site qui remonte à l’époque post web 2.0, une ergonomie qui fait défaut et une lenteur des requêtes de recherche
- Un numéro de téléphone erroné dans l’accusé de réception de paiement PayPal, image:
Le 13 Mai 2013 (j+2): Le lundi après-midi j’appelle le 0802 00 2800, numéro surtaxé et ne me demandez pas pourquoi! J’appelle – Je disais – pour voir l’état de ma commande, on me répond d’un ton digne d’un grissoune à la gare d’Ouled Ziane (grissoune: graisseur je pense) et on me dit que le nom de domaine sera disponible dans cinq jours ouvrables. OK ça marche, je m’excuse et merci pour l’info.
Le 15 Mai 2013 (j+4): Deux jours plus tard, un peu impatient, je fais une petite requête whois sur le nom de domaine que j’ai acheté et je remarque qu’il est enregistré au nom de Amine Riadi, “Oh la vache!”, je ne connais pas ce Amine et je ne lui est pas délégué ni vendu mon nom de domaine, bréf, après une petite recherche (Google, Facebook, Linked In etc), il s’est avéré que Amine Riadi est le PDG de Arcanes Technologies. OK, j’appelle encore une fois, on m’informe que Maroc Telecom requiert que tous les noms de domaines soient enregistrés au nom du registraire (Arcanes Technologies dans notre cas).
Serious-Lee! On sait tous que les services de IAM sont lents, mais Amine Riadi n’est pas un registraire.
Revenons à nos moutons, j’informe la personne qui m’a répondu que le whois marocain officiel montre que le nom de domaine est actif, donc qu’on arrête SVP de me dire que c’est la faute à IAM. On me promet alors que les service technique m’everra les données d’accès dans “les plus bréfs délais”.
Le 17 Mai 2013 (j+6): Le vendredi matin, après la prière de Al Fajr j’envoie un courriel à Heberjahiz (commercial@arcanes.com et domaines@heberjahiz.com), là encore, bien sûr, je ne reçois aucune réponse, j’appelle vers 17h pour demander des explications, on me dit: “nous sommes dans les délais”, je demande alors à parler au service technique mais on me repond qu’ils sont injoignables au téléphone, je demande alors à parler à un responsable, on me dit qu’il n’y en a pas. A 17:50, je reçois un message générique me disant que le nom domaine sera activé dans les plus bréfs délais.
Je demande à parler à un responsable, le service commercial répond: “Il n’y a aucun responsable à Heberjahiz”
Le 18 Mai 2013 (j+7): On est samedi, le site est prêt, le client (ma femme) est les fans de sa page Facebook attendent toujours. Je vois que Heberjahiz dors toujours, je fais chauffer un peu le ton et je menace publiquement de monter l’affaire en justice, cela ne semble les déranger guère, puisqu’il n’ont pas répondu, ou peut-être pensent-ils que je les taquinaient.
Le 19 Mai 2013 (j+8): Je contacte le service technique qui me renvoie vers le service commercial, quelle galère! Je ne vous envie pas Heberjahiz.
Le 20 Mai 2013 (j+9): Eh ben, Heberjahiz, on se rappelle de moi! Enfin j’ai accès à nom de domain.
Le bétisier
Pour garder un peu la bonne humeur, je vous fais part de quelques blagues mediocres que j’ai du supporter durant mes entretiens téléphoniques avec le service commercial:
- Service commercial: “Vous n’avez pas activé votre nom de domaine”, ah bon! Et comment je fais?
- Je demande le numéro du service technique, le service commercial me répond: “Le service technique est injoignable au téléphone”, je sous-entends: nous travaillons avec des freelances en Inde.
- Service commercial: “Il n’y a aucun responsable à Heberjahiz”, zut alors!
- Service commercial: “Le retard vient de chez Maroc Telecom”, j’aimerais bien vous croire, mais nous savons bien tous les deux que vous mentez, ou pensiez vous que je ne sache pas faire une requête whois?
- Boucle infini (infinite loop): Appelez le 05 22 49 19 45 › Appelez le 05 22 52 88 68 › Appelez le 05 22 49 19 45, j’ai Phony mais sincérement j’ai pas le temps.
Conseils TRES pratiques
- Allez voir ailleurs
- Gardez les justificatifs de paiement pour ne pas perdre votre nom de domaine
- Demandez que l’enregistrement du whois porte votre nom, je parle de la partie “titulaire”.
Drupal Commerce: Redirect to cart after adding a product
Sometimes, you want the visitor to go directly to the cart, instead of staying in the same page and having a success message telling him that his product has been added to the cart. Continue reading “Drupal Commerce: Redirect to cart after adding a product” →
WordPress and dashes (m-dash & n-dash)
This post is outdated as of WordPress 6.0. See the first comment.
I got you there, I too didn’t know there were n and m dashes “–” and “—“.
Anyways, the process of using one of these in my life was something like this:
Continue reading “WordPress and dashes (m-dash & n-dash)” →Joomla 3.0 – Fix Application Instantiation Error
Everything went smoothly as usual in my local machine, but as soon as I moved the website to the client server, it wouldn’t run normally, instead it gives me the dreaded error message:
Error displaying the error page: Application Instantiation Error
After a small search on Google, I found that all people were saying to check that the database connection credentials were correct in configuration.php, in fact, I’m not new to this thing but I checked again… Continue reading “Joomla 3.0 – Fix Application Instantiation Error” →