Categories
General

WP-CLI Error: PHP Deprecated: implode(): Passing glue string after array is deprecated.

I use WP-CLI to maintain my WordPress sites. It’s simple, it handy, and it works without any issues.

For example, I can updates all my plugins and themes (if updates are available) by executing wp theme update --all and wp plugin update --all. If WordPress core engine is available, I only need to run wp core update.

But there is a problem when I update WordPress plugins recently. Running wp plugin update --all to update all available plugin updates give me an error:

PHP Notice:  Trying to access array offset on value of type null in phar:///usr/local/bin/wp/vendor/wp-cli/extension-command/src/Plugin_Command.php on line 663
Notice: Trying to access array offset on value of type null in phar:///usr/local/bin/wp/vendor/wp-cli/extension-command/src/Plugin_Command.php on line 663

But, all updatable plugins were updated successfully. I tried to find the solutions, but I found nothing. I also try to use the nightly version via wp update --nightly, but still no luck.

Here are my wp --info

OS: Linux 5.4.0-42-generic #46-Ubuntu SMP Fri Jul 10 00:24:02 UTC 2020 x86_64
Shell: /bin/bash
PHP binary: /usr/bin/php7.4
PHP version: 7.4.3
php.ini used: /etc/php/7.4/cli/php.ini
MySQL binary: /usr/bin/mysql
MySQL version: mysql Ver 8.0.21-0ubuntu0.20.04.4 for Linux on x86_64 ((Ubuntu))
SQL modes:
WP-CLI root dir: phar://wp-cli.phar/vendor/wp-cli/wp-cli
WP-CLI vendor dir: phar://wp-cli.phar/vendor
WP_CLI phar path: /home/path/to/my/directory/
WP-CLI packages dir:
WP-CLI global config:
WP-CLI project config:
WP-CLI version: 2.5.0-alpha-068c252

Categories
General

Adding Block Storage to an Existing Cloud at Linode

This site is hosted at Linode’s smallest package. Besides this blog, I have some other domains and small WordPress-based sites here. Most of them are not busy site. So, $5/mo is just gret. But, there is a small problem: storage.

Yesterday, I almost utilised 95% of the 25GB of storage limit. I was thinking of upgrading the to the higher specs. $10/mo is still a good deal. But, I only need the storage at this moment. Paying $10/mo will give me additional 25GB of storage.

I already knew that Linode also provides block storage, and I never looked up for this addons. So, I gave it try and tried to prove that the how-to works as written. So, from the panel, I chose to add 20GB of storage and follow the instruction in the input fields.

It took only less than a minute I think to create the disk storage.

Once the disk created, I only need to run some commands as instructed in the configuration page. It was that simple.

After that, I moved some of my files to the new partition, and changed some configurations. Also, I moved MySQL storage to this partition, because it utilises the most. the process also pretty straightforward.

And, I only need to pay extra $2/mo for 20GB additional storage.

Nice!

Categories
General

WordPress’ Gutenberg New Editor. Yes or No?

I have been using Gutenberg on this site once it was available last year. I have been witnessing how WordPress changed its editor time to time. From its very simple editor, more complex, to the latest one.

WordPress’ Matt already posted a very long Q&A on Gutenberg. I think the article already covered the big ideas behind Gutenberg. At the moment, Gutenberg works really well with the theme I currently using, Atomic Block. It just works.

But again, it’s all about text editor. For regular WordPress user like me, Gutenberg works really well. I mean, I could have what I expect from a text editor. Reading from the plugin page, it seems that there are many unhappy users.

Back to the question. Is Gutenberg a Yes or a No? For me, it’s a Yes.

Categories
Umum

Gutenberg

Gutenberg, disain baru tempat menulis di WordPress.

Categories
General

WordPress and Wix

Matt Mullenweg of WordPress wrote about Wix and open source. Avishai Abrahami — CEO of Wix — responded.

Categories
General

Medium-like Posts (for WordPress)

A handy tutorial on how to deal with WordPress and CSS to have Medium-like post layout

Categories
General

WordPress 3.7 with Background Updates

WordPress is actively being developed by great developers. I always tried to keep my WordPress installation updated by running update process — which is very easy. But, right now, I want to write down about the latest release. Not that every update provides an improvement, new features, or bug fixes, but this version 3.7 (codename: Basie) has few good things offered.
The first useful feature is the background updates. It means that you do not need to worry about having an outdated installation when a new release is available. So, if your self-hosted WordPress-powered blog is not yet upgraded to 3.7, it’s a perfect time.
WordPress 3.7 Updates
Having an automatic upgrade is good, it’s a worry-free situation. Of course, there might be some bugs or features that you will not be familiar with. But for me, having everything updated is a good thing. If you’re using some plugins, they might not compatible with the latest updates. Not always, but it might happen. Since I don’t have critical plugins installed, having some broken plugins should not be an issue. I just simply disabled them.

How to turn off automatic updates?

You can, but you have to maintain your updates. Or, if you don’t care about this updates (or worse, you don’t care about your blog), you can just ignore it. The easiest solution to disable the core updates is by modifying your wp-config.php file. It’s located at the main root directory. Add these following lines:

# Disables all core updates:
define( 'WP_AUTO_UPDATE_CORE', false );
# Enables all core updates, including minor and major:
define( 'WP_AUTO_UPDATE_CORE', true );
# Enables core updates for minor releases (default):
define( 'WP_AUTO_UPDATE_CORE', 'minor' );

If you want to for some details, go to Make WordPress Core website.
Some others features introduced in this updates includes the password strength checker. Do you always have a not-easy-to-guess password? The other one is about a better search. Since I’m maintaining some WordPress-powered sites, I think I will update them all right now.

Categories
General

Photon: WordPress.com's Content Delivery Network

Dealing with side loads for heavy-traffic website sometime can be painful. But, of course there are some common practice to deal with this kind of situation. For example, you can take advantage of cache system, offload to other service to reduce server load/bandwidth, or using CDN (Content Delivery Network).
For WordPress-powered sites, you can take advantage from its Jetpack. This free plugin offered lots of handy features to help you work with your WordPress installation. One of them is a featured called Photon.

Give your site a boost by loading images in posts from the WordPress.com content delivery network. We cache your images and serve them from our super-fast network, reducing the burden on your Web host with the click of a button.

That’s right. You should see some big hints there: content delivery network, cache, super-fast network. To activate this feature, just hit the “Activate” button, and you’re set. All your uploaded media files will be served using WordPress.com infrastructure. After having this feature activated, all image URLs in your posts will be modified. For example:

  • Original URL: http://domain.com/dotsios300.png
  • New URL: http://i2.wp.com/domain.com/dotsios300.png

If you are interested, here is an example of the image header served from WordPress.com network.

HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: public, max-age=63115200
Content-Type: image/png
Date: Sun, 06 Oct 2013 17:06:28 GMT
Expires: Wed, 07 Oct 2015 05:06:26 GMT
Last-Modified: Sun, 06 Oct 2013 17:05:27 GMT
Server: ECS (sin/47C6)
X-Bytes-Saved: 8597
X-Cache: HIT
X-Content-Type-Options: nosniff
X-nc: HIT iad 90
Content-Length: 46456
Categories
General

Expedia: Bad for the Traveler, Bad for the Hotel

Expedia: Bad for the Traveler, Bad for the Hotel — An interesting read about how a hotel owner and Expedia.

Categories
General

WordPress 3.3: It looks great!

WordPress team just announced that the new version of WordPress is available. It’s WordPress 3.3 “Sonny”. Matt posted some notes about this release. I have WordPress for multi-site installation, and since the previous upgrade went smoothly — except some minor issues — I had no reasons not to upgrade. It was easy, just took few seconds.
I like the way WordPress greets me with useful information. You will get information about new features. You know what your WordPress installation can do. Nice.

I need some more steps to upgrade since my blog is a network-blog. It took only few extra clicks. When I go to post creation page, I got a tiny  tooltip telling an information about what I can get from this installation. The media uploader is improved now. It’s drag-and-drop now. If you have problem, you can still use the basic uploader. And, it also supports additional files (.rar and .7z).

This release is also great for those who wants to start blogging using WordPress because “Help” provides more details about the current page — yes, it’s depending on the context.

If you want to read all details about this WordPress 3.3, go to WordPress Codex. For me, these are some to highlight:

  • Drag-and-Drop Media Uploader
  • Post-update About screen — After upgrading, you know what the new features are.
  • When inserting a Gallery to be ordered by Date/Time use the post_date field for ordering rather than ID

 

Categories
General

WordAds

WordAds is 100% optional and is designed for bloggers who would like to earn money from their blogs by showing high quality ads from brand advertisers. FM is well known for representing top blogs with high quality ads for sites like AppleInsider, Bakerella, and BoingBoing.

Make money by joining WordAds

Categories
General

Missing WordPress' Jetpack Statistics Data

I have been using WordPress Stats plugin for long time. And when Jetpack  was introduced, I had it installed right away. Everything works great. What I like about WordPress statistics data — from this plugin — is that it can give me some useful insight about my blog traffic. It’s not as detailed as Google Analytics, of course. But, it’s useful.
Yesterday, I made some modifications on the blog theme. I was not sure whether this problem has something to do with the issue or not. But, when I logged in to my WordPress dashboard and hit the Stats Page I found an error. Something regarding the invalid token.
I disabled Jetpack plugin, and had it enabled again. I did it using the standard procedure: install, connect to WorPress.com account, and configure.

All works. But, not the statistics. All statistics are gone.

I have some statistic profiles under a single WordPress.com account. I checked the other sites, and they’re all working. I’m still looking for a solution for this. I feel that all the statistics are stored at WordPress’ server. I think I will try to contact them. For now, I think I will use Google Analytics data and server log.

Categories
General

about.me offers free email for its users. Do you use it?

I decided not to use it.
I’m using about.me service to create my personal splash page. You can see mine at about.me/thomasarie. It looks good, and very useful to display multiple online profiles like Twitter, Facebook, or even Instagram. Everything works great.
Few days ago, about.me users received an email informing about an offer to get more personalized email address. Yes, another mail service! Last May, Nokia did the same step by powering its mail service called Ovi Mail using Yahoo! Mail features. Since about.me is now part of AOL family, you will get AOL Mail-powered email. Just a reminder: AOL bought about.me back in December 2010.
I claimed my email address. Yes, I have now thomasarie [at] about.me, powered by AOL. If you want to get yours,  authenticate yourself at about.me website, and you should see “Offer” menu under “Dashboard” menu on the top navigation.

The setup was easy. You only need to give your date of birth information. I use Google Mail — Google Apps for domain — as my primary email service right now. I also keep my Yahoo! Mail account checked on regular basis. They offer a good service until today. AOL Mail did offers some features, but I haven’t found any features other mail services don’t have. So, I decided not to use it. If you send your email to thomasarie [at] about.me, it will go to my inbox. But, I’m not sure whether I check it regularly or not.
And, this is how the the email frontpage looks like. Sorry, I just need ’email’.

Categories
General

Klout Adds Five New Networks

If you like to analyze influence using a service called Klout — or, you like to analyze your own Klout score — this might be a good news. Klout just added five new services to build (hopefully) better scoring. You can now add services like Tumblr, Instagram, Blogger.com, Flickr and Last.fm.
The additional services try to cover popular services for blogging, photo sharing and also audio. Those services make internet users become more connected each other.

I’m curious whether other popular services like WordPress, Smugmug and Google Plus will be added there or not. Google Plus does not have its API right now. Okey, we’ll see. How’s your Klout score?

Categories
General

Moving a WordPress-powered site to another domain: The Permalink

Yesterday, I needed to move a self-hosted WordPress site to another domain. The process was easy because it’s like copying all files, edit the configuration file and editing internal links in all posts. All process only took less than 15 minutes. But, that’s not the only thing. One of the important things needed is to maintain the article links — known as “permanent link”.
This is important because I don’t want to send the visitors coming from other sources (links in blog posts, shared link on Twitter or Facebook) to missing pages. It’s called “permanent link”, right? So, having the permanent link broken is not a good idea.
I came up with a simple solution: using .htacess. After moving all files and checking all configurations I put these lines in the .htaccess file:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^.*olddomain.com$ [NC]
RewriteRule ^(.*)$ http://newdomain.com/$1 [R=301,L]

So, when visitors visit olddomain.com/path/to/article/, the browsers will go automatically to newdomain.com/path/to/article/. Easy!