I am using PHP Intelephense(version 1.3.7) which is the latest version and my VS Code is up to date There was no problem before but a few days ago, it keeps on highlighted all my wordpress function name I tried to downgrade my PHP Intelephense but the situation still exist.. Any help will be appreciate
You have to add "wordpress" to the intelephense.stubs
array setting in your VS Code settings file. This array should probably also have many other stubs listed as well. For example: ("wordpress" is at the bottom)
// VS Code settings.json
{
// ... other settings here ...
"intelephense.files.maxSize": 3000000,
"intelephense.stubs": [
"apache",
"bcmath",
"bz2",
"calendar",
"com_dotnet",
"Core",
"ctype",
"curl",
"date",
"dba",
"dom",
"enchant",
"exif",
"FFI",
"fileinfo",
"filter",
"fpm",
"ftp",
"gd",
"gettext",
"gmp",
"hash",
"iconv",
"imap",
"intl",
"json",
"ldap",
"libxml",
"mbstring",
"meta",
"mysqli",
"oci8",
"odbc",
"openssl",
"pcntl",
"pcre",
"PDO",
"pdo_ibm",
"pdo_mysql",
"pdo_pgsql",
"pdo_sqlite",
"pgsql",
"Phar",
"posix",
"pspell",
"readline",
"Reflection",
"session",
"shmop",
"SimpleXML",
"snmp",
"soap",
"sockets",
"sodium",
"SPL",
"sqlite3",
"standard",
"superglobals",
"sysvmsg",
"sysvsem",
"sysvshm",
"tidy",
"tokenizer",
"xml",
"xmlreader",
"xmlrpc",
"xmlwriter",
"xsl",
"Zend OPcache",
"zip",
"zlib",
"wordpress"
]
}
You can also take a look at these github issues:
The quick fix for this is simply to add WordPress to the Intelephense: Stubs
list.
1: Press (Ctrl+Shift+X) to the extensions bar on the left and search for PHP Intelephense
.
2: Click the settings icon of the extension and choose Extension Settings.
3: Scroll down to the bottom to see the list of Stubs.
4: Click on Add Item and choose wordpress
from the list.
If the changes are not affected, try to close and reopen Vscode.
This will solve the issue with built-in WordPress Functions, However, it will not recognize any functions from installed plugins.
Maybe I'm missing something, but I never have this problem, and I think the reason is just that I open my whole WordPress site directory in VS Code at once.
Are you opening only your theme directory?
If so it makes sense that these functions are missing since they aren't in the project.
Open the whole site and this should go away. You'll also get all your theme and plugin functions imported correctly.
I found the perfect solution that actually includes all Wordpress's definitions, so the IntelliSense / Interpreter for PHP will recognize all Wordpress's functions, while developing a plugin or anything related to Wordpress.
- Git Clone WordPress source code locally to
wordpress
- Later on you'll need the absolute path to thewordpress
directorygit clone --depth 1 --single-branch [email protected]:WordPress/WordPress.git wordpress
- VSCode > Install the PHP Intelephense
- VSCode > Edit Settings > I usually include a
.vscode/settings.json
in my projects; here's how you can :{ "editor.formatOnSave": true, "intelephense.environment.includePaths": ["/absolute/path/to/cloned/wordpress"] }
- VSCode shows WordPress's definitions as it should 🥳
Here's a demo of how it works - https://youtu.be/yLgd5OKRXxM
Opinion: I prefer cloning WordPress locally in case I need to debug something during my application development, I'm not sure the other alternatives have this capability.
P.S: Yes, I got that excited about the solution, so I recorded a video with cinematic music :)
If you load only child theme folder in vs code than it give you highlight on wordpress function. Instead of this, load whole WordPress folder in vs code. It's works for me. Thanks.
I solved this as follows:
Open Your settings.json File: Ctrl + ,
Click on the {} icon in the top right corner to view the JSON settings
Locate the php.stubs Setting. If it's not available, add it.
Add "wordpress" to the Array
Your php.stubs setting should now look something like this:
"php.stubs": [
"wordpress",
"*"
]
Save Your Changes
Adam allalou and drwatsoncode are right and they work but just a reminder, to be sure that the changes are effected, don't forget to close and open your VsCode editor again.
© 2022 - 2024 — McMap. All rights reserved.