You might think it's 39 characters long, but it's actually 332 characters long.
This is the real URL you're trying to use:
But Those Aren't Arabic Characters?!
There's no such thing as a true Arabic URL. HTTP requests don't use unicode, and the RFC that determines a valid URL doesn't include non-latin characters.
Then How Do International URLs Work?
Encoding! Each characters UTF-8 value is percent encoded so it fits into the latin character-set. The browser uses this internally but translates for the address bar and tooltips.
So your URL might look like this to you:
https://sitename.com/برمجة-تصميم-موقع-مركز-رفع-تحميل-تطبيق-ت/
But it's actually:
Each percent, e.g. %D8
, represents a code for a non-english character. This is equivalent to UTF-8 prior to percent encoding. The browser hides this by displaying the encodeddecoded character in its UI so that you can read it, rather than showing the ugly percent encoded version it's really using.
So What's the Maximum URL Length?
The spec doesn't give a maximum, but software might place limits. If it does there's a HTTP code that indicates the URL is too long.
But what about WordPress?
What's The Maximum Post Slug Length?
This will be determined by the size of the column in the posts table. At the time of writing, the post_name
column is varchar(200)
, putting the limit at 200 characters.
Arabic and international post names will be longer than they are written, so multiply the length by 3, which gives a maximum of 66 characters
Can I Increase This Number?
Yes... ish, but at great risk. You can use SQL to manually increase the column size from 200 to a higher value, but when updating WordPress and doing other table operations, WordPress may resize the column back to 200 characters during an upgrade. This would truncate and break all your post slugs and URLs.
Only do this if you're comfortable modifying WordPress Core for every update and security fix. There is no guarantee that WordPress will even use the extra space. If you intend to go down this route, it will be expensive, time consuming, and very easy to break.
Is This Hurting My SEO?
No, Google etc know about this, and handle it fine. But if it did hurt your SEO, it'd hurt every other Arabic site just as much.
WordPress SEO will be counting the characters of the encoded version, not the human readable decoded version, so ignore it and file a bug report with the plugin author
Alternatives
You can back this ticket that's trying to bump the max from 200 to 400 in a future version of WordPress: